On the beginning is always an idea (Requirement). The development takes longer time in case of big ideas, so we will work in iterations (Sprints) to make sure that we don’t miss the point of the idea. That means that we will to split the work into smaller parts (User stories).
On a beginning of each Sprint, we will break down the most relevant User Stories into tasks and estimate them (Planning). The PM will prioritize the tasks based on the estimations and the Sprint Budget (available working hours for the Sprint).
The developers will take the tasks based on the given priority and work on them and update the tickets in JIRA. The PM will make sure via Daily Catch-up meetings that the work is on track.
The work will be presented on the end of the Sprint (Demo) to the PM and Project Owner. New ideas and thoughts from the Demo can be implemented in the next sprint. After each sprint has the team to have a short meeting (Retrospective) and discuss the possible improvements of the work.
There is a Project Manager (PM) and a Product Owner (PO - can be the same person) on the client side. PM is in close contact with the development team and provides them with all requirements.
Development team works on the applications and informs the PM about the progress daily.
Daily catch-up meetings
The PM and the development team will spent daily 5 to 10 minutes on skype to discuss the status answering 3 questions individually.
- What have I done yesterday?
- What will I do today?
- Are the any impediments in my work?
All people are making mistakes and we can’t prevent it. We can only minimize the risks of mistakes via additional quality checks in the development process.
We are using 4 eye principle (code review)
Another person will always check the work before submitting it. After the sprint should be the code reviewed by the architect to make sure it fulfilled its purpose.
Automatic code validation and checking
Automated test are running daily
Tests like JUnit and Selenium tests are prepared as part of the development work. This tests are running nightly to make sure that the new functionality is still compatible with the rest of the application.