systems development - ibm · rosert/reqpro) uml product locality ... systems development governance...

32
® IBM Software Group © 2007 IBM Corporation Systems Development Dr. Murray Cantor Distinguished Engineer, Rational CTO Team [email protected]

Upload: phungbao

Post on 30-May-2018

215 views

Category:

Documents


0 download

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.