Page 147 - Software and Systems Requirements Engineering in Practice
P. 147
114 S o f t w a r e & S y s t e m s R e q u i r e m e n t s E n g i n e e r i n g : I n P r a c t i c e
should be performed programmatically, as performing them manually
could be prone to errors and time consuming. Some of the checks that
can be performed are shown in Table 4.2.
Error Indicates That
Circular Dependency There is the possibility of deadlock, e.g., a depends
on b, which depends on c, which depends on a. This
can result in confusing or incomplete requirements.
Class Not Instanced A concrete class has been defined to the model;
however, an instance of the class cannot be found
on any sequence or activity diagram. This means
nowhere is it shown how this business object is used.
Concrete Use Case A process has not been adequately described.
Not Defined It does not have enough information provided to
extract requirements.
Dangling Abstract A subject area has not yet been modeled, the model
Use Case is incomplete.
Hidden Artifact Something in the model is not shown on any
diagram. It appears to have been forgotten or
overlooked.
Illegal Extending An extending relationship has an abstract use case
Association at least on one end, causing ambiguity.
Illegal Interface A boundary or interface has an association with an
Association abstract use case. This association will result in
ambiguous requirements being generated.
Interface Not Used An interface or boundary (a class with a stereotype
of boundary) has been shown on a use case
diagram, but nowhere is it explained how it is used.
Missing Boundary The interaction of an actor with the product, either
via software (a software interface) or visually (a user
interface, panel, etc.), is missing.
Mixed Use Case A use case with mixed abstract/concrete included/
Relationships extending use cases is ambiguous, and as a result
any requirements derived from it may also be
ambiguous.
Unused Concrete It probably means that the model is incomplete, or
Actor the actor does not communicate with the system. An
actor can only access a process through a boundary.
Use Case Parts of the definition of the use case are
Completeness missing. This may result in incorrect or incomplete
requirements.
TABLE 4.2 Serious Model Faults