Requirement patterns catalog
10 Jan 2015Fundamental requirement patterns
Inter-system Interface
Specify basic details for an interface (exchange of information) between the system being specified and any external system or component with which it needs to interact.
Inter-system Interaction
Specify a particular type of interaction across an inter-system interface
Technology
Compatibility with particular technology
Comply-with-Standard
Standards, Laws and Regulations to comply with
Refer-to-Requirements
External requirements to be satisfied
Documentation
Types of documentation to be produced
Information Requirement patterns
Data type
How a particular atomic item of information for a particular business purpose is to be represented and / or displayed
Data structure
Define a compound data item (one that comprises multiple individual pieces of information)
ID
How to identify data entities
Calculation formula
How to calculate values
Data longevity
How long to keep the information
- Manner of storage?
- Length of time to retain the data?
- Purpose: Why do we want to keep this information for this length of time?
Data archiving
Specify the moving or copying from one place of permanent storage to another
Data Entity
Living Entity
Entities that have a lifespan
Transaction
Events in the life of living entities
Configuration
Parameters that control how system behaves
Chronicle
Record of system events (logs, audit trails)
Information Storage infrastructure
Infrastructure to store the information (eg database)
User function
Inquiry
Define a screen display function that shows specified information to the user.
Report
Define a report that shows specified information to the user. The information being displayed is not modified by the report - although it might involve some background generation of data.
Accessibility
Specify the extend to which the system (or part of it) must be accessible by people with certain kind of disability or other specific need - That is, how convenient it must be for them to use.
User interface infrastructure
Coherent set of components that together enable a user to interact with the system
Reporting infrastructure
Produces reports for us and usually lets us design new reports.
Performance
Response time
How long it takes to the system to satisfy requests
Throughput
The rate at which the system can process things
Dynamic capacity
How many things the system can cope with and work at once
Static capacity
How many entities of a particular type the system can store
Availability
When the system is available to users and how reliably
Flexibility
Scalability
Ready to cope with increases in business volumes
Extendability
Able to plug in extra software easily
Unparochialness
Avoid limitations preventing installation elsewhere (by another company, in another region, or country, and so on)
Multiness
Support multiple companies, currencies at the same time
Multi-lingual
Supports user interfaces in multiple languages at the same type
Installability
How easy the system must be to install
Access control
User registration
Making people known to the system
Authentication
Recognizing a user as a known person
Authorization
What a user is allowed to do and see
Specific authorization
Concrete user authorization rules
Configurable authorization
Insisting that definitions of who can do, what can be changed dynamically
Approval
Forcing selected actions to be approved by a second person
Commercial
Multi organization unit
Accomodating the way a business structures itself (multiple departments, offices, companies and so on)
Fee / tax
Ways to charge people money
References
- Book: Software requirement patterns - Best practices. Stephen Withall