Development process

Here is a little list of the development stages involve in D-LAN.

  1. Brainstorming.
  2. Functional definition.
  3. Defining of technologies, libraries and tools.
  4. Creating of some prototypes to validate the point above. They will be reused during the implementation stage.
  5. Technical specifications. Protocols, algorithms and persistent data. Some prototypes can be added to test algorithms or anything else.
  6. Architecture of components and theirs interface. -> Component Diagrams.
  7. Modeling of each components. -> Class diagram, sequence diagram, state diagram, etc..
  8. Implementation of each component with unit tests, unit benchmarks, and code coverage. Once a component is near finished, a another person of the team will read the code and criticize it.
  9. Alpha version.
    • All features are implemented.
    • Only developers have access to it
  10. Beta versions.
    • The tag 1.0.0 beta1 is created.
    • Testing with people who didn't participate in the project.
    • Profiling, optimizing, simplification and stabilisation. See Stabilisation process
    • After some corrected bugs an another beta is created if necessary (beta1, beta2, etc..).
  11. Final Release \o/
    • The 1.0 branch is created
    • The tag 1.0.0 is created
  12. Define the future integration workflow1 with git and Goto 1..

Updated by Greg Burri about 12 years ago · 58 revisions