systems development - ibm · rosert/reqpro) uml product locality ... systems development governance...
TRANSCRIPT
®
IBM Software Group
© 2007 IBM Corporation
Systems Development
Dr. Murray CantorDistinguished Engineer, Rational CTO [email protected]
IBM Software Group | Rational software
2
Though this represents our current direction, these plans are subject to change
Nothing in this presentation is intended to create any representations or warranties
IBM Rational warranties are contained in the applicable license agreements
Disclaimer and Non-Disclosure
IBM Software Group | Rational software
3
There are 4 separate pillars that we collectively refer to as “Systems Engineering”:
1. Model-Driven System Development (MDSD) methodology and Rational Software Architect + SysML toolkit design tools for designing and developing complex “Systems of Systems”– primarily targeted at complex Defense systems
2. Integrated Systems Engineering (ISE) method (derived from MDSD with additional content from TRL), Rational Systems Developer + SysML toolkit with additional tools integration layer (from TRL)– primarily targeted at Electronics and Automotive
3. Integrated Product Change Management supporting the management of change of all product development assets, including electronic, software and mechanical through integration of Rational software change management tools with other PLM tools –– primarily targeted at Automotive and Electronics
4. Business Processes for Product Lifecycle Management – enabling and automating PLM processes by applying our standard SOA lifecycle tools and methods to PLM processes –– primarily targeted at Aerospace and Automotive customers
IBM Software Group | Rational software
4
RUP SERUP SE is the application of the Rational Unified Process to systems development:
Includes– Methods: MDSD, ISE, …
– RUP phases
– Iterative development
Core version available as RMC plug-in
IBM Software Group | Rational software
5
Model-based engineeringTo deal with horizontal and vertical integration issuesModels abstract out technology-specific detailImplications:
Use of system and software modeling languages such as SysML and UML (possibly others, e.g., Modelica)Use of metamodels and corresponding tools to support horizontal integrationDevelopment and use of powerful new data integration and model transformation capabilitiesHighly-scalable integration frameworks (e.g., Jazz)
Highly-scalable version management tools that span heterogeneous development tools
Use of objective evaluation methods and toolsTo minimize project and product risk as fast as possibleImplications:
Development and use of tools and environments that actively record and measure project activity and results (e.g., Jazz)Development and use of tools that support quantitative analyses of models and processesDevelopment and use of model simulators Development of methods and standards that allow direct specification of QoS and other “non-functional” attributes
Architectural Principles of Rational’s Strategy (1 of 2)
IBM Software Group | Rational software
6
Architectural Principles of Rational’s Strategy (2 of 2)Use of iterative development
Enables rapid adaptation to changing requirements and expanding knowledge about product and processConvenient framework for objective progress assessmentImplications:
Enhanced support for RUP-SE and its specializations (tools and content)Development and use of integrated process management tools (e.g., RPM)Development and use of portfolio management and planning tools
Open approachPreserve customers’ investments in tools and assetsAllows use of best-in-class tools and methodsLeverages shared widely-available knowledge (e.g., Eclipse)Implications:
Federated approach to tool integration (vs single vendor lock-in)Reliance on industry standardsUse of Service Oriented Architectures (SOA) Incorporate multidisciplinary engineering products from multiple vendors (including competitors)Development and use of model transform capabilitiesActive participation in relevant standards bodiesInstituting of domain-specialization technical teams
IBM Software Group | Rational software
7
System Definition
A group of interacting, interrelated, or interdependent elements forming a complex wholeA system provides a set of services that are used by an enterprise to carry out a business purpose (mission). System components consist of hardware, software, data, workers*
*Blanchard and Fabrycky, Systems Engineering and Analysis (3rd ed.), Prentice Hall, 1998
IBM Software Group | Rational software
8
Blackbox – Systems work as single entity
System– A group of interacting, interrelated, or interdependent
elements forming a complex whole– A system provides a set of services that are used by
an enterprise to carry out a business purpose (mission). System components consist of hardware, software, data, workers*
*Blanchard and Fabrycky, Systems Engineering and Analysis (3rd ed.), Prentice Hall, 1998
Blackbox
IBM Software Group | Rational software
9
Whitebox – System components
System– A group of interacting, interrelated, or interdependent
elements forming a complex whole
– A system provides a set of services that are used by an enterprise to carry out a business purpose (mission). System components consist of hardware, software, data, workers*
*Blanchard and Fabrycky, Systems Engineering and Analysis (3rd ed.), Prentice Hall, 1998
Whitebox
IBM Software Group | Rational software
10
System Engineering *
An interdisciplinary approach and means to enable the realization of successful systems. It focuses on defining customer needs and required functionality early in the development cycle, documenting requirements, then proceeding with design synthesis and system validation while considering the complete problem:– Operations– Performance– Test– Manufacturing– Cost & Schedule– Training & Support– Disposal
Specifying the whitebox components so the blackbox system meets the stakeholder needs
*INCOSE- The International Council on Systems Engineering
IBM Software Group | Rational software
11
Systems Modeling
The system model is a framework for defining, capturing and representing system characteristics, including:
system context, behavior, attributesSystem architecture with multiple viewpoints
Logical decomposition to capture behaviorsphysical attributes to capture non-functional requirementsWorker, human factorsData
Relationships within and between viewpoints traceability of requirements to system elements
IBM Software Group | Rational software
12
RUP SE Overview
RUP SE is an extension of RUP to address system development– Developed to address large DoD, intelligence systems
• Iterative development of systems• Scalability• Cross domain engineering (aka co-development)
– Further developed to address product development• Folded IBM PLM practices
– Plug in availableMain features– Adoption of industry definition of system– Rethinking use cases, context from classical RUP– Framework to address broad set system concerns– Joint realization methods
• Flowdown to logical, workers, execution units …
IBM Software Group | Rational software
13
RUP Systems Engineering Framework Model Viewpoints (cross-discipline) Model
Levels Worker Logical Information Distribution Process Geometric
Context Role definition
Activity modeling
UML Product Context Diagram,
UML Use case diagram specification
UML Enterprise data view containing extended Product data
Domain-dependent Views (E.g. S-space for elecotro0mechanical)
Domain Dependent (Such as highway modeling for vehicles)
Analysis UML partitioning
of system into human, machine
Activity modeling and simulation
UML Product logical decomposition
Product data conceptual Schema (UML in RoseRT/ReqPro)
UML Product locality view
UML Product process view (static diagrams)
Parameterized Geometric Model
Layouts
Design Operator
Instructions
Help files
Workflow and transaction management
Software component design
Product data schema ECM Design Detailed process view,
timing diagrams
MCAD Design
Implementation Hardware, Software configuration
More Creative
IBM Software Group | Rational software
14
What is SysML?
SysML is Critical Enabler for Model Driven SEA graphical modelling language adopted by the OMG, in collaboration with INCOSE and AP233
a UML Profile that represents a subset of UML 2 with extensions for heterogeneous (SW/HW) modeling
Supports the specification, analysis, design, verification, and validation of systems that include hardware, software, data, personnel, procedures, and facilities
Supports model and data interchange via XMI and the evolving AP233 standard (in-process)
Supported by multiple vendor
IBM Software Group | Rational software
15
SysML Basics
definition
use
1. Structure
3. Requirements
2. Behavior
interaction
state machine
activity/function
4. Parametrics
bdd [package] VehicleStructure [ABS-Block Definition Diagram]
«block»Traction Detector
«block»Brake
Modulator
«block»Library::Electro-Hydraulic
Valve
«block»Library::
Electronic Processor
«block»Anti-Lock Controller
d1 m1
ibd [block] Anti-LockController [Internal Block Diagram]
d1:Traction Detector
m1:Brake Modulator
c1:modulator interface
req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]
Braking Subsystem Specification
Vehicle System Specification
id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”
«requirement»StoppingDistance
id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”
«requirement»Anti-LockPerformance
«deriveReqt»
sd ABS_ActivationSequence [Sequence Diagram]
d1:TractionDetector
m1:BrakeModulator
detTrkLos()
modBrkFrc()
sendSignal()
modBrkFrc(traction_signal:boolean)
sendAck()
stm TireTraction [State Diagram]
Gripping Slipping
LossOfTraction
RegainTractionact PreventLockup [Activity Diagram]
DetectLossOf Traction
Modulate BrakingForceTractionLoss:
par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]
:AccellerationEquation[F = ma]
:VelocityEquation[a = dv/dt]
:DistanceEquation[v = dx/dt]
:BrakingForceEquation
[f = (tf*bf)*(1-tl)]
tf: bf:tl:
f:
F:
c
a:a:
v:
v:
x:
IBM Software Group | Rational software
16
Enables reasoning about bothAgile systems to meet emergent mission/business needsMeeting Service Level Agreements
Systems of Systems RequirementsNetwork-centricFlexible / agile architecturesTechnology IndependentModel-DrivenComposite Systems
MDSD for SOA
SOA
IBM Software Group | Rational software
17
Service Identification for System of Systems Summary
Build SysML RUP SE model withContext level
Analysis levelLogical views to reason about partitioning of functionalityDistribution views to reason about performation
Apply joint realization
Extend locality and connection semantics to create service oriented architecture
IBM Software Group | Rational software
18
SOA in Systems Architecture
Systems Modeling and SOA are complementary
There is synergy between the concepts and language constructs behind SysML and SOA modeling
SysML and UML profile for software services are both based on structured classes, ports, channels
Service identification for System of Systems is an extension of RUP SE
IBM Software Group | Rational software
19
Tactical Focus: Integrating Change Management
Product changes, either to correct defects or make enhancements, are a complex combination of engineering changes
MechanicalElectricalSoftwareOther types
The Product Quality Manager needs visibility to all the engineering changesMonitor progressAdvance the state of the Product Change when ALL engineering changes are completeMake all needed changes to the BOMIntegration testing of all changes
IBM Software Group | Rational software
20
Why we need integrated change management
PLM Systems already link the hardware changes to the Master Product Change process
Overall product changeHardware engineering changes, linked to CAD and other systemsFlexible, configurable workflows
Software changes are usually handled separatelyIBM Rational ClearQuest, linked to the IBM Rational SDPFlexible, configurable workflows within the software engineering discipline
We need to link the Software Change record in IBM Rational ClearQuest to the Product Change record in the PLM system
IBM Software Group | Rational software
21
Why Two Tools?
PLM Systems, just like ClearQuest, have configurable workflows for different kinds of changes
Why not just use the PLM system for the software changes as well as the hardware changes?Alternatively, why not use ClearQuest for the hardware changes as well as the software changes?
Links to the engineering toolsPLM systems link to CAD systems. The workflow is linked to actual changes to engineering artifacts, which are managed in the PLM system.ClearQuest is linked to the other tools in the Rational SDP, for example ClearCase and testing tools, as well as modeling tools. The workflow is linked to actual changes to engineering artifacts.
Engineers use the tools they are used to and like
They “grew up” independently—they now need to be brought together
IBM Software Group | Rational software
22
Product Changes as a Service
PLM Systems are part of a larger enterprise information architectureCRMERPPPMFinancialMany others
PLM can participate in a Service Oriented Architecture
Appropriate level of service is Product Change
Individual engineering change information, including software changes, is encapsulated in the Product Change service
The communication between PLM and software tools is encapsulated in the implementation of that service based on the integration APIs available in the individual tools
IBM Software Group | Rational software
23
Systems Development Governance Partnerships
Dassault – Enovia/MatrixOne
Agile
UGS TeamCenter
PTC Windchill
Cadence
Mentor Graphics
IBM Software Group | Rational software
24
Agenda
Introduction
Systems Development
Systems Development Governance
Rational Platform
IBM Software Group | Rational software
25
Current Rational Tooling for Industrial Systems
Business goalsand system
requirements
RationalRationalUnifiedUnified
Process/ Process/ Method Method
ComposerComposer
Rational Portfolio Manager
Rational Portfolio Manager
RationalSystems
Developer
RationalSystems
Developer
Wind River WorkBenchWind River WorkBench
Rational Manual Tester, PurifyPlus & TestRT
Rational Manual Tester, PurifyPlus & TestRT
Rational ClearCase, Rational ClearQuest and MultiSiteRational ClearCase, Rational ClearQuest and MultiSite
Rational RequisitePro
or DOORS
Rational RequisitePro
or DOORS
DoDAF
EmbeddedPlusDoorKeeper
Pathfinder PathMate
EmbeddedPlusSMST
Rational Unified Process for Systems EngineeringRational Unified Process for Systems Engineering
Project investment, resourcing & scheduling
System architecture & software design & implementation
Change management for all types of assets, from electronic designs to software to test assets
Functional & performance testing and
run-time analysis
Device Development
Methodology & process guidance for systems(RUP SE)
Modular Service Offerings
RAS Asset Repository
IBM Confidential
Business goalsand system
requirementsRationalRational
IBM Software Group | Rational software
26
What is Rational Systems Developer?
UML-based, model-driven development, design & construction tool for C/C++, J2SE and CORBA IDL implementation
Serves as a framework for enabling business partner value-add development
Eclipse
Rational Software Modeler
C/C++ Development
Tooling (CDT)
Java Development
Tooling (JDT)
Architectural structure review & control
Model-to-code
transforms
Rational Systems Developer
IBM Software Group | Rational software
27
Change ManagementClearCase LT included
Rational Systems Developer Overview
Java Development Tools
C/C++ Development Tools
Software Modeler
UML Language Transforms
Operating Environments
ModelerUML 2.0 Diagrams for Class, Communication, Component, Composite Structure, Deployment, Activity, Sequence, State, and Use CaseOCL SupportAutomatic diagram generationPattern contentExtensive open APIJava-based “scripting” for extensibilityHTML and XML based data extraction and reportingExtensive printing (Windows Only)RAS toolsRose Model ImportTraceability AnalysisVisual Compare/Merge
Structural Analysis
Platform Integrations
Life-cycle Integrations
Java Development ToolsAdvanced Java tooling - editors, projects, refactoring, etc.UML code editors for JavaCode review
C/C++ Development ToolsC/C++ editors and build managementCompiler and debugger integrationUML code editors for C/C++
UML Language TransformsPattern/Transform authoring framework and servicesUML-to-code transforms for Java and C++Selective language to UML harvestingCORBA IDL
Platform IntegrationsEclipse 3.0.2IBM SDP
Lifecycle IntegrationsClearCaseClearQuestRequisite ProSoDA
Application AnalysisAutomatic anti-pattern and pattern detection (Java)Architectural discovery, analysis, metrics, and stability reporting (Java)Implementation level architectural rules (Java)
IBM Software Group | Rational software
28
What is Eclipse?
An Open Source Projecteclipse.orgDelivers and supports the technology
A Technology OfferingUniversal platform for integrating development tools Open, extensible architecture based on standardsLicensed for royalty free world-wide distribution
A CommunityCommercial vendors, educators and individuals contribute to the project and technologyVendors bring commercial offerings to marketVendors work together to agree on standards and deliver integrated solutions
IBM Software Group | Rational software
29
Eclipse: Who’s Shipping or Supporting It?
TimeStorm® Integrated Development Environment (IDE)
SUSE LINUX Professional
IBM Software Group | Rational software
30
Role Based InterfaceRole Based Interface
System View
Product Architects(OEM and/or Suppliers)
Project Management(OEM and/or Suppliers)
Systems Data Management – Meta Data, Federation
RequirementsManagement
PortfolioPlanning
Manufacturing and Assembly
Simulation
Data Management
Mechanical Authoring
Manufacturing Process
Engineering
Data Management
Electrical Authoring
Data Management
Software Authoring
Data Management
Analysis & Simulation
Engineering Specialists(OEM and/or Suppliers)
Extends Across Lifecycle
Other Enterprise
Applications
Enterprise PDM
Enterprise Application Systems
Systems Design Methodology – RUP SE Systems Design Tool – RSD + SysML
RSDRPM ReqPro or DOORs
Change Management (CC/CQ)
point integrations
Rational in Systems Development Today – Actual
IBM Software Group | Rational software
31
Role Based InterfaceRole Based Interface
System View
Product Architects(OEM and/or Suppliers)
Project Management(OEM and/or Suppliers)
Systems Data Management – Meta Data, Federation
RequirementsManagement
PortfolioPlanning
Manufacturing and Assembly
Simulation
Data Management
Mechanical Authoring
Manufacturing Process
Engineering
Data Management
Electrical Authoring
Data Management
Software Authoring
Data Management
Analysis & Simulation
Engineering Specialists(OEM and/or Suppliers)
Extends Across Lifecycle
Other Enterprise
Applications
Enterprise PDM
Enterprise Application Systems
Inte
grat
ion
Inte
grat
ion
JAZZJAZZ
dashboard
Jazz Lifecycle Management and Collaboration Infrastructure
Systems Design Methodology – RUP SE
Systems Design Tool – RSD + SysML
RSDJazz-based RM and PPM
SWG Vision: SOA-based System Platform of tomorrow
IBM Software Group | Rational software
32
© Copyright IBM Corporation 2007. 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, the on-demand business logo, Rational, the Rational 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.