Presentation is loading. Please wait.

Presentation is loading. Please wait.

ARCH-5: From Design to Implementation in OpenEdge® using UML and MDA

Similar presentations


Presentation on theme: "ARCH-5: From Design to Implementation in OpenEdge® using UML and MDA"— Presentation transcript:

1 ARCH-5: From Design to Implementation in OpenEdge® using UML and MDA
Frank Beusenberg Sr. Technical Consultant

2 Theory vs Practice Be pragmatic! The difference between theory and practice is that, in theory, there is no difference between theory and practice! Just pointing out that UML can be a source of very ‘academic’ discussions much like you can have with ‘relational algebra’. Try to be pragmatic about UML and its usage. ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

3 Shu - Learn Ha - Understand & Apply Ri - Create Shu – Ha - Ri
Learning Curve… Shu - Learn Ha - Understand & Apply Ri - Create Just pointing out that you have to learn the UML rules first (so know what they are), after which you could understand UML and start using it and at the end you could even create your own standards. This is taken from Japanese Martial Arts and serves as a model for learning in general. ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

4 Agenda Introduction UML 2.0 Diagrams MDA Introduction Guidelines Q&A
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

5 Introduction UML = Unified Modeling Language First UML spec in 1997
What is UML? Some facts… UML = Unified Modeling Language First UML spec in 1997 Current version = 2.0 Object Management Group (OMG) Graphical language Object Oriented in nature Has Syntax Extensible NOT a methodology! ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

6 Introduction What is UML? Evolution… Object Oriented Analysis & Design
Grady Booch Object Oriented Modeling & Design Jim Rumbauch OOSE (Use Case driven approach) Ivar Jacobsen UML is not something that has been made up new. It is an evolutionary mix of three main modeling and design ‘languages’. ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

7 Introduction Why model? Manage Complexity Mitigate Risk
Facilitate Communication Modeling provides ability to visualize entire systems, assess options and designs Software has grown from do-it-yourself into highly complex systems Software is integral part of business process, so has to be well planned Software has become capital equipment that cannot just be removed/changed ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

8 Introduction The Software Development Life Cycle Planning Analysis
Design Build Test Deploy COMPRESS Planning Test Deploy Analysis Design Build ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

9 Introduction Why UML? Specify, visualize, and document models of software systems Current and New Systems Structure and Design Behavior and Interaction De Facto Standard (Tool Support!) Unambiguous and Consistent Notation Documentation ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

10 Agenda Introduction UML 2.0 Diagrams MDA Introduction Guidelines Q&A
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

11 UML 2.0 Diagrams Commonly used… Diagram Behavior Use Case Activity
Interaction Sequence Communication Structure Class Component Deployment Commonly used… ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

12 Behavior – Use Case Diagram
Describe Functional Requirements ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

13 Behavior – Activity Diagram
Describe (Business) Process & Workflow ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

14 Behavior – Sequence Diagram
Describe Chronological Message Flow between Objects ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

15 Behavior – Communication Diagram
Describe Chronological Message Flow between Objects ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

16 Structure – Class Diagram
Describe Logical Structure of the System ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

17 Structure – Component Diagram
Describe Physical Structure of the System ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

18 Structure – Deployment Diagram
Describe How and Where the System will be deployed ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

19 Agenda Introduction UML 2.0 Diagrams MDA Introduction Guidelines Q&A
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

20 UML Modeling Logical View Implementation View Use Case View
Dynamic View Deployment View ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

21 Model-Driven Architecture (MDA)
Computation-Independent Model CIM >> PIM Platform-Independent Model PIM >> PSM Platform-Specific Model PSM >> Code Code Code Code ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

22 Model-Driven Architecture (MDA)
Objective and Purpose Decouple the way that application systems are defined from the technology they run on. This is in order to ensure that the investments made in building systems can be preserved even when the underlying technology platforms change. ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

23 Agenda Introduction UML 2.0 Diagrams MDA Introduction Guidelines Q&A
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

24 Guidelines Create Use Case Diagram(s) Create Activity Diagram(s)
Natural Order… Create Use Case Diagram(s) Create Activity Diagram(s) Create Class Diagram(s) Create Sequence Diagram(s) Create Component Diagram(s) Create Deployement Diagram(s) ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

25 Guideline - Use Case View
Describe System Functionality Gathering requirements Functional & non-functional requirements Document functional requirements UML Use Case Diagram Use Case Description Documents Identify actor(s) and association to use case Create different levels of use cases (re-use!) ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

26 Example - AutoEdge Use different abstraction levels when appropriate
Use Case Example - AutoEdge Use different abstraction levels when appropriate ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

27 Example - AutoEdge Manage Dealer Use Case
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

28 Guideline - Use Case View
Describe Use Case Scenarios Scenario = Use Case Activity Flow Basic Scenario Alternate Scenario(s) UML Activity Diagram Describe *what* happens, not *how*! ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

29 Example - AutoEdge Manage Dealer Activity
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

30 Guideline - Use Case View
Describe Test Scenarios Identify paths in activity diagram Create minimal test-scenarios (using each path once) NOTE: Test should test use case, not fooling around in the system! ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

31 Guideline – Logical View
Describe and design the System Structure Identify entities/things used in use case Identify attributes Identify operations Identify entity relations Identify multiplicity Create class diagram ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

32 Example - AutoEdge Logical Data Model – Process Testdrive Requests
Class Example - AutoEdge Logical Data Model – Process Testdrive Requests ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

33 Example - AutoEdge Dealership Business Entity Class
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

34 Guideline – Logical View
Identify and use Patterns “A pattern is a proven solution for a problem in a context.” ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

35 Example – AutoEdge Client-Side Business Entity Pattern
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

36 Guideline – Dynamic View
Describe Behavior Identify objects involved Identify interactions (messages) Only show public operations Describe how things work (together) Identify missing classes and/or operations Ty back into class diagram ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

37 Example - AutoEdge Entity Creation within AutoEdge Architecture
Sequence Example - AutoEdge Entity Creation within AutoEdge Architecture ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

38 Guideline – Implementation View
Describe Physical Software Artifacts Identify Physical Software Artifacts Source & Compiled files Identify Packages & Libraries ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

39 Example - AutoEdge Dealer Business Entity Component
ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

40 Guideline – Deployment View
Describe Software on Physical Hardware Identify Location of Software Artifacts Identify how Hardware is related Identify (minimum) hardware requirements ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

41 Guideline – Deployment View
Describe Software on Physical Hardware ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

42 In Summary… Model & Design Use UML Manage complexity Minimize risk
Facilitate communication Use UML De facto standard Unambiguous Documentation ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

43 Literature UML Distilled Third Edition
Addison-Wesley Object Technology Series UML Distilled Third Edition Martin Fowler – ISBN Use Case Driven Object Modeling with UML Doug Rosenberg – ISBN Developing Software with UML Bernd Oestereich – ISBN X ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

44 Materials Complete AutoEdge Kit Modeling & Model Driven Architecture
Materials available on PSDN Complete AutoEdge Kit Modeling & Model Driven Architecture ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

45 Resources Check with local subsidiary for UML training
Training & Information Check with local subsidiary for UML training UML Resource Page MDA Resource Page ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

46 Questions? ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA

47 Thank you for your time

48 ARCH-5 - Modeling – From Design to Implementation in OpenEdge using UML and MDA


Download ppt "ARCH-5: From Design to Implementation in OpenEdge® using UML and MDA"

Similar presentations


Ads by Google