Professional Documents
Culture Documents
SE Requirements
SE Requirements
Requirement Definition
Requirements describe the necessary functions and features of the system we
are to conceive, design, implement and operate.
Performance Problem statement--> Requirement
definition--> Specification
Schedule
Cost
Other Characteristics (e.g. lifecycle properties))
Mars Climate Orbiter (MCO) was launched by NASA on December 11, 1998
Intended to study Martian climate, weather and surface changes and act as communications
relay back to Earth
However, disintegrated during orbit insertion on Sept 23, 1999 --> approach too
close --> requirements not followed
Units confusion problem: Ground Software produced output in non-SI units (lbf-sec) instead of
SI units: Ns
Calculation of total momentum produced by engine burns needed by GNC
Key Requirements
Requirements Page 1
Key Requirements
Range: 1000 miles
Cruise Speed: 150 mph
Passengers: 20-30
Depending on
configuration
Twin Engines
Rugged and Economical
Requirements Page 2
Requirements VS specification
Wednesday, September 21, 2022 8:31 AM
Question?
Is there any difference in meaning between the words
“Requirements” and “Specifications”?
• No, they are essentially the same.
• Yes, requirements are the input to the design process,
while specifications are the output.
• Yes, specifications include the requirements, but also
contain other things such as blueprints etc…
• I am not sure.
Requirements Page 3
Technical Requirements
Wednesday, September 21, 2022 8:33 AM
Requirements Page 4
Importance of Technical Requirements
Development
Requirements Page 5
Requirements types
Wednesday, September 21, 2022 8:34 AM
Types of Requirements
Functional Requirements define what functions need to be done to
accomplish the mission objectives
• Example: The Thrust Vector Controller (TVC) shall provide vehicle control about the pitch
and yaw axes.
○ This statement describes a high level function that the TVC must perform.
○ Statement has form of Actor – Action Verb – object acted on
Constraints are requirements that cannot be traded off with respect to cost,
schedule or performance
Example: The TVC shall weigh less than 120 lbs.
Interface Requirements
Example: The TVC shall interface with the J-2X per conditions specified in the CxP 72262 Ares
I US J-2X Interface Control Document,
Environmental requirements
Example: The TVC shall use the vibroacoustic and shock [loads] defined in CxP 72169, Ares 1
Systems Vibroacoustic and Shock Environments Data Book in all design, analysis and testing
activities.
Requirements Page 7
Constraints and Goals
Thursday, September 22, 2022 11:03 AM
Requirements Page 8
Req. Decomposition
Thursday, September 22, 2022 11:04 AM
Requirements Page 9
Requirements Margins Management
Due to uncertainty during early design, must use
appropriate requirements margins (e.g. for mass, power,
memory etc…)
Requirements Page 10
Requirements Page 11
Requirement Capture
Thursday, September 22, 2022 11:06 AM
This works okay for smaller projects with dozens or a few hundred
requirements (e.g. about 3 levels of decomposition --> (7+/-2)^3 = 125 -
729
Requirements Page 12
Derived requirement (linked)
R4.0 The mass of the system shall not exceed 2,700 kg
R4.1 The center of mass of the system must be located at least 0.25
meters from the edge of its volumetric envelope
Requirements Page 13
Req. Allocation
Thursday, September 22, 2022 11:07 AM
Requirements Allocation
Decompose system requirements into lower levels of
design.
Define all the lower level functions which must be performed to satisfy
the requirement
Requirements Page 14
Requirements Allocation Process
Requirements Page 15
Concept Question
Thursday, September 22, 2022 11:08 AM
Concept Question
A balloon shall lift a payload of 1,000 kilograms, including its
own mass.
It can use either helium (ρHe=0.2 kg/m3) or hydrogen (ρH=0.1
kg/m3) as a lift gas. The standard density of air is ρAir=1.3
kg/m3.
• The balloon shall have a radius of 6.1 meters. The balloon shall use
99.9% pure helium as a lift gas.
• The balloon shall have a radius of 5.9 meters. The balloon shall use
99.9% pure hydrogen as a lift gas.
• The balloon shall have a radius of 5.9 meters. The balloon shall use
99.9% helium as a lift gas.
• The balloon shall have a radius of 6.1 meters. The balloon shall use
99.9% hydrogen as a lift gas.
• All these requirements are okay.
• None of these requirements are feasible.
Requirements Page 16
Concept Question Solution
Requirements Page 17
Requirement problems
Thursday, September 22, 2022 11:09 AM
Common problems
• Writing unverifiable requirements
○ E.g., minimize, maximize, rapid, user-friendly, easy,
sufficient, adequate, quick
• Missing requirements
○ Requirement drivers include
Requirements Page 18
Verification
Thursday, September 22, 2022 11:09 AM
Verification
• Every requirement must be verified to ensure that the proposed
design actually satisfies the
○ requirement by
○ Examination,
○ Test,
○ Demonstration, or
○ Analysis
Requirements Page 19
What happens at SRR ?
• SRR typically occurs rather early in a program, during Phase A
(Concept and Technology Development) and before Phase B
(Preliminary Design)
Requirements Page 20
Volatility
Thursday, September 22, 2022 11:10 AM
Requirements Volatility
Requirements Volatility is the degree to which
requirements continue to change during a project,
even post-SRR
Requirements Page 21
Software requirements
Friday, October 7, 2022 9:23 AM
1. Requirements Capture
• The goal of Requirements Capture is to understand, prioritize and document what the
customer really needs and to define the system scope and boundaries.
• The following activity diagram shows the process of how to reach this goal. Two
workflows; “Develop a Vision” and “Capture Requirements” cover the requirements
capture discipline.
• UC (use case) , UI (user interface)
Structure:
► Introduction: Executive summary of the System Charter.
► Goals: Answers the question WHY the defined FR & NFR are delivered.
► Funct. Req.: A short description of what the system will do.
► Non Funct. Req.: A short description of the constraints that apply to the system as well
Requirements Page 22
► Non Funct. Req.: A short description of the constraints that apply to the system as well
as of the environment, users and other non functional issues.
This model helps the development team to formulize its understanding. It doesn’t contain any
analysis conclusions. It is an informal model that does not need to be maintained!
The Use Case Model fully specifies all functional system requirements. A Use Case describes a complete
course of interactions taking place between an initiating actor, the system and other participating actors.
It produces an observable result, having a value for the initiating or any other participating actor.
Process:
1. Find actors (start with the initiators) and describe them (Definition, Role, Responsibility)
2. For each actor find the use cases he may initiate.
3. Draw an initial use case diagram.
4. Specify goal & description for a subset of 2 (the architect performs UC selection).
5. Specify pre & post conditions for a subset of 4.
6. Specify basic flow, exceptional flows, alternate flows of 5. Use activity and sequence diagrams to
visualize your flows.
7. Rework UC-model e.g. draw several diagrams each focusing on a group of use case such as core,
utilities, services or any other classification. This grouping may be
shown with packages.
8. Structure the use case model by identifying <<extend>>, <<include>> relations or
generalizations between use cases.
Requirements Constraints
Usability Design
Reliability Interface
Performance Physical
Supportability Implementation
Requirements Page 23
2. Analysis
The goal of analysis is to find a logical solution to all Use Cases(FR). This solution is documented
in an analysis model whose static view is shown with class diagrams and whose dynamic view is
shown using sequence and communication diagrams as well as through state machine diagrams.
The requirements analysis workflow has three activities: “Architectural Analysis”, “Use Case
Analysis” and “Consolidation of the Analysis Model”. The micro process is used iteratively during
the first two activities
Requirements Page 24
2.1.2 Describe remaining classes through
· Definition describes the class in terms of what it represents.
· Role describes what the class is doing for other classes.
· Responsibility describes what the class is doing without being asked to
Requirements Page 25
2.2 Use Case analysis:
Goal: Prove that the static model (elaborated during architectural analysis) is capable of satisfying the
functional requirements. => model the dynamic system aspects.
Process:
1. Create a use case realization for each use case.
2. Supplement use case descriptions with eventually missing details required in order to offer a solution.
3. For each use case realization, draw at least one class diagram showing the classes
needed to realize the use case. Then draw at least one sequence diagram holding an
object for each of the required classes. This sets the stage for the next step.
4. Find operations for the classes involved in the use case. Do this using the following
approach:
· Create modeling mass by inventing operations for the classes. You do this by reading the class
description and deriving operation from the class’s role and responsibility.
· Draw sequence diagrams showing the required interaction, in order to satisfy the main flow as well as
the critical exceptional and alternate flows. In this process you will use operations identified in the
previous step, but you will also identify many missing operations.
· Focus again on the individual classes and identify additional missing operations.
· Model the state dependent behavior of the classes by drawing state machine diagrams. During this
process additional operations may be identified.
5. Complete class descriptions and assure that the operations fit the role and responsibility description of the
class.
Therefore:
· Collect new classes and integrate them into the global analysis model
· Merge duplicate classes describing the same concept.
· Update the use case realizations accordingly.
Requirements Page 26