We are often contacted by customers with very rough, technical requirements lists for software projects. In cases like this, the first project step for //SEIBERT/MEDIA is to turn the customer’s requirements list into a product backlog that highlights how the customer benefits from the requirements. This is not a trivial task and requires time and resources. But why should the customer pay for this preparation work that has nothing to do with actually completing the project?
Backlog: Focal point for future work
The product backlog is one of the central artifacts in agile software development. It contains all tasks and work required for creating the software, including all the requirements from the customer’s list mentioned above.
The backlog is the center point of the entire project. It is used to specify what the application should be able to do. It is also where requirement priorities are displayed. This creates transparency for short, medium and long-term tasks.
This backlog is also used to estimate required effort, create an offer for completing the project and forecast remaining expenditures and costs.
The backlog is never considered final. It is constantly being refined, expanded and modified during the project. It helps create the flexibility that characterizes agile teams.
Requirements as user stories: who benefits?
Requirements are turned into user stories before they enter the backlog. User stories clearly and concisely describe the user’s role, goal and benefit. A user story in the backlog highlights who can expect to benefit from the team’s work.
One main advantage of creating user stories is not having to deal with complicated technical specifications. Instead of concentrating on technical details, user stories put the user (who the software is really created for) into the spotlight and can be understood by everyone and not just specialized developers.
This is how user stories form interfaces between the development team, client and end users and solve communication challenges between developers and users when the requirements are being implemented. User stories are easy to understand and unambiguous for everyone involved.
Team and client on the same side
The backlog makes it easy for the agency and the client to speak in plain terms. Well-formulated, concise user stories let everyone understand the functions and help prevent misunderstandings. This makes the project run more smoothly and increases productivity.
Recognizing business values
A good backlog provides information on the business value of individual requirements. While developing the backlog, teams learn which aspects are important to the client because user stories are written with him. This knowledge and these findings help the team understand the client’s goals and the purpose of the application. This leads to better results that are in line with the client’s expectations.
Acceptance criteria ensure testability
Acceptance criteria are integral parts of user stories in a backlog. As the name suggests, these criteria decide whether the product owner accepts or rejects a role as the “client advocate” who determines whether a function was implemented as defined. It is clear which criteria a feature must fulfill. Acceptance criteria form the basis for tests and for systematic quality assurance.
A basis for relative estimations and necessary for cost control
Generally, no reliable cost calculation can be made when preparing software projects, neither in conventional nor agile projects. This has nothing to do with a service provider’s capabilities. It is due to the particularities of complex IT projects (unclear specifications, dependence on third-party systems or service providers, using new technology, changing priorities, changing requirements, etc.).
A backlog with user stories and acceptance criteria, however, forms an excellent basis for the powerful, relative estimations common in agile projects. It lets you compare planned features and is a prerequisite for full budget control for the client.
Converting requirement lists into a backlog with user stories is important for making sure everyone understands the software application’s benefits and for transferring requirements into the agile process. But this investment is not an end in itself.
The backlog with its user stories helps prevent misunderstandings and delays and lets you incorporate requirement and priority changes. It also integrates the user’s needs into the development process and its acceptance criteria form the basis for transparent QA and workload/cost controls.
And finally, experience has shown that a good, well-maintained backlog significantly increases team productivity and makes for faster implementations. The benefit to the customer and benefit for the product are readily apparent.
Your partner for individual software development with Scrum
Are you planning a software project? Do you want to expand an existing system or migrate a software platform? Do you require interfaces between applications within your company? And you insist on top-notch quality at all times?
Then //SEIBERT/MEDIA is the right partner for you. For us, expandability, performance, scalability, platform independence and testability are what really matter. That’s why we create individual high-end software solutions that can be expanded and modified flexibly in the future. Feel free to contact us with no obligation! You can find more information in our public wiki: Introduction to software development with //SEIBERT/MEDIA.
Diesen Beitrag auf Deutsch lesen.