Presentation is loading. Please wait.

Presentation is loading. Please wait.

TAL7011 – Lecture 4 UML for Architecture Modeling.

Similar presentations


Presentation on theme: "TAL7011 – Lecture 4 UML for Architecture Modeling."— Presentation transcript:

1 TAL7011 – Lecture 4 UML for Architecture Modeling

2 2 UML Diagrams Artifacts Component Deployment Interaction Modeling the system architecture Lecture Outline UML for Architectural Modeling

3 3 Use Case Diagram Component Diagram Class Diagram Activity Diagram Collaboration Diagram Deployment Diagram Sequence Diagram State Diagram UML Diagrams UML for Architectural Modeling

4 4 Primarily consists of actors and use cases. Use Case diagrams help capture the functional requirement of your system. This is always a great diagram with which to start a project. Use Case Diagram UML for Architectural Modeling

5 5 Primarily consists of major system components and their relationships. This is meant to be a high-level overview diagram of your complicated system. Component Diagram UML for Architectural Modeling

6 6 Primarily consists of classes, interfaces, and their relationships. The classes and interfaces are fairly straightforward, but the relationships can grow a bit complicated with multiplicity, generalizations, and associations. Class Diagram UML for Architectural Modeling

7 7 Primarily consists of activities and decisions. These diagrams are essentially flowcharts and data flow diagrams that you use to get the general flow of the code Activity Diagram UML for Architectural Modeling

8 8 Primarily consists of objects and messages. This diagram focuses on the communication between objects and is similar to the Sequence Diagram. Collaboration Diagram UML for Architectural Modeling

9 9 Primarily consists of deployment elements, such as servers, and their relationships. This is a logical topography of your system. Deployment Diagram UML for Architectural Modeling

10 10 Primarily consists of objects(with lifelines) and invocation messages. Sequence diagrams depict the order of invocations in your system as well as the creation of the different objects. Sequence Diagram UML for Architectural Modeling

11 11 Primarily consists of states, transitions, events, and actions. State diagrams are seldom necessary except when logic is very complicated. State Diagram UML for Architectural Modeling

12 Artifacts

13 13 In UML, an artifact is a ‘physical thing’ at the level of the implementation platform. Examples: –Object libraries, executables –.Net components, EJBs –Tables, files, documents Artifact is a stereotype in UML. What are artifacts? UML for Architectural Modeling

14 14 Simple and qualified artifact names Specifying names for artifacts UML for Architectural Modeling

15 15 Artifacts implement classes, but they do not have attributes and methods. Artifacts vs. Classes UML for Architectural Modeling

16 16 Deployment artifacts DLLs, EXEs, CORBA components, EJBs. Work product artifacts Source code files, data files. (They do not directly participate in the execution of the software) Execution artifacts These are created as the system is executing. Example :.Net objects. Kinds of Artifacts UML for Architectural Modeling

17 17 Executable – Specifies an artifact that may be executed on a node. Library – Specifies a static or dynamic object library File and Document –Source code, data, other structured or unstructured information. UML predefined stereotypes for artifacts UML for Architectural Modeling

18 18 Modeling executables and libraries Common modeling techniques (1) UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

19 19 Modeling files, tables and documents Common modeling techniques (2) UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

20 20 Modeling source codes Common modeling techniques (3) UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

21 21 Artifacts are used to model the physical dimension of a software system. A well-structured artifact –Directly implements a set of classes that work together to achieve a certain service. –Is loosely coupled to other artifacts (i.e. modular) Summary for artifacts UML for Architectural Modeling

22 Deployment

23 23 Artifacts must be deployed on hardware to execute. An architect should consider both the logical and physical dimensions when designing software-intensive systems. Logical dimension: classes, interfaces, collaborations, interactions, etc. Physical dimension: artifacts, nodes (hardware on which artifacts execute). Overview UML for Architectural Modeling

24 24 Nodes with simple and qualified names UML for Architectural Modeling

25 25 Artifacts participate in execution, nodes execute artifacts. Artifacts are physical packaging of logical elements, nodes represent physical deployment of artifacts. Nodes and artifacts UML for Architectural Modeling

26 26 Association is the most common relationship among nodes. Connections UML for Architectural Modeling

27 27 Modeling processors and devices Common Modeling Techniques(1) UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

28 28 Modeling distribution of artifacts Common Modeling Techniques(2) UML for Architectural Modeling

29 29 Embedded systems Common Modeling Techniques(3) UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

30 30 Client-Server System Common Modeling Techniques(4) UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

31 31 Distributed System Common Modeling Techniques(5) UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

32 32 Focus on static deployment view. Organize elements spatially. Elements that are semantically close are laid out physically close. Show only attributes that are necessary to grasp the meaning of a particular node. Summary for Deployment UML for Architectural Modeling

33 Component

34 34 Interface: A collection of operation specifications that defines a service. Component: A replaceable part of a system that provides the implementation for a set of interfaces. Overview UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

35 35 Ports enable the interfaces of a component to be divided into groups. Components and ports UML for Architectural Modeling

36 36 Building large components using smaller components Internal structure of a component UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

37 37 Connection through ports Connection through compatible interfaces Connectors between components UML for Architectural Modeling Figure credit: The Unified Modeling Language User Guide, 2 nd Edition, Addison Wesley Professional.

38 38 Structured classes Common Modeling Techniques(1) UML for Architectural Modeling

39 39 API Common Modeling Techniques(2) UML for Architectural Modeling

40 40 A component encapsulates a service with well-defined interface and boundary. Externally visible behavior is organized through interfaces and ports. Use moderate number of sub-components. Do not nest the components too deep. Summary of Component Diagrams UML for Architectural Modeling

41 Interaction

42 42 Interaction diagrams model the dynamic aspects of a system. Used to model: classes, interfaces, components, nodes and the messages among them. Use interaction diagrams to model –Flow of control through time –Flow of control from the structural perspective Overview UML for Architectural Modeling

43 43 Modeling flow of control through time Common Modeling Techniques(1) UML for Architectural Modeling Sequence diagram

44 44 Modeling flow of control from structural perspective Common Modeling Techniques(2) UML for Architectural Modeling Communication diagram (a.k.a. collaboration diagrams in UML 1.x)

45 45 Focus on the dynamic aspects of a system (behavior) Use a sequence diagram the time ordering of messages Use communication diagram to emphasize organization of objects involved in the interaction Interaction - Summary UML for Architectural Modeling

46 46 Create a use case view of the system as seen by end users, analysts and testers. Specify design view of the system: classes, interfaces, components, state diagrams, etc. Specify interaction view of the system: model flow of control. Specify implementation view of the system: artifact diagrams. Specify deployment view of the system: Show the nodes that make up the system’s hardware topology Modeling a System’s Architecture UML for Architectural Modeling

47 47 Summary UML for Architectural Modeling

48 48 After completing this lecture, you should be able to: Describe the architecture of a software system using the five views: Use case, design, interaction, implementation and deployment. For each view, identify and create suitable UML diagrams. Learning outcomes UML for Architectural Modeling


Download ppt "TAL7011 – Lecture 4 UML for Architecture Modeling."

Similar presentations


Ads by Google