System Analysis and Design
to complete system analysis and design for an information management
requirements specification and want practical timesaving suggestions?
Non functional requirements are system requirements needed to satisfy
How do we
determine system requirements?
These are mostly technical in nature and need to be defined by the
architecture and design team and the operations support team.
technical, why are they in a requirements document?
Some project development methodologies have two requirement documents:
management projects are “data centric” and a lot of requirements are
really system related, hence, they are included in the information
management requirement specification.
- Business requirements, which identify all
functional requirements; and
- System requirements, which identify all system
related, or non functional requirements.
The following non functional requirements
considered when completing system analysis and design and non
Examine the following topics and document any requirements that might
impact architecture and design:
- Legal and regulatory policies;
- Existing systems limitations;
- Hardware limitations;
- Software limitations;
- Communications constraints;
- Architecture and design standards (should
reference all standards and best practices);
- Production support standards;
- Data modeling standards; and
- Operational environment standards.
Consider things such as:
System analysis and
design quality and
production support requirements
- Are there requirements specifying when
needed functions are needed, e.g. ad hoc reporting?
- Are there requirements for synchronization of
- Are there requirements governing the
replication of data/functions across distributed platforms?
there specific constraints on acceptable response time (e.g. within a
certain number of seconds for a specific percentage of queries)?
- Are there response time requirements for
specific queries or classes of queries?
Consider the following:
- Ability to audit, e.g. what type of data access
is required to information maintained for audit purposes?
- Reliability, e.g. how long should the system
function without downtime?
- Availability, e.g. specify the amount of time,
during normal use periods, that the system must be available;
currency, e.g. are there constraints governing the maximum allowable
latency for data? (Latency refers to the amount of time that has passed
since the data was deemed current);
- Flexibility, e.g. define
requirements related to the degree to which the system can be changed
to include new business functions and future technologies;
- Accuracy, e.g. are there requirements governing
the quality of specific data attribute values?
- Consistency, e.g. are there specific
constraints on user interface screens?
- Maintainability, e.g. are user managed tables
or parameters allowed, helpful or prohibited?
- Scalability, e.g. will the solution require
scalability across hardware and software?
- Monitoring, consider requirements for
e.g. what type of data access is required to information maintained for
system monitoring purposes? What is the anticipated frequency of such
- Command and control, e.g. will there be a
need to control the system remotely?
- Failure management, e.g. should failures be
detected both automatically and manually? How will failures be
- Logging, e.g. will data logs be required?
What data will be captured and logged?
- Error handling, e.g. is there specific data
that must be captured in order to determine the problem source?
Identify training needed by users, to use the system, and production
support teams, to operate and maintain the system.
and Design Summary…
management projects are “data centric”. Most of the requirements are
non functional, and provide direction to the
architecture and design team. It is critical that system analysis and
design identify these non functional
requirements requirements early in the project so that potential impact
schedule/cost can be evaluated before requirement specifications