R R R CSE870: UML Component Diagrams Implementation Diagrams.

Slides:



Advertisements
Similar presentations
Deployment Diagrams Depicts a static view of the run-time configuration of Nodes.
Advertisements

® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Architectural Modeling Notations.
UML Static diagrams. Static View: UML Component Diagram Component diagrams show the organization and dependencies among software components. Component:
UML – Class Diagrams.
1 © Wolfgang Pelz UML3 UML 3 Notations describe how to use reusable software. Package Component Deployment Node.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Component and Deployment Diagrams
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
CS 432 Object-Oriented Analysis and Design
© Copyright Eliyahu Brutman Programming Techniques Course.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
1 A Student Guide to Object- Orientated Development Chapter 9 Design.
1 Introduction to UML DIAGRAMS & CLASS DIAGRAM Chapter 7,8 主講人 : 許勝杰
Systems Analysis and Design in a Changing World, Fifth Edition
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
Session 26 Modeling the Static View: The Deployment Diagram Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 27, 2011 Presented.
MACIASZEK, L.A. (2001): Requirements Analysis and System Design. Developing Information Systems with UML, Addison Wesley Chapter 6 - Tutorial Guided Tutorial.
Systems Analysis and Design in a Changing World, 3rd Edition
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
TAL7011 – Lecture 4 UML for Architecture Modeling.
Implementation Diagrams
R R R CSE870: UML Component Diagrams Implementation Diagrams.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Design Jon Walker. More UML ● What is UML again?
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Technology Layer. Technology Layer Metamodel Technology Layer Concepts.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Software Engineering Lecture 8 Object-Oriented Analysis.
 Building Block Building Block  Things in the UML Things in the UML  Structural Things Structural Things  Behavioral Things Behavioral Things  Grouping.
COMPONENT DIAGRAM in UML 2.0 Veronica Carrega. PLAN OF TALK  Introduction about components  Components and component diagrams in uml 2.0  Case study.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Object Oriented Analysis and Design 1 Chapter 9 From Design to Implementation  Implementation Model  Forward, Reverse, and Round-Trip Engineering  Mapping.
Identifying classes, Packages and drawing class Diagrams, Object Diagrams and composite structure diagrams Week 07 1.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Diagrams. Typically, we view the static parts of a system using one of the four following diagrams. 1. Class diagram 2. Object diagram 3. Component diagram.
1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 April 13, 2005.
1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 November 30, 2004.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
Deployment Diagram.
CHAPTER
UML Diagrams: Class Diagrams The Static Analysis Model
UML Diagrams By Daniel Damaris Novarianto S..
Component and Deployment Diagrams
Deployment Diagram.
Course Outcomes of Object Oriented Modeling Design (17630,C604)
COMPONENT & DEPLOYMENT DIAGRAMS
Object-Oriented Analysis and Design
Unified Modeling Language
G. Pullaiah College of Engineering and Technology
Component and Deployment Diagrams
OO Methodology OO Architecture.
UML Diagrams Jung Woo.
Unified Modeling Language
More Model Elements.
UNIT – V.
IMPORTANT NOTICE TO STUDENTS:
Analysis models and design models
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005
Design Yaodong Bi.
Presentation transcript:

R R R CSE870: UML Component Diagrams Implementation Diagrams

R R R CSE870: UML Component Diagrams Implementation Diagrams Both are structural diagrams Component Diagrams: –set of components and their relationships –Illustrate static implementation view –Component maps to one or more classes, interfaces, or collaborations Deployment Diagrams: –Set of nodes and their relationships –Illustrate static deployment view of architecture –Node typically encloses one or more components

R R R CSE870: UML Component Diagrams Package General purpose mechanism for organizing elements into groups Can group classes or components. Package Name

R R R CSE870: UML Component Diagrams Component Diagram Classes Interfaces Dependency, generalization, association, and realization relationships Special kind of class diagram focusing on system’s components. Example.java

R R R CSE870: UML Component Diagrams Interfaces Definition: –Collection of operation signatures and/or attribute defns –Defines a cohesive set of behaviors Realized by: –Implemented by classes and components –Implement operations/attributes defined by interface Relationships: –A class can implement 0 or more interfaces –An interface can be implemented by 1 or more classes Notation: –Lollipop –Dashed arrow [Ambler, ]

R R R CSE870: UML Component Diagrams Sample interfaces [Ambler, ]

R R R CSE870: UML Component Diagrams Example Component Diagram [Ambler, ]

R R R CSE870: UML Component Diagrams Component Diagram Index.html Find.exe find.html Comp1.dll Comp2.dll executable library page

R R R CSE870: UML Component Diagrams Common Uses: Model source code: –model configuration mgmt Model executable releases –Release is relatively complete and consistent set of artifacts delivered to user –Release focuses on parts necessary to deliver running system –Component Diagram visualizes, specifies, and documents the decisions about the physical parts that define the software.

R R R CSE870: UML Component Diagrams Common Uses: (cont’d) Model Physical databases: –database is concrete realization of schema –schemas offer an API to persistent information –model of physical dbases represents storage of that information in tables of a relational dbase or pages of an OO dbase. –Component Diagram can represent this kind of physical database Model Adaptable systems: –can model static aspects of adaptable systems –can model dynamic aspects (in conjunction with behavioral models)

R R R CSE870: UML Component Diagrams Modeling Source Code (Forward/Reverse Eng): identify set of source code files of interest –model as components stereotyped as files Larger systems: use packages to show groups of source code files Model compilation dependencies among files

R R R CSE870: UML Component Diagrams Modeling Source Code Example 5 source code files –signal.h (header) –used by 2 other files ( signal.cpp, interp.cpp ) –interp.cpp has compilation dependency to header file ( irq.h ) –device.cpp compilation dependency to interp.cpp Signal.h {version=3.5} Signal.h {version=4.0} Signal.h {version=4.1} > Interp.cpp Signal.cpp Irq.h Device.cpp

R R R CSE870: UML Component Diagrams Component Diagram Guidelines Use Descriptive Names for Architectural Components –Use Environment-Specific Naming Conventions for Detailed Design Components –Apply Textual Stereotypes to Components Consistently –Avoid Modeling Data and User Interface Components Interfaces –Prefer Lollipop Notation To Indicate Realization of Interfaces By Components –Prefer the Left-Hand Side of A Component for Interface Lollipops –Show Only Relevant Interfaces Dependencies and Inheritance –Model Dependencies From Left To Right –Place Child Components Below Parent Components –Components Should Only Depend on Interfaces –Avoid Modeling Compilation Dependencies

R R R CSE870: UML Component Diagrams Deployment Diagrams

R R R CSE870: UML Component Diagrams Deployment Diagram Shows the configuration of: –run time processing nodes and –the components that live on them Graphically: collection of vertices and arcs

R R R CSE870: UML Component Diagrams Contents Deployment diagrams contain: –Nodes –Dependency and association relationships –may also contain components, each of which must live on some node.

R R R CSE870: UML Component Diagrams A Deployment Diagram > local network > primary server > Caching server > Caching server > server > server > server Modem bank Internet node connection

R R R CSE870: UML Component Diagrams Modeling Client-Server Architecture Identify nodes that represent system’s client and server processors Highlight those devices that are essential to the behavior –E.g.: special devices (credit card readers, badge readers, special display devices) Use stereotyping to visually distinguish

R R R CSE870: UML Component Diagrams Client-Server System Human resource system 2 pkgs: client, server Client: 2 nodes –console and kiosk –stereotyped, distinguishable Server: 2 nodes –caching server and server –Multiplicities are used client > Caching server Deploys Http.exe rting.exe > server Deploys dbadmin.exe tktmstr.exe logexc.exe console kiosk server 2..* 4..*

R R R CSE870: UML Component Diagrams Guidelines for Deployment Diagrams General [Ambler ] –Indicate Software Components on Project-Specific Diagrams –Focus on Nodes and Communication Associations on Enterprise-Level Diagrams Nodes and Components –Name Nodes With Descriptive Terms –Model Only Vital Software Components –Apply Consistent Stereotypes to Components –Apply Visual Stereotypes to Nodes Dependencies and Communication Associations –Indicate Communication Protocols Via Stereotypes –Model Only Critical Dependencies Between Components

R R R CSE870: UML Component Diagrams Sample Communication Links