The following basic issues should be addressed to detail all requirements
that are not specified within the use-case model:
- Functionality: What is the software supposed to do?
This should include:
- Validity checks on the inputs
- General responses to abnormal situations, including:
overflow, communication facilities, error handling and recovery
- Effects of parameters
- Relationship of outputs to inputs, including input/output
sequences and formulas for input to output conversion
- External interfaces: How does the software interact
with people, the system's hardware, other hardware, and other software?
- Performance: What is the speed, availability, response
time, recovery time of various software functions, etc.? Are both static and
dynamic requirements included?
- Logical database requirements: Have all logical
requirements been specified for any information that is to be placed into a
database? This may include:
- Types of information used by various functions
- Frequency of use
- Accessing capabilities
- Data entities and their relationships
- Integrity constraints
- Data retention requirements
- Standards Compliance: Have all requirements derived
from existing standard and regulations been specified? How will this be
- Attributes: What are the reliability, availability,
portability, correctness, maintainability, security, etc. considerations?
- Design constraints imposed on an implementation: Are
there any required standards in effect, implementation language, policies
for database integrity, resource limits, operating environment(s), etc.?
© 1987 - 2001 Rational Software Corporation