Saturday, January 19, 2008

Successful development environment

Delivering successful software projects requires healthy software development environment. Among successful environments I have seen there are common practises independent of the methodology used, here I will try to summarize those point:

  1. Have a clear standards for Design,Coding , Database, Unit Testing , Security, Source Control , UI Design and any aspects relevant to your environment.
  2. Use software development framework
  3. Break project into Independent tasks as much as possible
  4. Minimize effort spend in maintaining UI and have clear separation between UI and business , poorly developed UI consume a lot of time maintaining it more then any other part of the application
  5. Start with small team of senior developers then increase the size of the team
  6. Use custom code generators for common task instead of copy and paste but make sure the generated code is maintainable
  7. Avoid bad developers if you have them get rid of them immediately
  8. Use ORM tools and minimize SQL statements
  9. Avoid using heavy project management tools , use the simplest tools
  10. Don't write documentation that no one will read
  11. Don't let developers got bored in long projects otherwise they will leave

No comments: