®
IBM Software Group
© 2011 IBM Corporation
Model Based Testing using Rhapsody
Presented BySuneel SantharamSenior Product Consultant
IBM Software Group | Rational softwareIBM Software Group | Rational software
Development Process is Evolving…
t1960
1970
1980
1990
2000
2010
ASM
C, C++, J
MDD
MBT
IBM Software Group | Rational softwareIBM Software Group | Rational software
3
Traditional testing methodologies are insufficient80% of development costs are spent identifying and fixing defects
$80/defect * $240/defect* $960/defect* $7,600/defect*
Requirements Phase Development phase Released Product QA/Testing phase*Source: 2008 GBS Industry standard study
Defect cost derived in assuming it takes 8 hrs to find, fix and repair a defect when found in code and unit test. Defect FFR cost for other phases calculated by using the multiplier on a blended rate of $80/hr
HW/SW integrationTest
InducedErrors
Development OperationIntegration
Repair
CostDefects
Introduced
Defects
Found
IBM Software Group | Rational softwareIBM Software Group | Rational software
4
Why using Model-Based Development and Test?
Model-based specifications areExecutable
– early validation and verification of the designs against requirements
Visual
– improved maintainability and communication
Model-driven TestingEnables early and repeated testingBugs are found early; hence easier to fix with less costEasy to cross-link requirements, model, code and test data and to
synchronize this continuously
– Required for safety standards, like ISO DIS 26262, DO-178B/C, etc.
High degree of automation possible
– Enables parallel development and test of embedded software
IBM Software Group | Rational softwareIBM Software Group | Rational software
5
IBM Rational Rhapsody TestConductor Add OnModel Based Testing with Rational Rhapsody
Visual test definition for improved collaboration
Automated test execution, monitoring and test architecture creation
Early validation of requirements during systems engineering
Automate unit and regression testing helping improve software quality
Requirementscapture & analysis
Systemsanalysis & design
Systemacceptance
(Sub-)System integration & test
Moduleintegration & test
SW design
SW implementation& unit test
Mod
el B
ased
Tes
ting
Ensure Correctness
Implementation
Model B
ased Testing
Ensure Correctness
Specification & Design
IBM Software Group | Rational softwareIBM Software Group | Rational software
6
Requirements, Design, Test Traceabililty
Key Enablers of Model Based Testing
Visualize Test Cases
Automate Testing Tasks
Design level debugging
Achieve Quality by
Design
Reporting Testing Results
& Coverage
Integrated Design & Test Environment
Automate Test Cases Generation
IBM Software Group | Rational softwareIBM Software Group | Rational software
7
Design Level Debugging
Push-Button Execution to quickly debug the model The best way to minimize defects
early! Debugging at the design level! Can execute simultaneously with
code level debugger! Host level Debugging Target based execution
Design level debugging
IBM Software Group | Rational softwareIBM Software Group | Rational software
8
Capture test cases with UML
Based on OMG’s standard UML Testing Profilie (www.omg.org)
Specify test cases visually for better communication across teams
Creating code tests cases or importing Cunit/Cpp unit tests also possible
Visualize Test Cases
Sequence Diagram Test CaseSequence Diagram Test Case Flowchart Test CasesFlowchart Test Cases Statechart Test CaseStatechart Test Case
IBM Software Group | Rational softwareIBM Software Group | Rational software
Integrated Design and Test Environment Manage test cases within Rational Rhapsody
Common Browser for design and test information Syncs information to maintain consistency between design and
test
Apply model based testing to external code Visualize interfaces in Rhapsody
Design ArtifactsDesign Artifacts
Test ArtifactsTest ArtifactsTest Execution ReportsTest Execution Reports
Integrated Design & Test Environment
IBM Software Group | Rational softwareIBM Software Group | Rational software
10
Automate Quality
Automatically create test architecture Creates a System Under Test (SUT), test components and test context
Apply model based testing to external code Code is developed outside of Rhapsody
Visualize code interfaces in Rhapsody and apply model based testing
Automatically Created Test ArchitectureAutomatically Created Test Architecture
Automate Testing Tasks
IBM Software Group | Rational softwareIBM Software Group | Rational software
11
Model Driven Test GenerationIBM Rhapsody ATG
Offers Structural / Coverage Testing Generates Test cases based on the “detailed” design
Automatically generates test cases with high coverage of the design Model coverage: Covers states, transitions, operations, event generation Code coverage: Generates all relevant combinations of inputs for MC/DC
Comments: Users can always choose to manually create test cases to address special needs Consistent with the UML Testing profile
Automate Test Cases Generation
IBM Software Group | Rational softwareIBM Software Group | Rational software
12
Design for Testability – Model Driven Test Generation
ATG (automatic test generation) offers model-driven test generation (consistent with the emerging UML testing profile)
Generates test cases with high coverage of the model
Covers states, transitions, operations, generation of events
Covers all relevant combinations of inputs for MC/DC analysis
Model and MC/DC coverage – required for DO-178B/ED12B
Identifies cases for potentially dead portions of the model
Test cases can be exported and reused (as sequence diagrams and XMI to Rational Rhapsody TestConductor Add-on/ third-party tools for execution on target)
Automate Test Cases Generation
IBM Software Group | Rational softwareIBM Software Group | Rational software
13
Requirements-driven testing
Quick definition and execution of model and requirement-aware tests Unit testing and regression testing Reuse design scenarios as test cases
Requirement change impact and analysis Know which part of the model or which tests are affected by changing requirements
Pass/fail results can be synchronized with RM tool
Requirements, Design, Test Traceabililty
IBM Software Group | Rational softwareIBM Software Group | Rational software
1414
Model Based Test Spans the Development Lifecycle
Integrated traceability from requirements to design to test cases
Manage execution of test cases and results reports using Rational Quality Manager
Mitigate project risks with continuous QA statistics
System Functional Analysis and
Architectural Design
Software Design and
Implementation
DOORS
Team Concert
Quality Manager
Rhapsody Designer for Systems Engineers
Rhapsody Developer
Team Concert
Configuration & Change Mgmt
Release Management
RequirementsDefinition &Management
Test Management
Model DrivenTesting
Requirements, Design, Test Traceabililty
IBM Software Group | Rational softwareIBM Software Group | Rational software
15
Requirements to Test Results Coverage
Automated reporting of test resultsRequirement to test coverage tableTest Coverage resultsComplete test results in the reports
Reporting Testing Results
& Coverage
IBM Software Group | Rational softwareIBM Software Group | Rational software
16
iPLONSmarter solar power solutions
What’s smart? Remote management and control
of photovoltaic systems Collection and analysis of power
consumption data
Smarter business outcomes Savings of approximately €10,000 per product
due to 25% defect reduction
Reduced development time for a new product line by 60% (five months down to two months)
How Rational enables smarter products Model driven development to accelerate reuse
of subsystems and software
Model driven testing to improve quality and reduce product development cost
“Rational Rhapsody enables our system engineers and software developers
to improve productivity, quality and communication by abstracting
complex designs graphically, automating the development
process and finding defects early.”
IBM Software Group | Rational softwareIBM Software Group | Rational software
17
EWE Group – BTC Embedded Systems AGSmarter energy metering for sustainable energy supply
What’s smart? Real time visualization of energy usage
Empowering consumers with information to help reduce their energy consumption
Enables consumers to save costs and reduce peak energy loads
Smarter business outcomes On time delivery of high quality, robust system Consumers reduced energy costs by 10% typically
EWE recognized with environmental and innovation leadership awards
How Rational enables smarter products Model-based development manages the complexity of
developing an interconnected system Model Driven Testing helps improve quality and reduce
product development costs
“Rational Rhapsody with TestConductor solution provided all the needed features,
functions and workflows to manage complexity and automate testing for on time and high quality delivery of our trio
Smart Box Meter system “
IBM Software Group | Rational softwareIBM Software Group | Rational software
18
Ensure Success with Rational
Process and methodology
• Process framework workshops
• Rational Harmony family of Best Practices and Processes
• Process training
Implementation services
• Adoption quick starts
• Deployment support
• Project architecture workshops
• Project management
• Planning support
• Escalation/risk mitigation
Training and mentoring
• Product familiarity
• Product expertise and specialization
• Technology transfer
• Adoption mentoring
• e-Learning
Technical services
• Measured Capability Improvement Framework (MCIF)
• Product optimization and customization
• Tool configuration
IBM Software Group | Rational softwareIBM Software Group | Rational software
1919
© Copyright IBM Corporation 2011. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.
Learn more at: IBM Rational software IBM Rational Software Delivery Platform Process and portfolio management Change and release management Quality management Architecture management
Rational trial downloads Leading Innovation Web site developerWorks Rational IBM Rational TV IBM Business Partners IBM Rational Case Studies