Is it easy to understand what the system does by reviewing the model?
-
Does the Use-Case Survey provide a clear, concise overview of the purpose and functionality of the system?
-
Are there no long chains of include relationships, such as when an included use case includes other use
cases? These can obscure comprehension.
-
Are included use cases independent of the use cases that include them?
-
If several use cases contain similar subflows, have you investigated whether factoring this common
behavior into an included use case will simplify the model?
|
Have all use cases been identified?
-
Do the use cases identified collectively account for all required behavior of the system?
-
Have all features identified in the Vision document for this iteration been addressed by at least one use case?
-
Have all nonfunctional requirements that must be satisfied by a specific use case been captured in that use case?
-
Have you verified that the use-case model contains no superfluous behavior (known as "gold-plating")?
-
Is each concrete use case associated with at least one Actor, as it should be?
-
Is every Actor associated with at least one use case?
|
Is the model consistent?
-
Is the system behavior consistent under the same conditions and with the same input?
|
Are all relationships between use cases required?
-
Does each included use case make the model easier to understand, implement, and maintain?
-
Is each concrete use case (not an included use case) independent of other use cases?
|
Are use-case packages used appropriately?
-
Have cross-package dependencies been reduced or eliminated to prevent model ownership conflicts
-
Is packaging intuitive? Does the packaging make the model easier to understand and implement?
|
Do all model elements have appropriate names?
-
Have you verified that no two use cases have the same name?
-
Does each Actor have a name that effectively describes that person's Role?
|
Are individual use cases properly specified?
|