Bachelor's Thesis on Best Practices in Software Engineering
Latest commit 7216f36 Apr 23, 2014 @tosh Merge pull request #3 from tosh/another-zefr-branch
Another zefr branch

readme.md

license

http://creativecommons.org/licenses/by-sa/3.0/

disclaimer ;)

communication is king. this paper provides some best practices but guidelines only work if people understand why they are useful and important. this is also necessary so that people are able to adapt recommendations to their specific situations. basically this means everybody needs the same vision/get the idea. else all best practice guidelines simply don't work.

scope

small teams, startups

aim

this paper is intended as guide for best practices in web application development for small teams. it can be used as checklist to improve current projects or as tool to set up new projects. several areas of software development practices are covered. these are largely based on hard earned experience by industry experts

each main section of the paper represents a recommendation, the motivation behind it and guidelines to properly implement it.

table of contents/recommendation checklist

  • revision control system
    • distributed revision control
    • write good commit messages
    • push the changes to the team (not pull)
  • code reviews
    • use branches for features
    • maintain a clean master copy of the project
    • only merge changes that were reviewed and pass the tests
  • continuous integration/deployment
    • fully automated deployment with possible rollbacks
      • supports rapid development and recovering
  • testing (unit, functional, performance)
  • requirements management/bug tracking
  • scrum for realistic project management
  • security
    • availability
    • protection
    • integrity

books that could be useful for this paper (quotes, further reading)