Requirements change, i believe everyone must have encountered, even if the project has complete requirements at the time of launch, it may still change after the project is launched. and because of the different management models, changing requirements after a project is launched can be particularly time-consuming and laborious.
That's why we need an ongoing requirements management process that not only helps control costs and avoid runaway scale, but also guarantees complete traceability.
A good requirements management system can be flexibly managed as requirements change, and can also efficiently deliver functions. in practice, we have summarized some methods that can help us avoid frequent changes in requirements, which are briefly introduced below.
First, collect demand from as many channels as possible
the first is to gather requirements. this process involves all relevant channels: new and existing users, managers, business analysts, and other people involved. pay special attention to those users who will actually use the system, because they will give you the most available information in terms of system performance and user interface. using them as the highest level of demand source allows your product or service to truly address your customers' pain points.
how do i get requirements from users?
- pay attention to user comments or complaints - the demand may be hidden in it.
- for preset questions, capture the user's reaction.
- brainstorm with managers who can communicate directly with users.
- take a closer look at the user's environment.
learn more from the user's perspective - such as how they use the product to carry out tasks on a daily basis, their workflow, the ordering of tasks, internal rules, what kind of problems they may encounter, or communication between users and team members.
Through Software, we bring together the user needs of users, marketing personnel, pre-sales, customer service and other different channels
second, determine the priority of requirements
categorizing requirements is not a simple task. when the project matures, we document the requirements and keep all information up-to-date to ensure that it is traceable during testing and validation. prioritizing requirements ensures that the team finds missing, contradictory, or repetitive. a clear requirements structure makes it easier to decide which actions to perform during test management, including specifying relevant test cases. these two processes are closely linked to each other and can only be achieved if they are carried out under controlled and well-planned.
when discussing the priorities of needs with the people involved, they naturally come up with a variety of opinions: which are critical, which are wanted, and which are mandatory or optional. with regard to the prioritization of requirements, it is difficult to get all participants to agree, which is why this is best done early in the project. in order to better grasp the prioritization of requirements and their dependencies, organizing them in a tree map by hierarchical relationship is the best way.
by prioritizing requirements through the organization, teams can quickly filter out missing, duplicate, or contradictory requirements
3. invite all relevant personnel to participate in the review as much as possible and reach a consensus
once the requirements have been sorted out, a meeting with all relevant personnel is a must. and make sure that project members are involved as much as possible. requirements can change even at the last minute of the meeting, and this is a critical time for consensus. throughout the application lifecycle, we need to ensure that the system is not developed blindly to meet a broad set of requirements, but should be flexible, prioritize cost reduction, and deliver early. that's why it's important to prioritize requirements early, followed by gathering requirements and waiting for a final review. these requirements, along with their priorities, will indicate the future direction of the project. after that, all that's left is for colleagues with extensive requirements management experience to test your requirements specifications.
in short, we should pay attention to the following criteria when verifying requirements:
1. unique, the whole project process is complete and unchanged.
2. easy to test, traceable.
3. within the scope of the team's ability, it is convenient for later verification.
if you feel that the requirements do not meet these criteria, modify or simply delete them.
fourth, the requirements verification
usually, from time to time, the person who made the request review the documentation, and try to help them understand the need. when these requirements are implemented, prepare the relevant documentation. depending on the workflow, you'll provide different formats such as activity diagrams, workflow model diagrams, and flowcharts to illustrate. it is best to organize the requirements in the form of folders and display them in a tree diagram for easy verification. this allows you to build an environment with a small number of features available, and users can try different approaches to validation before the requirements are finally reviewed. in addition, this organizational form allows participants to understand how specific needs represent their work goals and how they make up the overall goals of the project. in the same way, it is equally important to clearly show the relationships and problems between all objects.
5. assess the impact of changes in requirements
this type of assessment will allow the team to recognize the impact of the change in requirements and help the team make the most effective business decisions. impact analysis is important in projects where quality and safety are important (such as medical or automation projects). this analysis is used to check which components the change in requirements causes to change as well.
in general, impact analysis refers to:
understand the impact of requirements changes – for example, adding a new set of features to the product can degrade performance and be unacceptable to some users;
if the requirements change, indicate which documents, models, and files may need to be modified.
it is equally important to understand which tasks involve the need for the change and how much it will cost to implement the change.
just as you change existing requirements, the system itself changes. the development team needs good version management mechanisms to control these changes, including test management, and a well-organized post-execution plan to reduce the risk of misunderstandings among members.
sixth, make good use of demand management tools
Use Software to manage requirements
It is most effective to gather and document requirements with the right tools. If your development team uses Software, you can manage requirements very well. Because it covers the whole process of R&D management including project, task, requirement, defect, iteration planning, testing, and goal management.
In terms of requirements management, with Software, you can easily bring together the needs or defects generated by marketing personnel, salespeople, and other internal channels by setting up a project, and use epic/feature/user stories to hierarchically manage requirements, so that product owners can prioritize requirements and specify the business value of requirements. And these can be used as the basis for iterative planning.
No comments:
Post a Comment