Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.

Similar presentations


Presentation on theme: "A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee."— Presentation transcript:

1 A Brief Introduction

2 Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee and Jeff Kramer The Unified Modeling Language, 2 nd edition, by James Rumbaugh, Ivar Jacobson, and Grady Booch

3  Definition  Abstraction  Meaning  Purpose  Contents

4 Definition  A representation in a medium of something in the same or another medium  Captures important aspects  Convenient for working  Take various forms

5 Definition  A representation in a medium of something in the same or another medium  Captures important aspects  Convenient for working  Takes various forms

6 Definition  A representation in a medium of something in the same or another medium  Captures important aspects  Convenient for working  Takes various forms

7 Definition  A representation in a medium of something in the same or another medium  Captures important aspects  Convenient for working  Take various forms

8 Purpose  To capture and precisely state requirements and domain knowledge  To think about the design of a system  To capture design decisions in a mutable form

9 Purpose  To capture and precisely state requirements and domain knowledge  To think about the design of a system  To capture design decisions in a mutable form

10 Purpose  To capture and precisely state requirements and domain knowledge  To think about the design of a system  To capture design decisions in a mutable form

11 Purpose  To generate usable work products  To organize, find, filter, retrieve, examine, and edit information about large systems  To explore multiple solutions  To master complex systems

12 Purpose  To generate usable work products  To organize, find, filter, retrieve, examine, and edit information about large systems  To explore multiple solutions  To master complex systems

13 Purpose  To generate usable work products  To organize, find, filter, retrieve, examine, and edit information about large systems  To explore multiple solutions  To master complex systems

14 Purpose  To generate usable work products  To organize, find, filter, retrieve, examine, and edit information about large systems  To explore multiple solutions  To master complex systems

15 Abstraction  Different forms  Different levels of abstraction  Various purposes

16 Levels of Abstraction  Guides to the thought process  Abstract specifications of the essential structure of a system  Full specifications of a final system  Exemplars of typical or final systems  Complete or partial description of systems

17 Levels of Abstraction  Guides to the thought process  Abstract specifications of the essential structure of a system  Full specifications of a final system  Exemplars of typical or final systems  Complete or partial description of systems

18 Levels of Abstraction  Guides to the thought process  Abstract specifications of the essential structure of a system  Full specifications of a final system  Exemplars of typical or final systems  Complete or partial description of systems

19 Levels of Abstraction  Guides to the thought process  Abstract specifications of the essential structure of a system  Full specifications of a final system  Exemplars of typical or final systems  Complete or partial description of systems

20 Levels of Abstraction  Guides to the thought process  Abstract specifications of the essential structure of a system  Full specifications of a final system  Exemplars of typical or final systems  Complete or partial description of systems

21 Content  Semantic Information Captures meaning of an application Used for code generation, validation, etc  Visual Presentation Notations Guide human understanding of a model  Context

22 Meaning  Abstraction vs. Detail  Specification vs. Implementation  Description vs. Instance  Variations in interpretation

23  A Brief Summary  UML History  Goals of UML  UML Views

24 A Brief Summary  General-purpose visual modeling language for discrete system  Captures information about the static structure and dynamic behavior of a system  Contains organizational constructs for arranging models into packages  NOT primarily a programming language

25 A Brief Summary  General-purpose visual modeling language for discrete system  Captures information about the static structure and dynamic behavior of a system  Contains organizational constructs for arranging models into packages  NOT primarily a programming language

26 A Brief Summary  General-purpose visual modeling language for discrete system  Captures information about the static structure and dynamic behavior of a system  Contains organizational constructs for arranging models into packages  NOT primarily a programming language

27 A Brief Summary  General-purpose visual modeling language for discrete system  Captures information about the static structure and dynamic behavior of a system  Contains organizational constructs for arranging models into packages  NOT primarily a programming language

28 UML History  Fusion [Coleman-94] Included concepts from: ○ OMT [Rumbaugh-91] ○ Booch [Booch-94] ○ CRC [Wirfs-Brock-90]  Rational Software, Rumbaugh & Booch Combined OMT & Booch methods Jacobson join Rational group ○ UML draft  1996, OMG issues rfp for standard approach to OO modeling UML results

29 UML History  Fusion [Coleman-94] Included concepts from: ○ OMT [Rumbaugh-91] ○ Booch [Booch-94] ○ CRC [Wirfs-Brock-90]  Rational Software, Rumbaugh & Booch Combined OMT & Booch methods Jacobson join Rational group ○ UML draft  1996, OMG issues rfp for standard approach to OO modeling UML results

30 UML History  Fusion [Coleman-94] Included concepts from: ○ OMT [Rumbaugh-91] ○ Booch [Booch-94] ○ CRC [Wirfs-Brock-90]  Rational Software, Rumbaugh & Booch Combined OMT & Booch methods Jacobson join Rational group ○ UML draft  1996, OMG issues rfp for standard approach to OO modeling UML results

31 Goals of UML  General-purpose modeling language  Non-proprietary  Support good design practices Encapsulation Separation of concerns  Address development issues Large-scale Distribution Concurrency Patterns Team development

32 Goals of UML  General-purpose modeling language  Non-proprietary  Support good design practices Encapsulation Separation of concerns  Address development issues Large-scale Distribution Concurrency Patterns Team development

33 Goals of UML  General-purpose modeling language  Non-proprietary  Support good design practices Encapsulation Separation of concerns  Address development issues Large-scale Distribution Concurrency Patterns Team development

34 Goals of UML  General-purpose modeling language  Non-proprietary  Support good design practices Encapsulation Separation of concerns  Address development issues Large-scale Distribution Concurrency Patterns Team development

35 UML Views  4 Areas Structural classification Dynamic behavior Physical layout Model Management

36 UML Views  A subset of UML modeling constructs  Represents one aspect of a system  One or two kinds of diagrams provide a visual notation for the concepts in each view

37 UML Views  Structural Static View Design View Use Case View  Dynamic  Physical  Model Management Class Diagram association class dependency generalization interface realization

38 UML Views  Structural Static View Design View Use Case View  Dynamic  Physical  Model Management connector interface part port provided interface role required interface collaboration collaboration use component dependency realization subsystem Internal Structure Collaboration Diagram Component Diagram

39 UML Views  Structural Static View Design View Use Case View  Dynamic  Physical  Model Management Use Case Diagram actor association extend include use case use case generalization

40 UML Views  Structural  Dynamic State Machine View Activity View Interaction View  Physical  Model Management State Machine Diagram completion transition do activity effect event region state transition trigger

41 UML Views  Structural  Dynamic State Machine View Activity View Interaction View  Physical  Model Management Activity Diagram action activity control flow control node data flow exception expansion region fork join object node pin

42 UML Views  Structural  Dynamic State Machine View Activity View Interaction View  Physical  Model Management Sequence Diagram occurrence specification execution specification interaction interaction fragment interaction operand lifeline message signal collaboration guard condition role sequence number Communication Diagram

43 UML Views  Structural  Dynamic  Physical Deployment View  Model Management Deployment Diagram artifact dependency manifestation node

44 UML Views  Structural  Dynamic  Physical  Model Management Model Management View Profile Package Diagram import model package constraint profile stereotype tagged value

45

46 Review  Modeling Models have several abstract levels Models takes various forms  UML History Four concept areas and corresponding views


Download ppt "A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee."

Similar presentations


Ads by Google