Download presentation
Presentation is loading. Please wait.
Published byHortense Conley Modified over 8 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.