model driven development with rhapsody by will fritz

16
Model Driven Model Driven Development with Development with Rhapsody Rhapsody By Will Fritz By Will Fritz

Upload: norah-bond

Post on 29-Dec-2015

214 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Model Driven Development with Rhapsody By Will Fritz

Model Driven Development Model Driven Development with Rhapsodywith Rhapsody

By Will FritzBy Will Fritz

Page 2: Model Driven Development with Rhapsody By Will Fritz

What is Model Driven What is Model Driven Development?Development?

A method for producing software quickly, A method for producing software quickly, efficiently, and with as little cost as efficiently, and with as little cost as possible.possible.

Based around generating code directly Based around generating code directly from UML or other modeling languages.from UML or other modeling languages.

Page 3: Model Driven Development with Rhapsody By Will Fritz

Why use Model Driven Why use Model Driven Development?Development?

MDD allows for easier building and MDD allows for easier building and maintenance of complex state machines maintenance of complex state machines than direct work with code.than direct work with code.

Many embedded systems have too many Many embedded systems have too many states to keep straight easily through states to keep straight easily through standard development methodsstandard development methods

Page 4: Model Driven Development with Rhapsody By Will Fritz

Why use MDD (cont.)Why use MDD (cont.)

With quality MDD tools, systems can be With quality MDD tools, systems can be maintained wholly through their state maintained wholly through their state diagrams and other models.diagrams and other models.

Page 5: Model Driven Development with Rhapsody By Will Fritz

Advantages of MDDAdvantages of MDD

There are many advantages to using There are many advantages to using model driven development.model driven development.

““By using models, software engineers and By using models, software engineers and other stakeholders are able to argue other stakeholders are able to argue conceptually about a problem without conceptually about a problem without worrying about syntax or other platform worrying about syntax or other platform specific issues.”[4] specific issues.”[4]

Page 6: Model Driven Development with Rhapsody By Will Fritz

Advantages of MDD (cont.)Advantages of MDD (cont.)

The added ease of communication can The added ease of communication can lead to fast design times.lead to fast design times.

Page 7: Model Driven Development with Rhapsody By Will Fritz

System independenceSystem independence

System can be designed with very little System can be designed with very little information about final platform.information about final platform.

MDD emphasizes building system MDD emphasizes building system independent models, then applying model independent models, then applying model transformations to make it fit the target transformations to make it fit the target system.system.

This leads to better portability for the This leads to better portability for the system.system.

Page 8: Model Driven Development with Rhapsody By Will Fritz

RhapsodyRhapsody

Rhapsody is a MDD tool from Telelogic.Rhapsody is a MDD tool from Telelogic. It currently supports final code generation It currently supports final code generation

into Ada, C, C++, and Java.into Ada, C, C++, and Java. It also supports 8, 16, 32, and 64 bit It also supports 8, 16, 32, and 64 bit

systems.systems.

Page 9: Model Driven Development with Rhapsody By Will Fritz

Rhapsody (cont.)Rhapsody (cont.)

Rhapsody can run simulations of the Rhapsody can run simulations of the designed system.designed system.

It can also run debugging on the target It can also run debugging on the target hardware.hardware.

Lastly it includes support for built in Lastly it includes support for built in requirements and model based testing.requirements and model based testing.

Page 10: Model Driven Development with Rhapsody By Will Fritz

StandardsStandards

CORBA: Common Object Request Broker CORBA: Common Object Request Broker ArchitectureArchitecture

D0-178BD0-178BUMLUMLSysMLSysMLDoDAF: Department of Defense DoDAF: Department of Defense

Architecture FrameworkArchitecture FrameworkAUTOSAR: soonAUTOSAR: soon

Page 11: Model Driven Development with Rhapsody By Will Fritz

Rhapsody AnimatorRhapsody Animator

Rhapsody has a debugging tool called the Rhapsody has a debugging tool called the Animator. It shows the current state of the Animator. It shows the current state of the simulation within the diagrams.simulation within the diagrams.

Page 12: Model Driven Development with Rhapsody By Will Fritz

Rhapsody AnimatorRhapsody Animator

Page 13: Model Driven Development with Rhapsody By Will Fritz

Target Debugging with TornadoTarget Debugging with Tornado

When used for target debugging along When used for target debugging along with the Tornado IDE Rhapsody is able to with the Tornado IDE Rhapsody is able to show the status of the system in diagrams show the status of the system in diagrams via the animator while target debugging.via the animator while target debugging.

Page 14: Model Driven Development with Rhapsody By Will Fritz

CustomersCustomers

AirbusAirbus BoeingBoeing Hamilton SunstrandHamilton Sunstrand Lockheed MartinLockheed Martin Smiths AerospaceSmiths Aerospace FordFord MazdaMazda MitsubishiMitsubishi CISCOCISCO

MotorolaMotorola NokiaNokia PanasonicPanasonic Sony ElectronicsSony Electronics 3Com3Com MedtronicMedtronic HPHP IntelIntel TraneTrane

Page 15: Model Driven Development with Rhapsody By Will Fritz

Trane ExampleTrane Example

Used to design software for new high-Used to design software for new high-efficiency water chillerefficiency water chiller

Project went from blackboard to testing in Project went from blackboard to testing in three monthsthree months

Manager of SE Pat Wilson marked that as Manager of SE Pat Wilson marked that as very fast for that type of projectvery fast for that type of project

Page 16: Model Driven Development with Rhapsody By Will Fritz

ReferencesReferences [1] Hofstader, Joseph; Building Distributed Applications [1] Hofstader, Joseph; Building Distributed Applications

Model-Driven Development, Model-Driven Development, http://msdn2.microsoft.com/en-us/library/aa964145(d=http://msdn2.microsoft.com/en-us/library/aa964145(d=printer).aspxprinter).aspx

[2] Mellor, S., Scott, K., Uhl, A. and Weise, D. MDA [2] Mellor, S., Scott, K., Uhl, A. and Weise, D. MDA Distelled; Principles of Model-Driven Architecture, Distelled; Principles of Model-Driven Architecture, Addison Wesley, 2004.Addison Wesley, 2004.

[3] Rutherford, Matthew J. and Wolf, Alexander L.; A [3] Rutherford, Matthew J. and Wolf, Alexander L.; A Case for Test-Code Generation in Model-Driven Case for Test-Code Generation in Model-Driven Systems, Springer-Verlag Berlin Heidelberg, 2003Systems, Springer-Verlag Berlin Heidelberg, 2003

[4] Bull, R. Ian; Integrating Dynamic Views Using Model [4] Bull, R. Ian; Integrating Dynamic Views Using Model Driven Development, 2006Driven Development, 2006