Title: Benefits of a Requirements Driven Development Approach
1Benefits of a Requirements Driven Development
Approach
2Challenges
- Product
- Product complexity is rapidly increasing
- Scope is beyond the mind of any individual
- Complex interactions require inputs from many
disciplines - Increased technology turnover - more solution
possibilities - Employee turnover drives a need to record
rationale for decisions - Competition demands
- Reduced development cycle times
- Reduced development costs - increased reuse
- Effective flowdown of the Voice of the Customer
- Customers expect
- A documented, capable, and controlled development
process (SEI, CMM) - 100 traceability and verification coverage
3Challenges
- Companies are challenged with
- Lesser Delivery times
- Strong Competition
- Paradox of Quality, cost and Time
- Conformance to standards
- DO-178B, MISRA
- A host of Telecom standards
- Quality
- Not an end stage activity
- Is to be embedded at every stage of development
- A must have to sustain in the market
4It isn't that they can't see the solution.It is
that they can't see the problem. Gilbert Keith
Chesterton, author, 1874 - 1936 AD
5Quality and Requirements
- Quality conformance to requirements
- Requirements management delivering quality
throughout the life-cycle
6The V-Model
Statement of need
Operational use
7Requirements at every level
Statement of need
Operational use
validating the product
Acceptance
Stakeholder
Requirements
test
satisfies
verifying the system
System
System
Requirements
test
satisfies
qualifying the subsystems
Subsystem
Subsystem
Requirements
test
satisfies
qualifying components
Component
Component
Requirements
test
8Requirements Driven Development
- A methodology to help companies build Products by
- Managing every requirement
- Understanding the link that each requirement has
to every other decomposed requirement - Managing the various lifecycle activities based
on requirements - Design based on requirements
- Unit/Functional/System Testing based on
requirements - Verification using either a spiral or V model as
the case may be - A requirement centric approach for the entire
lifecycle
9Requirements Driven Development
Changemanagement
Configurationmanagement
Changemanagement
Requirementsmanagement
Design
Verification
Requirementsmanagement
Design
Definition
Implementation
Definition
Implementation
Analysis
Analysis
10Requirements Driven Test
Testmanagement
Testmanagement
Changemanagement
Configurationmanagement
Changemanagement
Configurationmanagement
Requirementsmanagement
Design
Verification
Requirementsmanagement
Verification
Definition
Implementation
Definition
Analysis
Test what was asked for, not simply what was
built!
11Visibility and Re-use across the lifecycle
Reuse diagrams/models
Requirementsmanagement
Simulate and verify
Analysis
Generate final application
Design
Implementation
Traceability
Increased efficiency with role based
approach shared information familiar
applications and user interfaces
12Ingredients for Organizing Requirements
Structure
Standard
Consistency
Domain Knowledge
13Definition of Traceability
- INFORMATION TRACEABILITY
- Understanding how information at a high-level is
transformed into low-level. - Understanding how needs are satisfied and
qualified
- Principle underpinning
- Programme management
- Accountability
- Audit trails
- Risk management
- Safety management
14Example of Traceability
Keith Collyer This and the others like it should
be made consistent in appearance with the V-model
Design standards
Conforms to
Satisfies
Satisfies
Tests
Tests
Tests
Integration and Unit tests
15Steps to creating an Information Model
- An Information Modeling activity has many
considerations - Each and every user of the information
- Any and all processes impacted
- Data Elements of information (Requirements,
Plans, change requests) - Information structures and their attributes
- Needed views, reports and metrics
- Strategies for Tool integration and import/export
of data - Strategies for configuration/data management
- Ownership/User access rights
Identify
Four simple steps
Order
Relate
Create
16Identify all the different sources of information
- Everyone who creates, uses, reviews, benefits or
otherwise has a stake in the use of the
organizations Information Model - These stakeholders often include
- Users
- Customers
- The Business
- Marketing
- Regulatory Representative
- System Engineering, Design, Test,
- Corporate Quality, Support and Maintenance
- Training, Documentation, Information specialists
- Functional Support Groups
- Other processes and tools
17Order by precedence and priority
Users
Customer
The Business
Every model differs in this regard. Often the
users and customers are at the top. Other
applications have the business as the main source.
r572
18Establish the relationships
Design Modules
Marketing
Users
System Requirements Document
Business
Test Cases
Customers
Roll-out Deployment Plan
Legal/ Regulatory
Quality/ Standards
Maintenance Manual
Training/ Support Documentation
19Build your Traceability Analysis
System requirements
User requirements
Architecture design
20Benefits of Requirements Driven Development
- The status of the project is never clear until we
find weve missed project milestones - We have very little formal development process
- We have a lot of standards to map to!
- Define the data and relationships and use
requirements management disciplines to support
process improvement - Use traceability reports to show the degree of
progress from one phase to another - Use document templates to follow standards
- Pre-define project structures and reuse them for
increasing efficiency and effectiveness
21Benefits of Requirements Driven Development
- The objectives always seem to change at the worst
times - Change is very costly and time consuming for us
- Requirements management shows the impact of a
change before it is made - Understand the consequences and cost of change
- Access controls prevent change at critical times
- Change management systems support change in a
controlled way - Build a system where your customers can
participate - When change is allowed, it is immediately
accessible to the whole team,wherever they are
22Benefits of Requirements Driven Development
- We have difficulty communicating intent between
departments - We end up over-engineering our solutions which is
costly - Make requirements information readily accessible
by all so that everyone is on the same page - Give access to remote users via an
Internet/Intranet connection - Generate reports that allow easy verification
that requirements have been decomposed correctly - Obtain sign off from team members and customers
- Use traceability reports to ensure that all later
phases genuinely flow back to original needs - A quick report will show all design with no
associated requirement
23Benefits of Requirements Driven Development
- We have trouble testing against original intent
and stated need - We are never sure whether our tests are full and
complete - Our test cycles are often too long and costly
- Traceability of tests back to original user
requirements and business objectives ensures
complete testing coverage - Deriving tests directly from requirements results
in meaningful tests - Verification tables and orphan reports will show
omissions - Correct traceability from tests back to
requirements can eliminate unnecessary testing
and reduce test times - Repeated failures can be quickly spotted and
traced back to requirements for possible redesign
24Benefits of Requirements Driven Development
- Our customers often include design in the
requirements - We have difficulty organizing requirements into
smaller manageable sets - Proper data organization with different
information types, all tracing back to the users
need will help separate requirements from
suggested design - Design statements without clear associated
requirements become easy to find with proper data
organization - By using a single requirements and traceability
repository all requirements and related data can
be kept in one place without resorting to huge
documents - Sorting a filtering requirements into manageable
sets increases clear visualization and promotes
efficiency
25Summary
- Requirements based Development provides extensive
benefits to product development organizations - Requirements drive the development
- Linking provides Traceability information and
impact analysis - Changing requirements can be managed effectively
- Changes to Standards (if any) can identify effort
involved - Quality is not compromised as requirements
provide an extended interface to Compliance - Reusability is possible
26Thank you
- Team Telelogic
- NASSCOM
- v.k.kripanand_at_telelogic.com