stakeholder who requested it and the person in
charge of the development team, should be stored, as
they are crucial information for the automated
generation of traceability matrices;
F3. Automation of analysis and negotiation:
This function aims to enable the analysis and
negotiation of the requirements, after their
identification. Thus, the requirements should be
analyzed in detail, in order to find conflicts,
inconsistencies, lack of information and
compatibility with the budget constraints and
schedule. As soon as the problems are identified, the
negotiation with the stakeholders must take place,
with the objective of finding the solution that
satisfies the constraints and needs (Simão and
Varela, 2009). To support this activity, the used
strategy an analysis checklist, which allows a
standard check of all the requirements, according to
the same criteria;
F4. Automation of requirements validation:
This function allows the final validation of a
requirement, considering aspects such as compliance
with required quality standards, poorly formulated or
ambiguous requirements, conflicting requirements,
among other aspects that have not been corrected or
have not been observed at the moment (Ito et al
2011). Therefore, this activity adopts a validation
checklist, which allows all requirements to be
validated from the same criteria;
F5. Requirements history management: This
feature allows manage all the changes that
requirements undergo throughout the project
lifecycle, once they become available for
stakeholder analysis. Managing the requirements is a
key function, since the requirements evolve
according to changes in the application domain
environment and according to understand of the
project objectives by the stakeholders. Kotonya and
Sommerville (1998) estimated that about 50% of the
requirements will be changed until they are
effectively used in project development;
F6. Management of exclusions: This function
allows the management of the historical basis of the
excluded requirements, being possible to consult its
specifications, as well as the reason for the
requirement to have been excluded from the project.
This function is important for the development of
similar projects, since the excluded requirements can
be consulted as lessons learned;
F7. Automated generation of traceability
matrices: This function allows the creation of
traceability matrices that present the dependencies
between the requirements. According to Kotonya
and Sommerville (1998), a critical part of the
requirements changes management process and,
consequently, the management of the requirements
history, is the evaluation of the impact of the change
under the rest of the requirements and parts that
make up the project. Consequently, it is essential to
ensure the traceability of requirements and to
provide practical ways of understanding the
relationship between them, and therefore, facilitate
the verification of impacts that changes may cause
on other requirements. Thus, three types of matrices
are considered: “requirement X requirement”,
“requirement X stakeholder” e “requirement X
responsible team member”.
The traceability matrix "requirement X
requirement" allows check which requirements are
related to other requirements. In this way, it is
possible to evaluate the impact that the change or
exclusion of some requirement will cause in the
requirements with dependence. The traceability
matrix "requirement X stakeholder" allows verify
what are the requirements requested by a particular
stakeholder, providing a global view of the
stakeholders who requested the most requirements
and, therefore, need to follow the development of
the project in a more active way. Finally, the
traceability matrix "requirement X responsible team
member" allows verify those responsible for
managing each of the project requirements, allowing
the overall view of allocation of responsibility to the
members of the development team;
F8. Automated generation of control charts:
This function allows the creation of control charts
with project informations, necessary to control
requirements, through a simpler and easier way to
understand. In this sense, three possible charts can
be generated: “requirement X amount of
dependencies”, “quantity of requirements excluded
X stakeholder requestor” and “quantity of
requirements excluded X team member
responsible”.
The "requirement X amount of dependencies"
chart allows viewing the project requirements
according to the number of dependencies associated
with them. The purpose of this chart is to enable the
identification of requirements that are isolated and
also of those that have many dependencies, which
may imply greater risk and impact on the project if
they are excluded or altered. The “quantity of
requirements excluded X stakeholder requestor”
chart allows investigate into why the requirements
for a given stakeholder are being excluded. This
chart leads to the creation of hypothesis that need to
be verified because poorly identified requirements
can lead to project failure. Finally, the “quantity of