ReferenceBlog.sina.com.cn/s/blog_493a84550100ax35.html
I recently read some articles on the practice and application of lean panel in software development on infoq. Agile Software Development draws on a lot of TPS Lean Production ideas. Although I did not fully mention the concept of panel, howeverAgile Software development practicesIs necessary. For more information about infoq, see:
Apply dashboards to software development: from agility to lean
Http://www.infoq.com/cn/articles/hiranabe-lean-agile-kanban
Visualization of agile projects with "Panel Chart"
Http://www.infoq.com/cn/articles/agile-kanban-boards
The essence of lean management in development projects
Http://news.csdn.net/n/20080519/116069.html
Punctual production in software development
Http://news.csdn.net/n/20080519/116067.html
We all know that the important role of Kanban is to transform traditional push-type production into boosting production and reduce waste through on-demand production. For kanban, we need to control the number of products in process, and consider the flow rate formed by the entire Kanban process. Agile uses the story card as the information carrier and organizes development in a pull manner. The typical information flow process is as follows: requirement => story card => User Acceptance Test => unit test => development. This is the test-driven development process. The story card is the first dashboard. in the development process, the dashboard exists in the form of a test and starts coding only when the test fails. The story card not only reflects the customer's identifiable value, but also organizes the work of all roles in the team, which is like the dashboard of the assembly shop in the production on time (requiring the production of a finished dashboard) the role is the same, while the User Acceptance Test and unit test are similar to the dashboard of each production unit before the Assembly. The difference between the story card and functional requirements lies in the fact that the story card tries to work on all the roles (analysis, testing, and Development) in the team in one iteration, at the same time, we can complete our mission at the end of the iteration, and the functional requirements have existed for a long time. We need to break down and convert them into story cards to guide the team's development work. Therefore, the story card and test-driven development allow software development to be carried out in a pull manner.
With the pull, we can see the flow of agile stories stuck on the entire panel. For each process, we have three states: todo, doing, and end, each user scenario moves on the dashboard as soon as the current operation is completed, from the end of the previous operation to the todo of the next operation, by moving this visual dashboard process, we know the current project status and the process where the current project bottleneck occurs.
We need to realize that there is no so-called raw material waste in software development. The biggest waste of software development is the human resources waiting for us to finish the rework of the artifacts after the development. For the first problem, we need to analyze the bottleneck process and reconfigure the proportion of each process resource. For the second problem, we need to introduce the mechanism of continuous iteration and continuous delivery.
As mentioned above, the user story card is used to organically link roles in various stages of development, and a test-driven development is introduced to achieve real pull production. In addition, we need to create multiple iterative versions by classifying the story card to achieve our desired continuous integration, iterative development and multiple delivery. This is an important difference from traditional waterfall development. Agile Development emphasizes continuous and stable completion of user-valuable and integrated available functions, instead of checking whether all the design work has been done, or trying to measure how many lines of code a developer has written every day and how many bugs a tester has tested. Each user story card can be independently delivered to create user value. The story flows between processes composed of various dashboards. The story card helps FDD feature-driven development. Product completion is iterative rather than traditional incremental mode.
From lean dashboard to agility, in addition to emphasizing the card as the carrier of the Core Value Stream and information stream, the core element of panel management. We also need to consider the following issues to strengthen the application of Kanban.
- What is the life cycle model and how processes are divided?
- How to determine resource configuration through historical productivity
- Whether the project completion progress is determined by the final completion ratio of each story card
- Group or group the story card to implement iterative delivery
- The actual progress of the project and the work done by each member are displayed on the dashboard.
- One is the total waiting time of the team, the other is the rework time, and how to eliminate waste
Original http://blog.sina.com.cn/s/blog_493a84550100ax35.html