Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.

Slides:



Advertisements
Similar presentations
By Philippe Kruchten Rational Software
Advertisements

UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
COMPONENT DIAGRAM in UML 2.0 Veronica Carrega
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Architectural Modeling Notations.
2008/03/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.
UML Static diagrams. Static View: UML Component Diagram Component diagrams show the organization and dependencies among software components. Component:
C OMPONENT & D EPLOYMENT D IAGRAMS Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
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.
CS 432 Object-Oriented Analysis and Design
© Copyright Eliyahu Brutman Programming Techniques Course.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
An Introduction to Rational Rose Real-Time
2005/05/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.
UML Packages & Related Diagrams
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.
An Introduction to Software Architecture
Prepared by: Sanaz Helmi Hoda Akbari Zahra Ahmadi Sharif University of Tech. Summer 2006 An Introduction to.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Software Architecture in Practice Architectural description (The reduced version)
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Software Architecture and Design Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 23 rd, 2003.
Modelling Class T16: Conceptual Modelling – Architecture Image from
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
UML Diagrams A tool for presentation of Architecture.
CBSE 2014 Modeling Components with UML. Bibliography Modelling components in UML – Main text: Kim Hamilton, Russell Miles, Learning UML 2.0, OReilly,
Web Applications Extensions (WAE) for UML UML helps manage the complexity by encouraging us to think of things in terms of objects and encapsulate properties.
TAL7011 – Lecture 4 UML for Architecture Modeling.
Implementation Diagrams
R R R CSE870: UML Component Diagrams Implementation Diagrams.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Component, Deployment and Package Diagrams CSIS3600.
UML / UML 2.0 Diagrams (Part I) 1. Overview of the 13 diagrams of UML Structure diagrams 1.Class diagram 2.Composite structure diagram (*) 3.Component.
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.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
Identifying classes, Packages and drawing class Diagrams, Object Diagrams and composite structure diagrams Week 07 1.
CS223: Software Engineering Lecture 13: Software Architecture.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
Component Diagram. Component diagram Show the structural relationships between components of a system Depicts how components are wired together to form.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
Two New UML Diagram Types Component Diagram Deployment Diagram.
R R R CSE870: UML Component Diagrams Implementation Diagrams.
GOVT. ENGINEERING COLLEGE, AJMER. A SEMINAR PRESENTATION ON UNIFIED MODELING LANGUAGE(UML) SUBMITTED TO:-PRESENTED BY:- Dr. REENA DADHICHPALLAVI VASHISTHA.
Deployment Diagram.
Method – Notation 8 Hours.
UML Diagrams By Daniel Damaris Novarianto S..
Component and Deployment Diagrams
Customizing custom.
Deployment Diagram.
Software Architecture and Quality BY
COMPONENT & DEPLOYMENT DIAGRAMS
UML Diagrams Jung Woo.
Object Oriented Analysis and Design
What is an Architecture?
Unified Modeling Language
More Model Elements.
IMPORTANT NOTICE TO STUDENTS:
Analysis models and design models
An Introduction to Software Architecture
What is an Architecture?
Presentation transcript:

Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College

Smith’s Aerospace © P. Bailey & K. Vander Linden, Architecture ● Every system has an architecture ● Forms the basis for – Common understanding among stakeholders – High level and detailed design – Assignment of resources

Smith’s Aerospace © P. Bailey & K. Vander Linden, Architecture Software Architecture Technical Architecture Enterprise

Smith’s Aerospace © P. Bailey & K. Vander Linden, Software Architecture The architecture of a software-intensive system is the structure or structures of the system, which comprise software elements, the externally visible properties of those elements, and the relationships among them.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Component and Deployment A component is a code module. Component diagrams are physical analogs of class diagram. Deployment diagrams show the physical configurations of software and hardware.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Component in Rhapsody A component is a physical subsystem in the form of a library or executable program or other software components such as scripts, command files, documents, or databases. Its role is important in the modeling of large systems that comprise several libraries and executables. For example, the Rhapsody application itself is made up of many components, including the graphic editors, browser, code generator, and animator, all provided in the form of a library.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Components: Key Points ● A component is a logical, replaceable part of a system that conforms to and provides the realization of a set of interfaces. ● Good components define crisp abstractions with well-defined interfaces. ● Interfaces allow you to build the implementation of a component using smaller components.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Terms ● Interface – collection of operations that specify a service that is provided or requested. ● Component – replaceable part of the system ● Port – a specific window into an encapsulated component accepting messages to and from the component conforming to specified interfaces. ● Internal structure – internal implementation of component ● Part – specification of a role that composes part of the implementation of a component. ● Connector – is a communication relationship between two parts or ports within the context of a component.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Interface Anatomy ( component required interface provided interface dependency name_A name_b Ref:The Unified Modeling Language User Guide (2 nd Ed),Booche et el

Smith’s Aerospace © P. Bailey & K. Vander Linden, To see the details... name_A name_b > ImpObject req_read() Realization usage Ref:The Unified Modeling Language User Guide (2 nd Ed),Booche et el

Smith’s Aerospace © P. Bailey & K. Vander Linden, The port... Ticket Seller bidirectional port Booking Load Attractions ) Required Interface Credit Cards attractions charging port port nameinterface name normal sales priority sales Ticket Sales component declaration Ref:The Unified Modeling Language User Guide (2 nd Ed),Booche et el

Smith’s Aerospace © P. Bailey & K. Vander Linden, Port vs Interface ● A port is instantiated. It exists. ● An interface is a definition – a standard.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Hierarchy & Connectors Catalog Sales inventory :OrderHandlinginventory ( :FindItems :ShipItemsdirect connector delegation connector :OrderEntry :Fullfillment charging:Credit :OrderHandoff Ref:The Unified Modeling Language User Guide (2 nd Ed),Booche et el

Smith’s Aerospace © P. Bailey & K. Vander Linden, Ref:

Smith’s Aerospace © P. Bailey & K. Vander Linden, One aspect of a component that is not included in a component diagram is how to create the configurations that are part of a component. Configurations specify how the component should be built, such as the target environment, initialization needed, and checks to perform on the model before code is generated. On the other hand, it can provide you a road map to configuration management. A note …

Smith’s Aerospace © P. Bailey & K. Vander Linden,

Smith’s Aerospace © P. Bailey & K. Vander Linden, Deployment diagrams show the configuration of run-time processing elements and the software component instances that reside on them. Use deployment diagrams to specify the run-time physical architecture of a system. Deployment diagrams are graphs of nodes connected by communication associations. Component instances are assigned to run on specific nodes during program execution. Relation lines represent communication paths between nodes. Deployment in Rhapsody

Smith’s Aerospace © P. Bailey & K. Vander Linden, Nodes represent devices or other resources that store and process instances during run time. For example, a node can represent a type of CPU. A node can be owned only by a package—nodes cannot be nested inside other nodes. Nodes can contain component instances.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Connection The connection is a solid line between nodes to represent the “physical” connection between the nodes.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Execution Environment This is a specialized node which can execute artifacts such as components. Unix Server 1 > transaction persistence Explicit services

Smith’s Aerospace © P. Bailey & K. Vander Linden, Component instances represent executable processes, objects, or libraries that run or reside on processing resources (nodes) during program execution. They are represented by the UML component symbol: a box with two small rectangles on the left side. A component instance is an instance of a component type. Unlike components, there is no special naming convention for component instances. Drawing a component instance inside a node indicates that the component instance lives or runs on that node during run time.

Smith’s Aerospace © P. Bailey & K. Vander Linden, Component Instance Example and Dependency A dependency represents a requirement by one component instance of information or services provided by another. Dependencies can also be drawn between nodes. You can add a dependency using the Dependency tool or the browser. >

Smith’s Aerospace © P. Bailey & K. Vander Linden, Case Study

Smith’s Aerospace © P. Bailey & K. Vander Linden,

Smith’s Aerospace © P. Bailey & K. Vander Linden,