Skip to content

Latest commit

 

History

History
51 lines (39 loc) · 2.93 KB

README.md

File metadata and controls

51 lines (39 loc) · 2.93 KB

Devoot

Values, principles, strategies and practices to establish a next generation culture in software development.

Inspired in the Agile Manifesto this project seeks to gather ideas around IT development and try to improve how we build things using technology.

What is written here will be a strong guidance for companies who develop software and hardware IT solutions to adopt and allow improvement of development environments for all people involved in any kind of project, from developers to customers, going through sales and management, designers to testers and all of the parties involved shall be aware of proper development processes and practices to achieve success and measure what is success after each delivery.

The goal is not only about improving Developers operations, Devoot sets guidance in Sales, Design, Marketing and Management operations as part of the whole process of developing a product from start to iterative delivery, because no product is ever really finished.

Core Values

  • People teamwork and proper planning over sales agenda
  • Reliability over technical experience
  • Continuous integration over static deployment
  • Mature technology over legacy maintenance
  • Customer collaboration over contract negotiation (from Agile)
  • Fair payment and estimates over cheap and burned labor

Core Principles

Basically the same principles of Agile for now since Agile is the core of all this:

  • Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
  • Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
  • Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
  • Business people and developers must work together daily throughout the project.
  • Build projects around motivated individuals.
  • Give them the environment and support they need, and trust them to get the job done.
  • The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
  • Working software is the primary measure of progress.
  • Agile processes promote sustainable development.
  • The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  • Continuous attention to technical excellence and good design enhances agility.
  • Simplicity--the art of maximizing the amount of work not done--is essential.
  • The best architectures, requirements, and designs emerge from self-organizing teams.
  • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Core Engineering Practices

  • Continuous Delivery
  • TDD
  • Pair and Mob programming

Branches

  • Planning & Development
  • Maintenance & Migration
  • Quality Assurance
  • Sales & Marketplace
  • Management & Operations
  • Delivery & Measurement