Best practices of agile product development process for SME teams

Best practices of agile product development process for SME teams

In the agile development process, a product or a release version is usually realized by multiple sprints, and each sprint can incrementally deliver operational system functions and realize customer value. Each sprint starts with sprint planning. Team members agree on the sprint goals and clarify the system functions to be delivered, and execute the sprint to realize the system functions, and then review and review the realized product functions and processes through sprint review and review. The expectations are as follows Improve and perfect product functions and processes during the first sprint.

1. Sprint process

Sprint includes four major processes: sprint planning, sprint execution, sprint review, and sprint review. The sprint starts with planning. Team members must reach a consensus on the goals and plans of this sprint. All members are working toward this goal in accordance with the established plan throughout the sprint process, communicating and discussing the results and problems faced every day. At the end of the sprint, relevant stakeholders are called in the sprint review activity to demonstrate product functions and obtain feedback. The feedback obtained is an important source of the product list and the content of the next sprint plan. In the sprint review activity, all team members reviewed and discussed the sprint execution process, grasped the existing problems and discussed the optimization plan, improved and optimized in the next sprint, and realized the optimization of the sprint process and the improvement of sprint execution efficiency.

2. Sprint planning

Under normal circumstances, sprint planning is carried out at the beginning of each sprint, because at this point in time, the information that has been mastered can be fully utilized to make the most optimal decision. The length of the sprint planning process depends on the length of the sprint. It is reasonable to take up about 5% of the entire sprint. For example, a two-week sprint should be controlled within 4 hours, and a one-month sprint should be controlled within 8 hours.

The sprint planning process should be completed by the entire team. The product owner selects the list items from the existing product list, puts forward the initial goals of the sprint, and is responsible for explaining any questions raised by the development team regarding the selected product list items. The development team evaluates the deliverable work list in the sprint and makes a final commitment at the end of the plan. As a coach, the Scrum Master participates in and observes the entire process, proposes possible risk points, guides and helps the development team to make effective commitments.

In the sprint planning process, the basic process is:

At the end of the sprint planning process, the sprint goal and sprint list are finally obtained. The development team makes a commitment to this goal and task list, and will work towards this goal in the subsequent sprint execution.

3. sprint execution

Sprint execution includes all the work that must be completed to deliver an incrementally releasable product. It is like an ultra-small project in itself. The sprint execution process takes up most of the sprint time. For example, in a two-week sprint, sprint execution takes up 10 8 days in the middle of the day, so the sprint execution process is crucial to the smooth completion of the sprint goal. Sprint execution includes planning, management, execution and communication:

01 Planning the sprint execution plan can sort out the dependencies of the important work items in the sprint list, but there is no need to make a detailed execution plan, such as a Gantt chart, because it may be a waste of time. The team not only wasted the time to make the plan, but also wasted more time trying to adjust the plan to reflect the actual implementation. The principle of sprint execution planning is to act according to the situation and gradually clarify the task plan. This activity is continuous and runs through the entire sprint execution process.

02Management Sprint Executive management is to ensure the management activities carried out in order to achieve the sprint goal. The characteristics of the development team determine the management style. Specifically, sprint execution management should solve the following problems:

How many work items should be paralleled? Too many work items in parallel, team members will switch between different work items, resulting in waste; too few parallel work items will also cause idle waste of resources, an appropriate amount of parallelism, and strive to make full use of the team s production capacity, but not Too heavy to achieve a reasonable balance, which requires each team to practice and explore according to their own abilities and characteristics.

From which work item? The easiest way is to sort by priority from high to low. However, various problems may be encountered in the specific execution process, which may cause the high-priority work item to temporarily fail to start. In this case, you can also start the second High priority work.

Who will do it? The most obvious answer is the person who can do it best and fastest. But each team has its own considerations. For example, the most suitable person may be busy with other work and cannot get away, or he may be on vacation, or even considering from the perspective of team development, other members can be given opportunities to exercise to achieve Team members overlap in various skills and complement each other.

Daily regular meeting is a key daily review-adjustment activity. The time is controlled within 15 minutes. The main purpose is to review, adjust and synchronize the daily work plan to help the team do its work better.

03 Implementation of Scrum agile software development, team members need to be proficient in some application software development technical practices, such as continuous integration, automated testing, refactoring, test-driven development, etc. These technical practices will put forward higher requirements for the development team in the short term It will cause progress or other pressures on the development team, but in the long run, only by actively using these good technical practices can you truly experience the benefits of agile.

04Communication agile teams are generally small enough teams. The communication of small team members does not require complicated charts and reports to communicate work progress. The following methods and tools are recommended:

Task board: Display the task status of the sprint list over time.

Sprint burndown chart: Shows the remaining workload curve for unfinished tasks.

Sprint burning graph: Shows the curve of the workload completed in the process of reaching the sprint goal.

4. sprint review

The focus of the sprint review is the product, that is, the focus is on the results. The work results completed during the implementation of the sprint are reviewed. The participants include the Scrum team, internal stakeholders, and external stakeholders. An important preparatory work before the start of the review is to confirm that the sprint work is completed. This work is done by the product owner. He finally confirms whether the work items in the sprint list are completed. The timing of confirmation is not to wait until the last moment before the review. Confirm as early as possible in the implementation process, so that problems will be discovered early and time for remediation will be gained.

The methods used in the sprint review process include:

01 Summary The person in charge of the product usually gives a general description of the work of this sprint, and displays the sprint goals and sprint list to illustrate the basic situation of the completed product increment.

02 Demonstration The members of the development team will demonstrate the completed system functions. For functions that are not so easy to demonstrate (such as programs running in the background), at least some test programs must be provided to prove that the completed work meets the requirements of the product owner. Note that the presentation itself is not the purpose. The purpose of the presentation is to stimulate the thinking collision of team members and put forward more constructive suggestions and feedback.

03 Discuss Product Incremental Demonstration to guide participants to comment, establish and discuss appropriately on product features or goals. If more in-depth discussion of problem solutions is needed, separate meetings should be held independently.

04 Adjustments Through demonstration and discussion, some changes or new requirements will be generated. These changes and requirements will bring adjustments to the product list and the next stage of the sprint list. After sorting out, it will be updated at the end of each sprint. You can respond to changes in the next sprint in a timely manner.

5. sprint review

Sprint review focuses on the product construction process itself, that is, it focuses on the process. The team reviews what happened during the sprint together, analyzes their own working methods, finds out possible problems, proposes improvement plans and makes improvement plans. Before each sprint review, you can first define the key content of the review, so as not to be too distracted. In a retrospective meeting, you need to ensure that you create an atmosphere of "right to the matter and not to the person". The purpose of the retrospective is to improve the process, not to blame someone. At the end of the review, let the team members follow up and implement improvement measures to make the team more efficient in the next phase of the sprint.

The summary sprint includes most of the time and activities in the entire product or project development and management, and is the main link in the realization of product functions. This article attempts to discuss all the activities and work content involved in the sprint from the perspective of the four processes of sprint planning, sprint execution, sprint review and sprint review, hoping to inspire and help agile teams in the implementation of the sprint process.

Reasonable and effective use of agile development tools can not only allow us to work in an orderly manner, but also ensure the achievement of project goals to the greatest extent. CORNERSTONE provides functional modules including task/requirement/test management, iteration planning, defect tracking, report statistics, team collaboration, WIKI, shared files, and calendar. Now it can be used free of charge for teams with less than 20 people.