Try SCRUM – a lean methodology of managing projects.
SCRUM makes communication in a team efficient, motivates not only developers, but all the process actors to cooperate with each other. Besides, this methodology makes it possible to rapidly solve unexpected problems. This feature definitely will upgrade your final product.
Scrum is for you if -
A project needs custom tech solutions (mobile apps, big web resources). In this case, the team should be self-organized and cross functional. Scrum product is developed in little portions called iterations or sprints. The system includes different roles that help to manage sprints in an efficient way.
Who are PO, SM, and DT?
Product owner (PO) – is the person that is aware of product's business logic. As a rule, he's a client representative. PO sees the final goal – for example, how a mobile app will perform on users' gadgets. Product owner prepares Product Backlog – a list of project tasks for a team. All the tasks have their priorities to keep developers updated, alert and alive.
Scrum master (SM) is the team leader and facilitator. He motivates and maximizes the efficiency of team, works on removing difficulties, and helps developers as well. Before a new sprint, Scrum master forms Sprint Backlog based on Product Backlog. Shortly, team leader divides PO's tasks into parts that are to take effect.
Development team (DT) consists of specialists that work on the product.
The key moments for DT are:
- Developers are free to come to any technical decision. The team decides by itself what PO and SM tasks it should implement.
- All the team members are responsible for task performance, but not a single developer.
- 6 is the optimal number of people in team. If more, there could be a bad line of communication. If less, there would be more volumes of work for a developer.
- The team is self-optimizing and replaceable.
When the roles are finally determined,sprints start. Figuratively speaking, a sprint is an interval that is limited in time and list of tasks for team. Sprint can be weekly or monthly depending on project complexity. While the team is getting to final product version, dozens of sprints could be fulfilled.
Why do you need all this if you can form the final product vision at once?
This is the main advantage of Scrum – the team has daily meetings with the scrum master. All the developers share information on how the work is going on, what they did yesterday, and what they are planning to do today. Such meetings can motivate specialists, develop team spirit, and even solve problems. When the time for the sprint is over,all the developers meet and discuss the “demo” work, which they've already done. During this time, new decisions and ideas are generated and discussed, success and failures are also analyzed. The goal is to leave with the solutions set, and, sure thing, understand what to improve.
When a new sprint starts, it has another set of tasks to update the last version of the product. Moreover, Scrum gives us potentially work product at the end of every sprint.
The key element is that the sprint backlog isn't allowed to be completed till the sprint ends. Every developer sees his task and works on self-organizing it.
How to assess the effectiveness?
So, we have Product Backlog – tasks that are to be done. What do we need more to understand that developers have implemented everything correctly?
There are analysts in the team that prepare tests for each task. It is written in details what result is expected at the end of the sprint.
The advantages of methodology
Scrum is oriented to a client. On the day of completing the sprint, you can invite your customers to show the results of work so that clients can update his requirements. That's a great service feature to give a customer an opportunity to be a part of the development process.
Interestingness: poker planning
When you plan the next sprint, you have to prioritize tasks and allow time for performing them. It is estimated at Story Points. In practice, it is the complexity index of a task.
In blue chip companies, sprint poker-planning is widely used. Every team member has a pack of cards. Each card has its own nominal; these are story points in itself. After discussing the tasks, all the “players” put one card that shows tasks performance. Then players should give some reasons for their choice. The procedure continues till the players agree. If the Scrum instructions are adhered to, the team would be maximally motivated – all its members will see progress and final product vision. There won't be any problems with communication, and all the deadlines will be met.
To start using SCRUM, we recommend you read “Scrum: The Art of Doing Twice the Work in Half the Time” by Jeff Sutherland.