The essence of agile development is to quickly respond to market changes by means of iterative incremental software development to prevent serious deviation from customer demand by long-term closed-door development.
Is agile smooth sailing? Obviously the answer is no. More and more organizations and teams are learning, practicing, and introducing Agile, but the results are vastly different. Why is that? Or are there so many pain points in agile transition?
In fact, agile development is only a guiding ideology and principles, agile development does not give specific practical steps, the important thing is through the practice of which methods can help to achieve the goal, or which problems to solve to achieve the goal.
In the following part, we will introduce the content of an Agile team going through an iteration based on past practical experience, hoping to bring some thoughts and references to individuals, teams and organizations that are about to or have already engaged in agile practice.
The following sections focus on, but are not limited to, the Scrum framework.
Here we use Gitee for efficiency to help us better understand how to practice agile development.
Release planning
In version planning, it is recommended to consider customer values, overall quality and scope, schedule, and budget. There are four release rules for common releases, and the team can adopt the one that is most appropriate.
1. Release after each sprint, instead of combining the results of multiple sprints into a single release;
2. Release and sprint should be consistent, i.e. release immediately after sprint;
3. Release by feature, that is, release every time you finish a feature, which is also called continuous delivery;
4. Release on demand, which integrates the above releases and chooses when to release according to the needs of the business side.
No matter which way you launch, most organizations find it best to do a little bit of long-term planning in favor of overall planning. Some organizations may use other names instead, such as: long term planning (looking at multiple sprints), milestones (versions consistent with major milestones).
Make an iteration plan for each line of business as seen by customers through Gitee “milestones”
We need to understand that milestones can be one iteration or multiple iterations, depending on our planning. For convenience, we’ll treat a milestone as an iteration, i.e. “inventory management goes live” as an iteration.
Team management
There are three common roles in the Scrum framework: Product Owner, Scrum Master, and Scrum Team.
According to the actual situation in our development, the characters are divided into the following four types:
1. Project Manager: equivalent to Scrum master, responsible for coordinating internal team cooperation, convening stand-up meetings and controlling the overall progress of the project;
2. Product Manager: equivalent to the product owner, responsible for deciding what work should be done, identifying work items and prioritizing them, drawing up the Backlog and prioritizing each item;
3. Developers: Developers are the concrete implementers of project development tasks. They are responsible for the completion of development tasks, timely feedback development progress;
4. Tester: Tester is the concrete implementer of the project test task. They are responsible for developing test plans, writing test cases, creating and reverting defects.
In Gitee’s “Project Members,” you can group and manage the rights of the members participating in the project
Need to comb
Before the project starts, the product owner collects needs, expectations and demands from all parties, clarifies work items, evaluates priorities, and sorts out Backlog lists. Common items are expressed in the form of user stories. During the Sprint planning meeting, the Scrum team selects items from the product Backlog to form the Sprint Backlog.
Create a new task combing requirement in Gitee
The product owner sets the priority of the requirement task, defines the requirement state according to his own situation, refines and disassembs the task by using “sub-task”, and sets the task to belong to different resource pools to form a complete story structure.
The iteration plan
Before the iteration begins, we need to have an iteration planning meeting. Schedule the work to be done in the iteration and determine the iteration goals during the meeting. At the iteration planning meeting, the product owner needs to tell the team the priority of the implementation of the items in the iteration backlog. The team committed to how many items they could complete in the iteration. No one can change sprint content unilaterally during an iteration. The final planning was done in collaboration with the entire Scrum team.
A list of iterative to-do items in Gitee
Prior to each iteration/release, the delivery team and the demander should discuss the scope of the next iteration/release in the planning meeting, and the delivery team will make a commitment to deliver the agreed scope of requirements at the end of the iteration.
Track iteration progress
After the goal of iteration is clear, the sprint of iteration is about to enter. The general iteration cycle is about 1 to 4 weeks. Throughout the iteration, it is up to the Scrum Master to ensure that the team sprints at full speed without external distractions. During sprints, visual management is recommended so that the iterative process and work must be visible to both those performing the work and those receiving it.
Task status Kanban pattern in Gitee
Daily station will
Once the iteration begins, the team iterates on the Daily work in the Daily Scrum Meeting. Team members quickly report progress, need to change the plan, difficulties encountered, etc., to ensure that the Scrum Master and team members can quickly deal with obstacles and focus on the target sprint. It is also suggested to synchronize valuable information to the Wiki after the forum is over.
The minutes of each meeting are saved in the system through the repository Wiki feature in Gitee
Focus on team progress
In addition to using visual kanban and daily stations to monitor project progress and risk, one particularly useful practice is burnout charts.
Burnout chart shows the relationship between the remaining workload and time graphically. Ask the team to update the work progress every day, and develop a good updating habit. From the diagram, you can understand the team’s plan, track the team’s progress, and see if the team is working together. At the same time, problems can be found and improved in time.
Burnout diagram in Gitee
Gantt chart can check the specific progress of iteration and the task division of each project member at any time, so as to achieve reasonable allocation.
Gitee’s “Gantt chart” feature makes project scheduling visual and progress clear
Iteration review
The result of an iterative sprint is a potential incremental deliverable of product, so how do you evaluate the achievement of the sprint goal? Next comes another event, the iterative review meeting.
The purpose of iteration reviews is to review the results of the iteration sprint and determine future adaptation. The team presents the results of their work to key stakeholders and discusses progress towards product goals. During the iteration review, the team and stakeholders review what was accomplished during the iteration sprint and how the environment changed. Based on this information, participants can collaborate on the next steps. PBI may also adapt to new opportunities. It is important to note that an iterative review is a working session and teams should avoid limiting it to presentations.
Iteration review
The last session is a retrospective improvement meeting. The purpose of iteration retrospectives is to plan ways to improve quality and effectiveness. The entire iteration should be reviewed to see how well individuals, interactions, processes, tools, and their DoD were accomplished and what problems were encountered in the last iteration sprint, and how those problems were resolved or not resolved. The team identified the most useful changes to improve its effectiveness. The most impactful improvements will be implemented as quickly as possible. You can even add them to the iteration to-do list for the next iteration sprint. If necessary, important information can be updated to the Wiki so that team members can see it at all times.
In conclusion, agile development is just a way of management, it does not tell us how to do each project, choose a tool at hand can help better management practice, achieve twice the result with half the effort.
To do a good job, must first sharpen his device Gitee enterprise not only for demand management, iteration planning, progress tracking such classic tools support Scrum link provided and orderly management can be a very good help enterprise research and development whole process but also domestic leading code hosting platform, the cloud/local are flexible deployment, already provide service for 18 m enterprises.
To learn more about agile management, click on the link to apply for your own industry solution for free: jinshuju.net/f/QNHOnu.