NASA OSMA SAS 03 Use Case Quality Attributes
NASA OSMA SAS '03 Use Case Quality Attributes James R. Mc. Coy SRS Technologies Software Assurance Technology Center http: //satc. gsfc. nasa. gov james. mccoy@gsfc. nasa. gov 8/1/2003 Use Case Quality Attributes 1
Overview • Introduction to the UML & Use Cases • Research Initiative • Validating Use Cases, Risk Indicators & Use Case Metrics • Requirements Use case Tool • Summary 8/1/2003 Use Case Quality Attributes 2
Introduction • System requirements are the foundation upon which an entire system is built • Correct, complete & testable requirements are critical; success of a project is directly affected by the quality of requirements • Traditional vehicle for capturing & communicating requirements is the Software Requirements Specification (SRS) • Use cases provide a more user-centered approach for specifying requirements 8/1/2003 Use Case Quality Attributes 3
Unified Modeling Language • The Unified Modeling Language (UML) is the industry-standard language for specifying, visualizing, constructing & documenting artifacts of complex software systems • The UML: • Is a language • Applies to modeling and systems • Is based on the object-oriented paradigm 8/1/2003 Use Case Quality Attributes 4
Use Cases • At the heart of the UML are use cases • The use case diagram is the driver for the eight remaining diagrams that compose the UML • Use cases form the basis of how the system interacts with the outside world (users, other systems, etc. ) 8/1/2003 Use Case Quality Attributes 5
Use Case Model • Use cases were designed to capture, via a combination of structured text & graphics, the functional requirements of a system • Use cases are usually described in a textual document that accompanies a use case diagram; the combination of these use case diagrams & their supporting documentation is known as a use case model 8/1/2003 Use Case Quality Attributes 6
Use Case Model • Use case models: • Illustrate a system’s intended functions (use cases), its surroundings (actors) & the relationships between them (use case diagrams) • Are used to communicate • Provide a vehicle used by customers & developers to discuss the system’s functionality 8/1/2003 Use Case Quality Attributes 7
UML Use Case Diagram Fowler, M. , & Scott, K. , UML Distilled: Applying the Standard Object Modeling Language, Addison-Wesley, 1997. 8/1/2003 Use Case Quality Attributes 8
Research Initiative • Extensive research has been conducted on expressing software requirements in natural language & has resulted in the development of a tool for evaluating them • Initiative is to enhance & refine a use case tool that provides a more methodological basis for specifying & managing understandable, buildable & verifiable functional requirements—especially for large, object-oriented projects 8/1/2003 Use Case Quality Attributes 9
Research Goals • Identify the attributes of quality use cases • Level of validity • Risk indicators • Metrics · Develop software tool for analyzing use cases based on these characteristics 8/1/2003 Use Case Quality Attributes 10
Validating Use Cases · Is the use case complete? · Is the actor’s goal going to be met? · Are there any changes that would simplify the process depicted in the use case? · Are there any additional goals that are not addressed? • Are there any additional actors that are not represented? 8/1/2003 Use Case Quality Attributes 11
Risk Indicators • Options give the developer latitude in satisfying the specification statements that contain them. • Can • May • Optionally 8/1/2003 Use Case Quality Attributes 12
Risk Indicators • Incompletes provide a basis for expanding a requirement or adding future requirements. • TBD • TBS • TBE • TBC • TBR 8/1/2003 • Not defined • Not determined • But not limited to • As a minimum Use Case Quality Attributes 13
Risk Indicators • Weak phrases are clauses that are apt to cause uncertainty and leave room for multiple interpretations. • Adequate • As appropriate • Be able to • Be capable of • Capability to 8/1/2003 Use Case Quality Attributes • Effective • As required • Normal • Provided for • Timely • Easy to 14
Use Case Metrics • • Ambiguity = # Weak Phrases + # Options Completeness = # Incompletes Volatility = # Changes / # Requirements Traceability = # Use Cases Traced to Test Cases 8/1/2003 Use Case Quality Attributes 15
Requirements Use case Tool • The Requirements Use case Tool (RUT) provides assistance to managers, customers & developers in assessing the quality of use cases • In addition, RUT serves as a database repository for requirements developed as use cases • RUT is a valuable resource for collecting, evaluating & maintaining software requirements gathered as use cases 8/1/2003 Use Case Quality Attributes 16
RUT Features • • • Web-based; multi-user Open source; multi-platform Use case repository Standard use case template Integration with Rational Rose Configuration management Risk analysis Metrics Test case generation & traceability 8/1/2003 Use Case Quality Attributes 17
Summary • Extensive research has been conducted on writing quality software requirements in a natural language, resulting in guidelines for writing effective requirements & a tool for evaluating them • Current software development practices provide a more methodological basis for specifying & managing quality requirements • The goal of the Requirements Use case Tool is to provide a clear evaluation technique for software requirements written as use cases • Future work is needed to introduce this tool to NASA projects 8/1/2003 Use Case Quality Attributes 18
- Slides: 18