Lean User Stories
If you are a software developer, you have definitely heard of user stories. They are commonly used in Agile methodologies. Lean is no exception. In this article we will tell you about Lean methodology user stories. But before doing that, it is necessary to describe the methodology itself and find the proper definition for user stories.
Initially Lean originated as a manufacturing methodology. In the middle of the 20th century it was invented by the managers of Japanese corporation Toyota. At that time it had big problems with delivery of its production. The manufacturing chains of Toyota were too long and the company could not deliver its products in time. Lean was invented to solve this problem. Initially the methodology was called Toyota production system, but after it became popular all over the world, its name has changed. Lean is aimed at improving the terms of product delivery by eliminating wastes. Anything that does not impact the functionality of the final product is considered a waste in it. Lean eliminates all wastes, including financial costs and unnecessary operations. The methodology is now widely used in various spheres including software engineering.
It was applied to software development in 2003. At that time two famous Lean researchers Tom and Mary Poppendieck published their book “Lean Software Development”. It described the main principles of Lean methodology and gave practical advices on the issue of their implementation in software engineering. Lean is considered an Agile methodology. That can be explained by the fact that the structure of its projects is iterative. Lean teams test their intermediate products after each iterative cycle, because they are focused on their quality. Usually they prefer avoiding defects instead of fixing them. However, a software product cannot be perfect. That is why Lean developers detect its defects on early stages. Lean teams also have Agile structure. They are small and self-managing. They don’t have formal leaders or project managers. It means that the team manages all its projects as a whole. Lean teams have only several roles. That is why their members have to be interchangeable. If you want to create a Lean team, you have to find the developers who are capable of performing the functions of testers and business analysts.
User stories are used in all Agile methodologies. Actually, a user story is a description of the functionality of the future software product, made by its final user. In Agile methodologies including Lean user stories are used to formulate the tasks of the entire projects and separate iterative cycles.
A life cycle of a user story in Lean looks as following.
First of all, the team gathers user stories. After that they are prioritized in the product backlog. This is the responsibility of the customer, because he is the only person who makes decisions on the functionality of the future software product. However, the developers can reprioritize user stories to make the process of project realization faster. At the next stage of work the plans of iterative cycles are formulated. User stories are turned into tasks of these cycles. When a certain iterative cycle is finished, the developers take the next user stories and repeat this operation.
The examples of Lean user stories are the same as the examples of user stories for other Agile methodologies. A user story must be formulated correctly. It must answer the question: “What functionality do you want to see in the final software product?” If a user story meets these requirements, it can be placed in the product backlog.