Requirements Volatility Topic: Using Anchor Point Milestones February 14, 2007 Tom Schroeder

advertisement
Requirements Volatility Topic:
Using Anchor Point Milestones
February 14, 2007
Tom Schroeder
FCS MGV Software Engineering Manager
BAE Systems, Ground Systems
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
1
Purpose
Frame a discussion about:
 What are the major software-intensive systems risks related to
Requirements Volatility with respect to experiences using Anchor Point
Milestones?
 What are the current best practices for addressing these risks?
 What are the top-priority research topics for addressing the risks?
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
2
Outline






Perspective - Company Background & Projects
Software Build 1 Lesson in Requirements
Idealized Software Build Life Cycle
Extending the Software Life Cycle to Systems and SOS Levels
Hard Questions to Answer about LCO’s and LCA’s
Sources of Requirements Volatility
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
3
Ground Systems – A Summary

Protected Fighting Platforms for Today’s Warfighter as well as
the Battlefield of Tomorrow
• Predominant Supplier to the U.S. Army Heavy Brigades with
•
•

Bradley, HERCULES, Paladin, M113
Mine-Protected Wheeled Vehicles
FCS Manned Ground Vehicles and Armed Robotic Vehicle
Key Technologies
• Advanced Protection and Mobility Solutions for Soldiers, Manned
•
•

Vehicles and Robots
Outstanding Program Management and Experienced Workforce
3,250 employees, including more than 600 technologists
World-Class Development Processes
• CMMI Level 5 Software and Systems Engineering Process
• Physics-Based Models & Real-Time Simulation Capabilities
• Rapid Prototyping of Complex Systems
 Lean, Cost-effective Production Facilities
GS is a modern, efficient, full-spectrum developer, integrator and supplier
of survivable, lethal ground combat platforms and advanced technologies
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
4
FCS Brigade Combat Team (BCT)
18 Integrated Systems + 1 Network + 1 Soldier
Infantry Carrier
Vehicle (ICV)
Manned Systems
Unmanned Aerial Vehicles
Class IV
Command and
Control Vehicle (C2V)
Class II
Class I
Class III
Mounted Combat
System (MCS)
Unattended Munitions
Unattended
Ground
Sensors
NLOS LS
Intelligent
Munitions
Systems
Reconnaissance and
Surveillance Vehicle (RSV)
Unmanned Ground Vehicles
Non-Line of Sight
Cannon (NLOS-C)
Non-Line of Sight Mortar (NLOS-M)
Small
(Manpackable) UGV
ARV Aslt
ARV RSTA
FCS Recovery and
Maintenance Vehicle
(FRMV)
Armed Robotic
Vehicle (ARV)
Medical Vehicle
Treatment (MV-T)
Medical Vehicle
Evacuation (MV-E)
ARV-A (L)
MULE
(Countermine)
MULE
(Transport)
FCS is about the 21st Century Soldier
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
Approved for Public Release, Distribution Unlimited, TACOM 20 SEP 2006, case 06-208.
5
Software Build 1 Objectives
 Build initial prototype vehicles for one vehicle type (“variant”), the NonLine of Sight Cannon (NLOS-C)
 Develop “threshold path” common components and software for a
common chassis.
• Hybrid Electric Drive Powertrain, Driving functions, Vehicle Management
• Power Distribution, Remote Interface Units, Servo Control Units
• Embedded Training
 Develop “threshold path” mission equipment and software for the
weapon and mission control functions
 Develop low-cost software and hardware “surrogates” to stand-in for
functionality that is not yet available, such as the sustainment system,
the displays and user interface system, etc.
 Develop and improve processes for software development and
integration
 Reduce risk for objective vehicles and software development
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
6
A Software Build 1 Lesson in Requirements


Systems Engineering selected a waterfall life cycle. Software Engineering selected an
iterative life cycle.
Software Engineering introduced a new event, Requirements Baseline Review (RBR) as a
handoff to receive the requirements allocated to Software from Systems & Subsystems.
RBR was not in the IMP, so it lacked completion criteria.
System /
Subsystem
Activity
Sys/Subsys Requirements Focus
Sys/Subsys Design Focus
DR1 (SFR)
DR2 (PDR)
RBR
Software Activity
Inception (Rqmts Focus)
Elaboration (Design Focus)
LCO
LCA
 At RBR, Software evaluated allocated Subsystem requirements. Quality issues resulted in
an intense three-month systems/software “RBR Recovery” effort, but LCO wasn’t allowed
to slip. Requirements rework was finally resolved during the first half of LCA, but it pushed
the LCA milestone out, reducing time for construction iterations.
Software Activity
RBR Recovery
LCO / DR2 Issues
LCO
Inception (Rqmts Focus)
During this period most
effort was needed to
develop SRSs and IRSs
February 14, 2007
LCA
Elaboration (Design Focus)
During this period, time for software
architecture work was too short,
resulting in an LCA slip
© 2007 BAE Systems Land & Armaments L.P.
LCA
Completion
7
Build 1 Common SW Schedule
2005
6
7
8
9
2006
10
11
12
1
2
3
4
5
6
7
2007
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
SW Build 1 (Plan)
RBR
LCO
ER1
LCA
LCA
Start
LCO
ER2
ER3/TRR
B1 Common
SW Integration
Complete
ER3/TRR
B1 Common
SW Integration
Complete
LCA
Finish
SW Build 1 (Adjusted)
RBR
ER1
Develop LCA Required Documents
ER2
Detail External Interfaces
Develop SI Software Designs
Update MGV SW Architecture
Refresh LCA Design


An adjustment of iteration
durations was preferable to
inserting an iteration.
Turns out that systems and
subsystems engineering has
provided every subsequent
software iteration with necessary
updates, aka beneficial
“Requirements Volatility.”
February 14, 2007
Refresh LCA Documents
ER1 Software
Support Common Integ
Refresh ER1 Design
Refresh ER1 Documents
ER2 Software
Support Common Integ
© 2007 BAE Systems Land & Armaments L.P.
Refresh ER2 Design
Refresh ER2 Docs
ER3 Software
Support Common Integration
8
Build 1 LCO and LCA Statistics



LCO October 3-21, 2005
Participation by 68 Reviewers
• 10 IPT Areas Reviewed
• 55 Artifacts Reviewed
• 2059 Comments Received
60% of All Comments from SRS/IRS
• Most HIGH priority comments were



LCA Stage 1 February 16-27, 2006
LCA Stage 2 March 27–April 21, 2006
Participation by 83 Reviewers
• 11 IPT Areas Reviewed
• 68 Artifacts Reviewed
• 2499 Comments Received
submitted against the SRS/IRS
450
Undefined
800
400
Low
Medium
700
350
High
50
0
0
SRS
IDD
February 14, 2007
IRS
FR
SDD
SIP
ST
STP
Pr
ot
o
M
O
C
SA
D
Fe
as
i
TS
/
CO
P
100
SR
S
100
SI
P
Pr
es
en
ta
tio
n
150
200
D
200
300
isc
400
D
250
IR
S
500
bi
lity
300
Re
us
e
600
High
© 2007 BAE Systems Land & Armaments L.P.
Medium
Low
None
Arch
Design
Model
SADD
Positive Feedback
SDS
Common NLOS-C
SIP
SIP
Other
(blank)
9
A Software Build 1 Lesson in Requirements
 Why was LCO held steady?
• Award Fee tied to “successful LCO”
• Needed to hold schedule for some Subsystem software teams
• Systems/subsystems engineering functions would need support future
software iterations, although not explicitly in their plans to do so
 Why was LCA moved 6 weeks instead of adding a new cycle?
• Award Fee tied to “successful LCA”
• First part of LCA period dedicated to addressing requirements issue work
•
•
plans resulting from both RBR and LCO
Needed time to make software design progress to meet LCA criteria, and
customer willing to grant extension provided time made up in construction
iterations
An iteration no-go decision was not a viable option for the software teams
 Technologies in use were relatively mature, risks were manageable, and
vehicle schedules too important to move
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
10
Idealized Software Build Life Cycle
Start
DI 1.1
SW
Year 1
Year 2
SIT
SwLCO
DI 1.2
Inception
Phase
SW
SIT
DI 1.3
SW
SIT
SwLCA
DI 1.4
DI b.c
IOC
LCA
LCO
SI
SIT
SW
SwLCA
SwLCO
TRR
Acronyms and Abbreviations
Development Increment, Build b, Increment c
Initial Operational Capability
Life Cycle Architecture Milestone
Life Cycle Objectives Milestone
Software Item
Software Subsys/Sys Integration & Test
Software Engineering (incl. SI-Level Int & Test)
Software LCA
Software LCO
Test Readiness Review (SI Level)
February 14, 2007
Elaboration
Phase
SW
SIT
DI 1.5
SW
SIT
DI 1.6
SW
Construction
Phase
SIT
TRR
DI 1.7
© 2007 BAE Systems Land & Armaments L.P.
IOC
SW
SIT
DI 1.8
SW
SIT
Transition
Phase
11
Idealized Systems and Software Integrated Build Life Cycle
Start
DI 2.1
S/SS
Year 1
SW
SwLCO
DI 2.2 S/SS SW
Consider introduction
of Systems LCO and
DI 2.3 S/SS
LCA events.
Software support
would be a subset of
DI 2.4
Systems Engineering
total scope.
SIT
SW
S/SS
Acronyms and Abbreviations
Development Increment, Build b, Increment c
Initial Operational Capability
Life Cycle Architecture Milestone
Life Cycle Objectives Milestone
Systems/Subsystems (IPT) Engineering
Software Item
Software Subsys/Sys Integration & Test
Software Engineering (incl. SI-Level Int & Test)
Software LCA
Software LCO
Systems/Subsystems LCA
Systems/Subsystems LCO
Test Readiness Review (SI Level)
Inception
Phase
SIT
SyLCA
DI 2.5
February 14, 2007
By adding Systems & Subsystems
requirements and design engineering
stages synchronized with Software
development increments, upstream
work products can be worked
iteratively to support Software.
SIT
SyLCO
DI b.c
IOC
LCA
LCO
S/SS
SI
SIT
SW
SwLCA
SwLCO
SyLCA
SyLCO
TRR
Year 2
SwLCA
SW
SIT
Software can provide valuable
implementation feedback to Systems
& Subsystems teams, with preplanned learning adjustments.
S/SS
SW
SIT
S/SS
SW
DI 2.6
Construction
Phase
SIT
TRR
DI 2.7
S/SS
DI 2.8
© 2007 BAE Systems Land & Armaments L.P.
Elaboration
Phase
IOC
SW
SIT
S/SS
SW
SIT
Transition
Phase
12
Systems Lifecycle
System
System
Rqmts
Design
February 14, 2007
Subsystem
Rqmts
Subsystem
Design
Software
Rqmts
Software
Design
© 2007 BAE Systems Land & Armaments L.P.
Software
Code!
13
Systems Lifecycle
System
Rqmts
February 14, 2007
System
Design
Subsystem
Rqmts
Subsystem
Design
Software
Rqmts
© 2007 BAE Systems Land & Armaments L.P.
Software
Design
Software
Code!
14
Systems Lifecycle
Requirements are “realized” through design processes to become the next tier’s requirements which in turn are “realized” …
System
Rqmts
PIDS
SE AL0.2
Model
System
Design
Subsystem
Rqmts
SSDD
CIDS
ICD
‘L3’ Rqmts
in DOORS
SE AL1
UML Model
Subsystem
Design
SSDD
‘L4’ Rqmts
in DOORS
SE AL2
UML Model
February 14, 2007
SRS
IRS
Software
Design
SDD
IDD
Sw Integ
Threads
SW UML
Model
Work Products
= Influences
Software
Rqmts
SW Item
Design
Model
SADD
DDMs
SWARCH
Notes
© 2007 BAE Systems Land & Armaments L.P.
DDMs
Software
Code!
to the world
of integration
Code
SVD
What is the
turn-around
time to
change
requirement
s with this
process?
SDS
15
Workflow Integration
Construction Iteration ER1
(~4 months)
Construction Iteration ER2
(~4 months)
Construction Iteration ER3
(~4 months)
SW Mgmt & Env
SW Rqmts
SW Design
SW C&UT
SW I&T
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
16
Workflow Integration
Construction Iteration ER1
(~4 months)
Construction Iteration ER2
(~4 months)
Construction Iteration ER3
(~4 months)
SW Mgmt & Env
SW Rqmts
SW Design
SW C&UT
SW I&T
CMN SW I&T Env
CMN SW Int
CMN SW Test
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
17
Workflow Integration
Construction Iteration ER1
(~4 months)
Construction Iteration ER2
(~4 months)
Construction Iteration ER3
(~4 months)
SW Mgmt & Env
SW Rqmts
SW Design
SW C&UT
SW I&T
CMN SW I&T Env
CMN SW Int
CMN SW Test
VNT SW I&T Env
VNT SW Int
VNT SW Test
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
18
Workflow Integration
Construction Iteration ER1
(~4 months)
SW Mgmt & Env
Construction Iteration ER2
(~4 months)
SW Mgmt & Env
Improvement
SW Rqmts
SW Design
nt
SW I&T
Improvement
T Env
CMN SW I&T Env
Improvement
MN SW Int
CMN SW Int
Improvement
CMN SW Test
VNT SW I&T Env
VNT SW Int
VNT SW Test
February 14, 2007
VNT SW I&T Env
Improvement
Improvement
VNT SW Test
© 2007 BAE Systems Land & Armaments L.P.
Improvement
VNT SW I&T Env
Improvement
VNT SW Int
Improvement
Improvement
CMN SW Test
Improvement
CMN SW
Improvement
CMN SW Int
Improvement
CMN SW Test
Improvement
SW I&T
Improvement
CMN SW I&T Env
Improvement
Improv
SW C&UT
Improvement
SW I&T
Improvement
Improvement
SW Design
Improvement
SW C&UT
Improvement
Improvement
SW Rqmts
Improvement
SW Design
Improvement
SW C&UT
Improvement
SW Mgmt & Env
Improvement
SW Rqmts
Improvement
Construction Iteration ER3
(~4 months)
Improvement
Improvement
Improvement
VNT SW Int
Im
VNT SW Test
19
Workflow Integration
Construction Iteration ER2
(~4 months)
SW Mgmt & Env
VNT SW Int
VNT SW Test
February 14, 2007
SW Design
VNT SW I&T Env
CMN SW Int
VNT SW Int
VNT SW Test
© 2007 BAE Systems Land & Armaments L.P.
CMN SW Test
SW I&T
CMN SW
VNT SW I&T Env
Improvement
Improvement
CMN SW I&T Env
SW C&UT
Improvement
Improvement
Improvement
Improvement
Improvement
CMN SW Test
SW I&T
Improvement
VNT SW I&T Env
SW C&UT
CMN SW Int
Improvement
CMN SW Test
SW Design
CMN SW I&T Env
Improvement
MN SW Int
SW I&T
Improvement
T Env
SW C&UT
Improvement
Improvement
SW Design
SW Rqmts
Improvement
SW Rqmts
Improvement
Improvement
SW Rqmts
SW Mgmt & Env
Improvement
SW Mgmt & Env
Construction Iteration ER3
(~4 months)
Improvement
Construction Iteration ER1
(~4 months)
VNT SW Int
VNT SW Test
20
Workflow Integration
Construction Iteration ER1
(~4 months)
Construction Iteration ER2
(~4 months)
Construction Iteration ER3
(~4 months)
SW Mgmt & Env
SW Rqmts
SW Design
SW C&UT
SW I&T
CMN SW I&T Env
CMN SW Int
CMN SW Test
VNT SW I&T Env
VNT SW Int
VNT SW Test
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
21
Workflow Integration
Construction Iteration ER1
(~4 months)
Construction Iteration ER2
(~4 months)
Construction Iteration ER3
(~4 months)
SSys AL2 Rq
SSys Design
SSys Spec/Alloc
SW Mgmt & Env
SW Rqmts
SW Design
SW C&UT
SW I&T
CMN SW I&T Env
CMN SW Int
CMN SW Test
VNT SW I&T Env
VNT SW Int
VNT SW Test
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
22
Workflow Integration
Construction Iteration ER1
(~4 months)
Construction Iteration ER2
(~4 months)
Construction Iteration ER3
(~4 months)
Sys PIDS/AL1 Rq
Sys Design
Sys Spec/Alloc
SSys AL2 Rq
SSys Design
SSys Spec/Alloc
SW Mgmt & Env
SW Rqmts
SW Design
SW C&UT
SW I&T
CMN SW I&T Env
CMN SW Int
CMN SW Test
VNT SW I&T Env
VNT SW Int
VNT SW Test
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
23
Workflow Integration
Construction Iteration ER1
(~4 months)
Construction Iteration ER2
(~4 months)
Sys PIDS/AL1 Rq
Sys PIDS/AL1 Rq
Sys Design
Sys PIDS/AL1 Rq
Sys Design
Sys Spec/Alloc
Sys Design
Sys Spec/Alloc
SSys AL2 Rq
Sys Spec/Alloc
SSys AL2 Rq
SSys Design
pec/Alloc
SW Mgmt & Env
SSys AL2 Rq
SSys Design
SSys Spec/Alloc
SSys Des
SSys Spec/Alloc
SW Mgmt & Env
SW Rqmts
SW Rqmts
SW Design
SW C&UT
SW Design
SW C&UT
SW I&T
T Env
SSy
SW Mgmt & Env
SW Rqmts
SW Design
MN SW Int
SW C&UT
SW I&T
CMN SW I&T Env
CMN SW Test
CMN SW Test
VNT SW I&T Env
VNT SW Int
VNT SW Test
CMN SW
CMN SW Int
CMN SW Test
VNT SW I&T Env
SW I&T
CMN SW I&T Env
CMN SW Int
February 14, 2007
Construction Iteration ER3
(~4 months)
VNT SW I&T Env
VNT SW Int
VNT SW Test
© 2007 BAE Systems Land & Armaments L.P.
VNT SW Int
VNT SW Test
24
Idealized System of Systems Build Life Cycle
Start
DI 2.1
SOS
Year 1
S/SS
SW
SOSLCO
DI 2.2
SIT
SyLCO
Year 2
SOSIT
SOS
S/SS
SW
SIT
SOSIT
DI 2.3
SOS
S/SS
SW
SIT
DI 2.4
DI b.c
IOC
LCA
LCO
S/SS
SI
SIT
SW
SOS
SOSIOC
SOSIT
SOSLCA
SOSLCO
SwLCA
SwLCO
SyLCA
SyLCO
TRR
SOS
Acronyms and Abbreviations
Development Increment, Build b, Increment c
Initial Operational Capability
Life Cycle Architecture Milestone
Life Cycle Objectives Milestone
Systems/Subsystems (IPT) Engineering
Software Item
Software Subsys/Sys Integration & Test
Software Engineering (incl. SI-Level Int & Test)
Systems of Systems Engineering
SOS Initial Operational Capability
SOS Software Integration & Test
System of Systems LCA
System of Systems LCO
Software LCA
Software LCO
Systems/Subsystems LCA
Systems/Subsystems LCO
Test Readiness Review (SI Level)
February 14, 2007
Very difficult to achieve!
SwLCO
SOSLCA
DI 2.5
Year 3
SyLCA
SOSIT
SwLCA
Elaboration
Phase
S/SS
SW
SIT
SOSIT
SOS
S/SS
SW
SIT
SOSIT
DI 2.6
SOS
S/SS
SW
SIT
Construction
Phase
SOSIT
TRR
DI 2.7
Inception
Phase
IOC
SOSIOC
SOS
S/SS
SW
SIT
SOSIT
DI 2.8
SOS
S/SS
SW
SIT
© 2007 BAE Systems Land & Armaments L.P.
SOSIT
Transition
Phase
25
Problems with SOS Staging

Synchronizing development to similar iterations across many organizations,
each with its own development processes, is extremely difficult
• Unsynchronized workflows increase the number “surprise” requirements changes

Greater numbers of participants tend to stretch out the iterations to make the
same amount of progress.
• Takes time to discover who to coordinate with, and if they have tasking to do so
• Organizations change, people move around, responsibilities shift, POC’s change
• Potential O(2) effect with more interactions and interfaces

Interface and scope negotiation across many associate teams adds activities
and stretches iterations.
• To make progress, teams are forced to make unilateral decisions
• From SOS perspective, may be sub-optimal or not even viable system-wide



Coordinating compatible requirements to achieve viable functioning threads
across associate contractors for small increments is difficult.
Incremental SOS use of tactical software can be prohibitively expensive in
terms of numbers of computers, simulators, emulators, and plant models
needed prior to long-lead time dedicated hardware being available.
Intellectual property protection, licensing, and legal involvement increases.
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
26
Hard Questions to Answer about LCO’s and LCA’s
What level of completion of Systems Engineering work products is needed for
Software to have a successful LCO?

A typical answer from Software: All requirements allocated to software need to
be specified. Reasons:
• If Software doesn’t keep up the pressure on Systems Engineering, the Requirements
•

provided to Software will be incomplete. LCO could fail.
If Software doesn’t have a complete set of requirements, Software will be unable to
complete SRS trace tables to parent requirements.
Obvious problem of handoff adequacy and criteria definition
• Software can try to create a risk that all necessary requirements will not be available
•
•
 “Cry Wolf” approach sure to fail at the Risk Review Board
Systems could create a risk that all the Systems work products will not be available
for software
 “Hit Me” approach never seems to emerge, either
What should the completeness and completion criteria be?
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
27
Hard Questions to Answer about LCO’s and LCA’s
What level of completion of Systems Engineering work products is needed for
Software to have a successful LCO?

A typical answer from Systems: All requirements allocated to software will be
specified, with traceability to upper-level models. Other documents will be made
available as reference (work in progress) leading up to System PDR:
• System Architecture which may include applicable DDM's, such as Vehicle
Electronics Architecture, System/Subsystem Schematics, Specialty Engineering
Reports (Security, HFE/MANPRINT, Safety, Maintainability), Sustainment and
Training Design Concepts
Thread based performance analyses
•
• Current Version of Common Subsystem and Variant Level S/SDD's
• Vehicle External ICD’s - Interfaces to all C4ISR, Sustainment, and Training supplied
subsystems.
• Vehicle Internal ICD’s – Interfaces to MGV Subsystems
• HW Configuration Item Specifications (HW CIDS - as available)
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
28
Hard Questions to Answer about LCO’s and LCA’s
What level of completion of Software Engineering work products is needed
for Software to have a successful LCO/LCA?
 To pass the LCO/LCA, what percent of the software requirements need
to be documented? How is that measured?
• What is the answer if there are a lot of requirements but the risks are
relatively low?
• What is the answer if there exist some risks, but feasibility analysis indicates
they are manageable.
 At what point should the requirements be baselined?
• Defines what to measure volatility against
• Drives how much time is spent in various SCCB’s reviewing requirements
changes during development iterations
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
29
Requirements Problems Specific to Software Intensive Systems
 Lines between systems engineering and software engineering activities
and work products are blurred
• System/Subsystem/Component Engineers can over-specify requirements,
•
resulting in limited or no opportunities for software engineers to optimize the
technical solution
Software Engineers conversely may make decisions on what should
properly be the purview of systems requirements, and may result in an
incomplete system solution
 What are proper requirement sets for various domains and levels is
often open to interpretation
• Especially when multiple organizations and cultures must interact
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
30
Volatility Concerns from Using UML for Requirements

UML sequence diagrams created by Systems Engineering to develop interfaces
and logical behavior requirements pose challenges
• A sequence represents only one path through a use case
• A full set of alternative use cases cannot be easily expressed in this form

Textual requirements in a DBMS serve as the “official” allocation of
requirements to software
• Some problems translating between use case steps and “shalls”
• Complete alternative use case specification always a problem
 In one case, factoring out alternative use cases into a use case or DDM titled
“Handle Operational Problem” is a concern.
– The Mother of all use cases/DDM’s.

Software teams are strongly encouraged to use full-up text-based use cases to
specify behavior
• Emphasis on handling all conditions and alternative/exception behavior
•
•
•
 Can be major feasibility driver!
Non-behavioral requirements sections of SRS must be completed
Everyone has a requirement to follow Software Design Standards (Architecture
Decisions) to address horizontal consistency.
UML is used for software design and detailed interface design
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
31
Measuring Requirements Volatility
 Mechanics of counting requirements changes
• Add requirement
• Delete requirement
• Modify requirement
 Modify can also be achieved by a delete followed by an add
 What is the requirements count measurement worth? What else could
be measured with more value?
• Consider statistics of implementation risk exposure, or estimated cost to
•
•
implement considering each requirement
Other measures: have observed ratios of SLOC/Requirements Counts from
9 to 300 for different SI’s on BAE Systems programs.
Have seen great volatility in requirements measurements caused by simply
revising same requirements to be more understandable
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
32
Source of Requirements Volatility: Requirements vs. Design
Two approaches, sometimes conflicting:
 Requirements are essential attributes of a system to meet the stakeholders
needs
• The requirements should represent an aspect of essential system behavior
• Similar systems should have similar levels of specification
• Avoid overconstraining the specification

Requirements describe whatever the stakeholders want
• A requirement can be specified at any level of the system
• A requirement for one system might be a design choice for a similar system,
depending on who the stakeholders are
Underlying assumption:
 The designer for a given system scope is granted authority to select and
optimize design elements to meet the requirements
 This requires negotiation and trust between the stakeholders
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
33
Sources of Requirements Volatility

Actors and Goals
• All actors were not considered
• All goals/subgoals of the actors and system were not considered

Stakeholders and Interests
• All stakeholders’ interests were not considered when the system was specified
 The system must enforce or protect these interests
 Frequent cause of requirements changes

Architecture-derived requirements
• Aspects of the selected architecture that must be specified for correct operation and
•

to meet quality attributes
Can be a strong driver of lower-level requirements
General causes of change
• A stimulus or condition that the system needs to respond to needs to be changed
• The system response to a stimulus or condition needs to change
• An architectural decision or constraint causes a change
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
34
Sources of Requirements Volatility
 The requirement was not obvious, unknown, or sometimes even
unknowable at the time of specification
 Sufficient resources to complete the baseline work were not available
 All aspects of the requirements effort were not performed
 Without feedback, the systems/software analyst polishes the
requirements until they are perfect (this can go on forever)
 Emergent behavior not predictable
 Changes in forces driving the market, threat, technology, needs
 Architectural and system quality attributes potentially drive foundational
changes throughout the system
 Middleware layers that are not transparent to functionality change
 COTS products that bring along their own set of requirements and
constraints
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
35
Some Mechanisms for Coping with Requirements Changes
 Build an architecture that is specifically designed to accommodate
changes within specified limits
•
•
•
•
Product line architecture approach
Extensible design patterns
Will cost more up front, payoff comes later
Cost/benefits analysis and estimation modeling needed to justify
 Prioritize requirements implementation as dependent variable
• SAIV, CAIV
• Hard to say no, but must make decisions
• Potential research areas: decision analysis approaches, strategies, toolsets,
decisions with uncertainty, decision-maker utility functions for consistency
and attitude towards risk
 Reserve budget (cost/schedule) for requirements changes as a function
of project parameters. How should this be calculated?
February 14, 2007
© 2007 BAE Systems Land & Armaments L.P.
36
Download