Upload
scott-althouse
View
541
Download
1
Tags:
Embed Size (px)
Citation preview
®
IBM Software Group
© 2010 IBM Corporation
IBM Rational Rhapsody: Saving Resources with Simulations and Prototyping
Reduce the Time, Cost and Risk of Developing Profitable Products and Systems
IBM Software Group | Rational softwareIBM Software Group | Rational software
2
360 degreesurround vision
Intelligentnavigation
Hybrid and electricvehicle control
Driver assistance safety alarms
Adaptive cruise control
Emergency services, vehicle diagnostics, and GPS / location services
Fleet and trafficmanagement
systems
Smart gridhybrid / electric
vehicle recharging
Smart Products Require Innovative SystemsIncremental value is created by global interconnection across products, systems, applications and networks
System of Systems
Systems Engineering
Integration of vehicle subsystems into a
functioning automobile
Collaboration and visibility across diverse teams
and disciplines
Software-intensive
Subsystems
Predictive collisionavoidance
IBM Software Group | Rational softwareIBM Software Group | Rational software
3
Silos of people,process, and projects
Organizational BarriersGeographic Barriers
Poor communication
Language, culture, time
Process gaps resulting in
rework
Infrastructure Barriers
Weak collaboration
Poor project governance
and LOB oversight
Security of IP
Incompatible tools
Unreliable access
Lengthy on-boarding
Inflexible integration
Building a Competency in Systems is ChallengingOvercoming a history of cost overruns, schedule slips and quality issues
Poor requirements engineering = failed projects
Paper-based and manual processes hinder efficiency
Complex architecture is difficult to textually explain
Functionality is poorly distributed across components
Hardware/software integration is often late
Many organizations lack formalized practices
IBM Software Group | Rational softwareIBM Software Group | Rational software
4
Past
Modern Approaches for Describing Systems Are EvolvingTo Better Manage Complexity and Reduce Time-to-market
Moving from manual methods to a model-driven approach
Specifications
Interface requirements
System design
Analysis & trade-off
Test plans
Future
UserUser
AdminAdmin AccessPointAccessPoint
CameraCamera
Security System
Uc3ConfigureSecuritySystem
Uc2Control Exit
Uc1Control Entry
readSecurityCard
User
validateSecurityCard
[CardStatus Valid][CardStatus Valid]
scanBiometricData
User [else][else]
authenticateBiometricData
[else]
flagBiometricScanFailure
[else]
[else][else]
[else]
flagSecurityCardFailure
[else]
[else][else]
[BiometricData Authenticated]
logEntryData
[BiometricData Authenticated]
[BsFailCount==3]
disableUserAccount
Admin
[BsFailCount==3]
[ScFailCount==3][ScFailCount==3]
displayCardStatus
[Timeout BiometricScan][Timeout BiometricScan]
displayAuthenticationStatus
logAccountData
alarm
unlockAccesspoint
«MessageAction»
AccessPoint
lockAccesspoint
«MessageAction»
AccessPoint [Timeout Unlocked][Timeout Unlocked]resetAlarm
Admin
[else][else]
takePicture
«MessageAction»
Camera
[First Request][First Request]
User CameraAccessPointUc_Uc1ControlEntry
message_0()
readSecurityCard()
message_1()
validateSecurityCard(CardStatus)
displayCardStatus(CardStatus)
message_2()
scanBiometricData()
authenticateBiometricData(AuthenticationStatus)
displayAuthenticationStatus(AuthenticationStatus)
logEntryData()
message_3()
message_4()
message_5()
message_6()
message_0()
readSecurityCard()
message_1()
validateSecurityCard(CardStatus)
displayCardStatus(CardStatus)
message_2()
scanBiometricData()
authenticateBiometricData(AuthenticationStatus)
displayAuthenticationStatus(AuthenticationStatus)
logEntryData()
message_3()
message_4()
message_5()
message_6()
Uc1ControlEntryCtrl
WaitForEntryRequest
UnlockingAndLockingAccessPoint
reqTakeSnapshot to pCamera
reqReadSecurityCard/readSecurityCard();
reqProcessAlert("User Access Disabled") to pAdmin
ProcessingSecurityCardData
Fail3Times
ProcessingBiometricData
Failed3TimesBsTimeoutAuthenticated
[CardStatus=="Valid"]
A
evAccessPointLocked
A
/disableUserAccount();logAccountData();
A
WaitForResetAlarm
reqResetAlarm/resetAlarm();
reqReadSecurityCard/readSecurityCard();
[CardStatus=="Valid"]
evAccessPointLocked
/disableUserAccount();logAccountData();
reqResetAlarm/resetAlarm();
IBM Software Group | Rational softwareIBM Software Group | Rational software
5
• Model Based System Engineering Project (MBSE)
• Close collaboration with customers• Facilitated workshops based around
prioritized Use Case Analysis• Issues resolved within days/weeks
• Traditional ( Textual Requirements )• Regular customer design reviews• Design studies main source of issue
resolution• Issues resolved within Weeks/Months• Several Design issues remained at
“Design Chill”
The solution in practice – real world results
IBM Software Group | Rational softwareIBM Software Group | Rational software
6
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
7
Why use Model-Based Simulation 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
8
Model Based Systems Engineering (MBSE):
A standards-based practice for the development of complex systems
across the mechanical, electronic and software disciplines
Rational Solutions for Systems and Software Engineering Visually refine requirements into a robust system using Rational Rhapsody
IBM Software Group | Rational softwareIBM Software Group | Rational software
9
Key Enabling Technologies of the Rational Rhapsody Solution
ModelExecution
Model-Based Testing
Software- Centric
Workflow
Standards-Based MDD
Team Collaboration
Requirements Visualization
IBM Software Group | Rational softwareIBM Software Group | Rational software
10
Simulate & Animate
Validate requirements and design early with continual simulation and testing Analyze system functionality for correctness and to determine next steps Visually demonstrate and communicate intended behavior to customer and
stakeholders Execute on the target and animate on the host to verify the application is correct
Model Execution
IBM Software Group | Rational softwareIBM Software Group | Rational software
11
Graphical Execution of State Machines and Activity Diagrams
Visual highlights of system or software state machines and activity diagrams as model executes.
Easily answers questions such as, “What state is the system in? What path was taken to reach that state?”
Model Execution
Active StateActive StateActive State
IBM Software Group | Rational softwareIBM Software Group | Rational software
12
Graphical Execution of Sequence Diagrams
Visualize message communication using animated sequence diagrams.
Sequence Diagram drawn automatically during simulation based on inputs and model behavior.
Model Execution
Easily compare specification scenarios to scenarios created from model execution in order to identify inconsistencies.
IBM Software Group | Rational softwareIBM Software Group | Rational software
13
View Run-Time Objects and Data
View objects created and their data while simulating the system or software.
Run-time Objects
Run-time Objects
ObjectData
IBM Software Group | Rational softwareIBM Software Group | Rational software
14
Enhance Simulation with Graphical Panels
Panels can be created and bound to inputs and outputs of the model for enhanced simulation.
Model Execution
Button boundto model input
LED boundto model outputButton bound
to model input
IBM Software Group | Rational softwareIBM Software Group | Rational software
15
Build in Quality from Concept to Launch 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
Traceability to requirements, model, code and test data
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
Model Based Testing
IBM Software Group | Rational softwareIBM Software Group | Rational software
16
Model Driven Testing
Rational Rhapsody TestConductorIncrease Productivity through Continual Testing
Record simulations often to validate functionality and verify correctness
Link to requirements, model, code and test data for traceability
Automatically create and execute tests from the design model or target platform
Manage test cases using Rational Quality Manager
IBM Software Group | Rational softwareIBM Software Group | Rational software
17
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
Model Driven Testing
IBM Software Group | Rational softwareIBM Software Group | Rational software
18
Rational solution for Systems and Software EngineeringOn-target product and process management via integration on an open platform
QUALITY MANAGEMENTAchieve “quality by design” with an
integrated, automated testing processRational Quality Manager
ARCHITECTURE & DESIGNUse modeling to validate requirements, architecture
and design throughout the development processRational Rhapsody
REQUIREMENTS MANAGEMENTManage all system requirements
with full traceability across the lifecycleRational DOORS
COLLABORATION, PLANNING & CHANGE MANAGEMENTCollaborate across diverse engineering disciplines and development teams
Rational Team Concert
Open Services for Lifecycle Collaboration
IBM Software Group | Rational softwareIBM Software Group | Rational software
19
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
20
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
21
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
22
Summary
Complexity can rapidly increase as you develop products and systems
Finding defects too late in the product lifecycle can be very costly and time-consuming
IBM Rational’s solution for Systems and Software Engineering:
Enables simulation of models and discovery of defects much earlier in the product lifecycle when they are cheapest to fix
Builds in quality from concept to product launch
Ensure designs and products meet market demands and industry requirements
IBM Software Group | Rational softwareIBM Software Group | Rational software
23
Profit from Software. Everyware. Starting at Innovate 2011. Mark your calendar and register today!
Innovate 2011 focuses on systems engineering and
embedded software development on the Modeling, Architecture and Construction
track and new Systems Engineering track
TOP 5 REASONS TO ATTEND
Learn the latest solutions and best practices for Systems Engineering, embedded software development, and testing
Hands-on technical workshops show how to apply IBM Rational system solutions to help improve design outcomes
Real world results and best practices from customers in A&D, Electronics, Automotive, Energy & Utilities and other industries
High-energy Exhibit Hall and IBM Solution Center featuring Innovation Labs and Business Partner Solutions
Network and gain insight from peers, product developers, product managers, and thought leaders
Register now and save $100 with promo code MAC11
IBM Software Group | Rational softwareIBM Software Group | Rational software
2424
© Copyright IBM Corporation 2010. 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
IBM Software Group | Rational softwareIBM Software Group | Rational software
25
Appendix
IBM Software Group | Rational softwareIBM Software Group | Rational software
26
Domain-Focused Model-Driven Development
Raise level of abstraction to help manage complexity
More than just pictures – consistency maintained across views
Unified Modeling Language – UML 2.x Industry-standard notation for specifying, visualizing, and documenting systems and software
designs
Systems Modeling Language - SysML Extends/specializes UML to address needs of the Systems Engineer Open standard published by the OMG and INCOSE
Standards-BasedMDD
Sequence Diagrams show collaboration Activity Diagram shows functions and functional flowsUse Case Diagram shows high level operation
IBM Software Group | Rational softwareIBM Software Group | Rational software
27
Standards-based modeling
Visualize: Requirements Structure Behavior Interaction Constraints
Improves communication Maintains consistent information
across views Enhances collaboration
Industry Standard, Formal Language Unambiguous UML for software/architecture SysML for systems engineer
Tailorable Customize for particular domain Safety Analysis, MISRA profiles DoDAF, MODAF, UPDM, MARTE
Standards-BasedMDD
IBM Software Group | Rational softwareIBM Software Group | Rational software
28
Requirements
Visualization
Manage Requirements across Lifecycle and Disciplines
Build the right product because the requirements are visible at all times Prove that all requirements (user, safety, regulatory, etc.) were fully satisfied
Understand the requirements Analyze stakeholder needs Evaluate coverage and impact analysis
Validate the requirements Analyze for correctness and to determine next steps
IBM Software Group | Rational softwareIBM Software Group | Rational software
29
Translate Requirements into a System Design
Build the product right with structural and behavioral analysis and design
Visualize the system Reduce confusion over requirements Specify system functionality Simulate to confirm functionality
Analyze impact of changes Whether in requirements or design
Trace requirements in either direction Provide full accountability and understanding
Specify and develop software Monitor and control the system
Requirements
Visualization
IBM Software Group | Rational softwareIBM Software Group | Rational software
30
Control the System with Optimized Software
Design efficient embedded source code Specify and create from the system requirements Import, visualize and refine existing C, C++, C#, Java and Ada applications Generate behavior for C, C++, Java, and Ada for embedded targets
Unite the architecture and code Simultaneously work with the system design, software and target platform View how a change in any one area is reflected in the others
Source CodeArchitectural View
Software- Centric
Workflow
IBM Software Group | Rational softwareIBM Software Group | Rational software
31
Leverage existing software investments
“Code Centric” workflow integrates legacy code into modeling Visualize structure and behavior of code for better understanding and identify dependencies Visualize interfaces of external code to reference within model
Code Visualization - allows continuous model reflection of externally evolved code Code and model are synchronized - Change one view and other changes automatically
Flowchart
Software- Centric
Workflow
Class Diagram
IBM Software Group | Rational softwareIBM Software Group | Rational software
32
LinuxVxworks, Integrity, others16 bit/no RTOS
Full application generation
Generate complete C, C++, Java, and Ada applications Comprehensive code generation, much more than code frames Produce construction artifacts such as makefiles Customization of generated code by user or organization Clean, readable, production quality code
Rapidly deploy your design onto any target platform Rhapsody provides real-time services such as threading, mutexes, message
queues, timers, and more Can scale down to smaller footprint applications
Software- Centric
Workflow
RTOS
LegacyCode
Rhapsody Application
IBM Software Group | Rational softwareIBM Software Group | Rational software
33
Collaborate and Communicate throughout Development
Collaborate across teams and geographies Reduce time and risk
associated with parallel development
Enable integrated design, sharing and review across diverse engineering teams
Enhance productivity Share views Collaboratively debug Link work items
Develop in parallel with graphical base aware differencing and merging
Automatically generate reports and documentation directly from the design
Team Collaboration