®
IBM Software Group
© 2010 IBM Corporation
Turning Product Development Into Competitive Advantage: IBM Rational Solutions for Systems and Software Engineering
Reduce the Time, Cost and Risk of Developing Profitable Products and Systems
IBM Software Group | Rational software
2
IBM Software Group | Rational software
We are ushering in a new wave of innovation
1770 1875 19201830 20101970
Inn
ov
ati
on
1st Wave
2nd Wave
3rd Wave
4th Wave
5th Wave
6th Wave
Smarter Products
Instrumented, interconnected, and intelligent
Building blocks for a smarter planet
Sustainability
The Industrial Revolution
Age of Steam
and Railways
Age of Steel,
Electricityand Heavy Engineering
Age of Oil, Carsand Mass Production
Ageof IT &
Telecom
*Source: “Next Generation Green: Tomorrow’s Innovation Green Business Leaders”, Business Week, Feb 4, 2008
Driven by*1. New & emerging
technologies2. Genuine market need and
economic viability
IBM Software Group | Rational software
3
IBM Software Group | Rational software
Connect multiple products and services into a “system of systems” to deliver unique value
Smarter Products and Services Delivery will require new investments in software and systems
Leverage systems engineering to accelerate time to market, improve quality and reduce costs
Develop a core competency in software delivery to produce products that are differentiated
IBM Software Group | Rational software
4
IBM Software Group | Rational software
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
Complexity Creates Development ChallengesLeading to 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 software
5
IBM Software Group | Rational software
Past
Modern Approaches for Describing Systems Are EvolvingTo Better Manage Complexity and Reduce Time-to-market
Moving from manual methods to an automated, visual 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 software
6
IBM Software Group | Rational software
A standards-based practice for the development of complex systems
across the mechanical, electronic and software disciplines
Rational Solutions for Systems and Software Engineering Collaboratively refine requirements into a robust system
IBM Software Group | Rational software
7
IBM Software Group | Rational software
IBM Customer SuccessHydraulic hybrid delivery vehicles - Eaton & UPS
“The suite of Rational tools, including Rhapsody, DOORS, ClearCase and ClearQuest, provides Eaton
an integrated software framework that allows us to deliver innovative products
more quickly and efficiently.”
What’s smart?
Innovative technology for urban delivery trucks in stop-and-go traffic
Smart software to optimize energy usage and reduce greenhouse gases
Smarter business outcomes
60-70% increase in fuel economy, according to EPA
40% reduction in CO2 emissions
IBM Software Group | Rational software
8
IBM Software Group | Rational software
“Smarter” often means More Complex
High-PressureAccumulator
Low-PressureAccumulator
HydraulicDrive
Assembly
Pump/ motor
The systems engineering challenge: Eaton’s – maybe the world’s – most complex hydraulic hybrid system ever
Unproven, complex and mixed domain technologies must interoperate and depend on each other (electrical, mechanical, hydraulic, human, safety, etc.)
Manual attempts to specify the system fell short
The software development challenge: Controlling this system requires relatively complex software for the pump motor and
associated monitors
Eaton’s Hybrid Power Group had little experience developing and testing code of this type
Eaton needed to directly tie its software development to the overall systems design
IBM Software Group | Rational software
9
IBM Software Group | Rational software
Eaton’s Approach
Watch the YouTube video
Needs: ► Overcome major complexity challenges
► Reduce cost of prototyping and developing the vehicles and their software
Solution: Eaton extended its Rational environment to achieve: Sharpened focus on requirements and how they define the systems Visualization of complexity through collaborative systems design, simulation & testing Iterative software engineering to specify and create tuned, accurate source code Designed-in quality by ensuring that the system works at every stage of development Lifecycle traceability to prove that all requirements have been satisfied
IBM Software Group | Rational software
10
IBM Software Group | Rational software
Solution Benefits
Rational solutions for systems and software engineering help our clients collaboratively design and deliver high quality electronic
products and systems that precisely satisfy all their requirements
Lowered costs and time-to-market through automation
Full traceability from requirements to systems, including product design artifacts
Graphically specified systems and software designs to abstract away complexity
Continuous validation through simulation of the system as it is being built
Improved product quality with immediate error checking
Reuse of existing intellectual property, including software and designs
Enhanced collaboration through linked work items and a common architectural language
Automated documentation generation from the design to deliver specifications and satisfy regulatory requirements
Round-trip production of full embedded source code from the design model
Key Differentiators
IBM Software Group | Rational software
11
IBM Software Group | Rational software
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 software
12
IBM Software Group | Rational software
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
IBM Software Group | Rational software
13
IBM Software Group | Rational software
Build in Quality from Concept to Launch
Simulate often to validate functionality and verify correctness
Automatically create and execute tests from the design model or target platform
Manage test cases, while prioritizing the features and functions to be tested
IBM Software Group | Rational software
14
IBM Software Group | Rational software
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
Automatically generate reports and documentation directly from the design
IBM Software Group | Rational software
15
IBM Software Group | Rational software
Recapture Intellectual Property
Preserve intellectual property Visualize and reverse-engineering existing software Create a library of design assets Analyze to best meet requirements
Work with product lines Expand product offerings Exploit commonality across products Focus efforts on unique product variants
Speed Fuel economy
Utility
IBM Software Group | Rational software
16
IBM Software Group | Rational software
Control the System with Optimized Software
Design efficient embedded source code Specify and create from the system requirements Generate complete C, C++, Java, and Ada applications
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
IBM Software Group | Rational software
17
IBM Software Group | Rational software
17
Rational Solutions for Systems and Software EngineeringBuilt on a core product set
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 software
18
IBM Software Group | Rational software
Extend the Solution to Meet Your Needs
The Rational solution can be tailored to meetvirtually any systems development workflow :
Automated reporting and documentation with Rational Publishing Engine
Enterprise systems delivery with Rational System Architect
Embedded software testing with Rational Test RealTime
Team-based configuration management with Rational ClearCase or Synergy
Domain specialization with industry-specific profiles such as AUTOSAR, Android, functional safety, and defense architecture frameworks
Embedded platform development with Wind River Workbench/VxWorks
Support also exists for Green Hills Integrity, QNX Momentics/Neutrino and many other embedded platform operating system environments
and many others…
RequirementsDefinition &Management
Analysis & Design
Quality Management
Build & Release
Management
Construction
Configuration & Change
Mgmt
Asset Management
& Reuse
Production
IBM Software Group | Rational software
19
IBM Software Group | Rational software
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 software
20
IBM Software Group | Rational software
Summary
Complexity can rapidly increase as you develop products and systems
Maintaining the various systems relationships manually is very difficult – maybe impossible
IBM’s solution for Systems and Software Engineering automates the building of structures and dependency relationships to: Manage increasing complexity Ensure designs and products meet market
demands and industry requirements Perform effective impact and change analysis
across different disciplines and subsystem views
Enable collaboration across the entire development organization
IBM Software Group | Rational software
21
IBM Software Group | Rational software
21
© 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 software
22
IBM Software Group | Rational software
Background Slides
IBM Software Group | Rational software
23
IBM Software Group | Rational software
Rational Core Components for Systems and Software Engineering
Manage, Analyze &
Refine Requirements
ApplyStrategic
Reuse
AchieveQuality by
Design
Standards-Based
Development
Develop Optimized Software
Collaboratein
Real Time
IBM Software Group | Rational software
24
IBM Software Group | Rational software
Interconnected diagrams form multi-dimensional models Can describe even the most complex systems
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
Industry notations and frameworks: DoDAF, MODAF, UPDM, AUTOSAR… Extends MDSD to meet the users’ domain-specific needs
Domain Focused Development Apply industry and domain standards
Standards-based
Development
IBM Software Group | Rational software
25
IBM Software Group | Rational software
Manage Requirements in ContextEnsure success by meeting customer needs
Specify the system design through visualized requirements Iteratively analyze and assess stakeholder needs Link system requirements with the design for coverage and impact analysis
Establish traceability throughout development Analyze impact for every changed requirement
Include functional and non-functional requirements Match performance requirements with physical specifications
Manage, Analyze & Refine
Requirements
IBM Software Group | Rational software
26
IBM Software Group | Rational software
Create Your ArchitectureTransform requirements into a working system
Derive the system in the context of its environment Reduce confusion over requirements Establish system functionality and its constraints
Eliminate errors as they are introduced Before they are too expensive to find and repair
Achieve Quality by
Design
System Requirements
The System
Subsystem 1 Subsystem 2 Subsystem 3
Subsystem 3Subsystem 3
Subsystem 3
Subsystem 3Subsystem 3
Subsystem 3
Subsystem 3Subsystem 3
Subsystem 3
Use case
Market / customer needs
...
...Subsystem 3
Subsystem 3Subsystem 3
Subsystem 3Subsystem 3
Subsystem 3
Subsystem 3Subsystem 3
Subsystem 3
action1action2
action3
Derived requirement
Traceability link
Simulate oftenAnimate and execute the design modelValidate functionality and verify correctness
Automatically create and execute tests Derive from the design model or target platform Create test harnesses for unit testing
Manage test casesPrioritize the features and functions to be tested
IBM Software Group | Rational software
27
IBM Software Group | Rational software
Recapture Intellectual PropertyAdapt, Reapply and Re-use Technology
Exploit prior designs to drive business success Understand existing software through visualization and reverse-engineering –
determine to use as-is, modify, or apply its architecture to a new design Quit “reinventing the wheel” – maintain a model-based library of design assets Perform trade-off analysis – determine best matches for project requirements
Develop and maintain product lines and families Support rapid, controlled portfolio growth Exploit commonality across ranges of products Focus efforts on unique product variants
Apply Strategic
Reuse
Speed Fuel economy
IBM Software Group | Rational software
28
IBM Software Group | Rational software
Implement the SystemCreate software that matches the requirements
Build efficient embedded software that powers the system Specify and test deployable source code from the system requirements Generate complete C, C++, Java, and Ada applications – including behavior
Synchronize between architecture and code Simultaneously work with the design model, software and target View how a change in any one area is reflected in the others
Source Code Architectural View
Develop Optimized Software
IBM Software Group | Rational software
29
IBM Software Group | Rational software
Apply a United EffortMaximize efficiency of distributed teams
Collaborate across teams and geographies for any size project Reduce time and risk associated with parallel development Enable integrated design, sharing and review across diverse engineering teams
Empower a task-based approach to managing complex projects Fully incorporate change and configuration management
Enhance productivity across teams, disciplines and organizations Shared views Collaborative debugging Linked work items
Automatically generate reports directlyfrom the design Documentation Regulatory and audit reporting Management, customer and peer reviews
Collaboratein
Real Time
Top Related