Title: Improving Systems and Software Quality through RequirementsDriven Development
1Improving Systems and Software Quality through
Requirements-Driven Development
2The Systems Integration Jigsaw Puzzle
- Have you come to the end of a jigsaw puzzle only
to find there are missing pieces or pieces from
other puzzles that dont fit? - In automotive vehicles, there are many pieces to
fit together - Mechanics
- Electrics
- Electronics
- Software
- Need to ensure sub-systems fit and work together
3Rain Sensing Wiper System Design Failure
- Windshield provided by local supplier
- Incompatible with the operation range of the
sensor - No captured requirement for proper system
calibration - Cars were sent to customers with non-functioning
wiper system
- Initial diagnostics designated software as
culprit for malfunction - Mechanics couldnt test software behavior
- Components functioned normally when tested
independently - Failure mode resided at sub-system level
4Requirements-Driven Development
- Close gaps and link the product development
lifecycle - Reduce rework, delays and warranty costs improve
customer satisfaction
5Requirements Engineering Best Practices
Best in class companies
- Engineer requirements
- From the beginning of the product and system
lifecycle - Through every phase of development
- Across all disciplines of mechanical, electronic
and software - Ensure traceability across all levels of
requirements - Mature from an isolated to a collaborative
environment - Invest the same focus and rigor on engineering
requirements as in managing mechanical Bill of
Materials - Integrate Requirements Engineering closely with
Change, Product and Portfolio Management, and
Quality Assurance
6IBM and Telelogic Requirements Engineering
Solution
- Ensuring end-to-end traceability
- From ideas, requirements and feature definitions,
product/system specifications and models - To mechanical, electric/electronic and embedded
software implementation, test and maintenance
7Requirements management and traceability
- Comprehensive support for recording, structuring,
managing, and analyzing requirements and their
traceability - Requirements are persistent at all levels of
decomposition
- Can manage requirements across multiple
engineering disciplines - Software, Electronic
Mechanical - Scalable for large projects with many users
8Collaborative requirements engineering
- Requirements analysts / Systems Engineers author
requirements using rich desktop client
- Manufacturing/ QA / Suppliers review and comment
on requirements through web browser
RequirementsDatabase
9A picture paints a thousand words?
2 Functional Requirements 2.1 Power car 2.1.1
Move car 2.1.1.1 Move forwards The car shall be
able to move forwards at all speeds from 0 to 200
kilometers per hour on standard flat roads with
winds of 0 kilometers per hour, with 180
BHP. 2.1.1.2 Move backwards The car shall be able
to move backwards to a maximum speed of 20
Kilometers per hour on standard flat roads with
winds of 0 kilometers per hour, with 180
BHP. 2.1.2 Accelerate car The car shall be able
to accelerate from 0 to 100 Kilometers per hour
in 10 seconds on standard flat roads with winds
of 0 kilometers per hour. The car shall be able
to accelerate from 100 to 150 kilometers per hour
at a rate of 5 kilometers per second on standard
flat roads with winds of 0 kilometers per
hour. The car shall be able to accelerate from
150 to 200 kilometers per hour at a rate of 3
kilometers per second on standard flat roads with
winds of 0 kilometers per hour. 2.2 Control
car 2.2.1 Switch on car The car shall be able to
discriminate which authorized people shall be
able to switch on and operate the car. 2.2.2
Control speed The car shall have a foot mechanism
to control the speed of the car. The speed
control shall be infinitely variable from zero to
maximum speed. The speed of the car shall be
controllable by automatic means. 2.2.3 Brake
car The car shall be able to stop from 10
kilometers per hour to 0 kph in 2 seconds. The
car shall be able to stop from 30 kilometers per
hour to 0 kph in 6 seconds. The car shall be able
to stop from 100 kilometers per hour to 0 kph in
30 seconds. The car shall be able to stop from
200 kilometers per hour to 0 kph in 45 seconds.
10A picture paints a thousand words?
2 Functional Requirements 2.1 Power car 2.1.1
Move car 2.1.1.1 Move forwards The car shall be
able to move forwards at all speeds from 0 to 200
kilometers per hour on standard flat roads with
winds of 0 kilometers per hour, with 180
BHP. 2.1.1.2 Move backwards The car shall be able
to move backwards to a maximum speed of 20
Kilometers per hour on standard flat roads with
winds of 0 kilometers per hour, with 180
BHP. 2.1.2 Accelerate car The car shall be able
to accelerate from 0 to 100 Kilometers per hour
in 10 seconds on standard flat roads with winds
of 0 kilometers per hour. The car shall be able
to accelerate from 100 to 150 kilometers per hour
at a rate of 5 kilometers per second on standard
flat roads with winds of 0 kilometers per
hour. The car shall be able to accelerate from
150 to 200 kilometers per hour at a rate of 3
kilometers per second on standard flat roads with
winds of 0 kilometers per hour. 2.2 Control
car 2.2.1 Switch on car The car shall be able to
discriminate which authorized people shall be
able to switch on and operate the car. 2.2.2
Control speed The car shall have a foot mechanism
to control the speed of the car. The speed
control shall be infinitely variable from zero to
maximum speed. The speed of the car shall be
controllable by automatic means. 2.2.3 Brake
car The car shall be able to stop from 10
kilometers per hour to 0 kph in 2 seconds. The
car shall be able to stop from 30 kilometers per
hour to 0 kph in 6 seconds. The car shall be able
to stop from 100 kilometers per hour to 0 kph in
30 seconds. The car shall be able to stop from
200 kilometers per hour to 0 kph in 45 seconds.
11or hides a thousand requirements?
12or hides a thousand requirements?
The swing shall be able to support a weight of
100lbs The swing should be large enough to carry
2 small children The swing shall never be lower
than 0.5 meters from the ground The swing shall
be not be able to swing through more than 180
degrees The swing rope shall have an elasticity
of. The swing shall comply with the following
safety standards.. The swing shall The swing
shall The swing shall The swing shall
13The systems engineering club sandwich
14Simulate not build and break
- You dont build a complete vehicle before testing
it meets aerodynamic requirements - Why wait until youve written software before
verifying your design is going to meet the
requirements? - Finding and fixing problems in the requirements
and design phases is orders of magnitude cheaper
15Model simulation for requirements validation
Expected Requirement Scenario
- Use requirement scenarios to validate the design
- Simulate to verify that model is correct
- Avoid errors
- Reduce costly rework
- Increase quality
- Virtual prototype / Panel graphics support
- Ideal communications aid for design reviews and
to share information.
Simulation Results
16Linking requirements to design models
- Traceability helps prove conformance and
compliance - Easily check for
- Requirements not satisfied by the design
- Design elements with no linked requirements
gold plating - Fast and complete impact analysis
- Assess full impact of changes BEFORE they are
made - Ensure approved changes are fully implemented
17End to end traceability management and reporting
- Focus on an individual requirement and its
traceability hierarchy - Produce graphical traceability reports for
auditors and management - See only the project information relevant for
your role
- Decompose requirements system reqts, mechanical
/electrical/ electronic/ software subsystem
reqts, etc. - Create traceability by drag-and-drop linking
- View dynamic end-to-end traceability reports
18Impact analysis
If documents are linked
shows up as a warning flag to this user here.
a change by this user here
19Summary
- Analyze impact of requirements changes
- Maintain traceability for conformance and
compliance - Link requirements and design
- Simulate not build and break
- Use models and text
- Collaborate across disciplines
- Close gaps and link the product development
lifecycle - Reduce rework, delays and warranty costs improve
customer satisfaction
20For more information
- Visit us at Stand 12
- Visit our website www.telelogic.com