1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.

Slides:



Advertisements
Similar presentations
UML (Sequence Diagrams, Collaboration and State Chart Diagrams) Presentation By - SANDEEP REDDY CHEEDEPUDI (Student No: ) - VISHNU CHANDRADAS (Student.
Advertisements

Modelling Class T05 Conceptual Modelling – Domain References: –Conceptual Modeling of Information Systems (Chapters 1.2.1, 2, 3) –A practical Guide to.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
© 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.
Object-Oriented Analysis and Design
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Introduction to UML Visual modeling Models and its importance
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.
© 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.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Unified Modeling Language
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
What is Software Architecture?
2005/05/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Introduction to the Unified Modeling Language “The act of drawing a diagram does not constitute analysis or design. … Still, having a well-defined and.
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.
Unified Modeling Language, Version 2.0
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Software Architecture in Practice Architectural description (The reduced version)
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Modelling Class T16: Conceptual Modelling – Architecture Image from
Unified Modeling Language © 2002 by Dietrich and Urban1 ADVANCED DATABASE CONCEPTS Unified Modeling Language Susan D. Urban and Suzanne W. Dietrich Department.
Documenting Software Architectures 1.Uses and Audiences for Architecture Documentation Architecture documentation serves as a means of education Architecture.
16 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 7 Unified Modeling Language.
TAL7011 – Lecture 4 UML for Architecture Modeling.
R R R CSE870: UML Component Diagrams Implementation Diagrams.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
Lecture 1: UML Class Diagram September 12, UML Class Diagrams2 What is a Class Diagram? A class diagram describes the types of objects in the system.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Part VII: Design Continuous
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.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Analysis Yaodong Bi. Introduction to Analysis Purposes of Analysis – Resolve issues related to interference, concurrency, and conflicts among use cases.
Chapter 3: Introducing the UML
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
Introduction to UML Hazleen Aris Software Eng. Dept., College of IT, UNITEN. …Unified Modeling Language.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
WELCOME TO OUR PRESENTATION UNIFIED MODELING LANGUAGE (UML)
UML (Unified Modeling Language)
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
R R R CSE870: UML Component Diagrams Implementation Diagrams.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Systems Analysis and Design With UML 2
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
Software Architecture & Design Pattern
Object Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
UML profiles.
Presentation transcript:

1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University

Outline 1. Introduction 2. Unified Modeling Language 3. Module Views 4. Component-and-Connector Views 5. Allocation Views 6. Summary 2

Unified Modeling Language (UML) Lecture: 10 3

1. Introduction Unified Modeling Language (UML) is a standardized general-purpose modeling language The standard is managed, and was created, by the Object Management Group in 1997 UML includes a set of graphic notation techniques to create visual models of object-oriented software UML is used to specify, visualize, modify, construct and document the artifacts of a software It can be used with all processes, throughout the software development life cycle, and across different implementation technologies 4

Introduction (Continue…) UML has become de facto industry standard UML models may be automatically transformed to other representations (e.g. Java) UML is extensible, with two mechanisms for customization: profiles and stereotypes UML 2.2 has 14 types of diagrams divided into two categories  Seven diagram types represent structural information  Seven diagram types represent general types of behavior Four that represent different aspects of interactions 5

Introduction (Continue…) 6

2. Unified Modeling Language Architecture in some sense expresses what is essential about a software system, and it is independent of languages & notations to capture it UML makes its main contribution in a view's primary presentation and secondary contribution in the behavior of an element or group of elements Architect can augment UML pictures with necessary supporting documentation for a certain use UML provides no direct support for components, connectors, interface semantics, or many other aspects of a system that are supremely architectural 7

3. Module Views Interfaces  UML uses a "lollipop" to denote an interface, which can be appended to classes and subsystems, among other things  UML also allows a class symbol (box) to be stereotyped as an interface The open-headed dashed arrow shows that an element realizes an interface  The bottom of the class symbol can be annotated with the interface's signature information 8

Module Views (Continue…) 9

Modules  UML has a class construct, which is the object-oriented specialization of a module  Packages can be used in cases where grouping of functionality is important, such as to represent layers and classes  The subsystem construct can be used if a specification of interface and behavior is required  Module decomposition relies on the "is-part-of" relation  The module uses view relies on the dependency relation  The module class view relies on the generalization, or "is- a" relation (also called "inheritance") 10

Module Views (Continue…) 11

Module Views (Continue…) Aggregation 12

Module Views (Continue…) Generalization 13

Module Views (Continue…) Dependency 14

4. Component-and-Connector Views There is no single preferred strategy to document component-and-connector (C&C) views in UML, Each alternative has its advantages and disadvantages One natural candidate for representing component- and-connector types begins with the UML class concept 15

Component-and-Connector Views (Continue…) 16

Component-and-Connector Views (Continue…) Components  The type/instance relationship in architectural descriptions is a close match to the class/object relationship in a UML model  The full set of UML descriptive mechanisms is available to describe the structure, properties, and behavior of a class Properties of architectural components can be represented as class attributes or with associations Behavior can be described using UML behavioral models Generalization can be used to relate a set of component types 17

Component-and-Connector Views (Continue…) Interfaces (Ports) 18

Component-and-Connector Views (Continue…) Connectors 1. Connector types as associations and connector instances as links. In an architectural box-and-line diagram of a system, the lines between components are connectors. 2. Connector types as association classes. In this way, the connector type or connector attributes can be captured as attributes of a class or object. 3. Connector types as classes and connector instances as objects. One way to give connectors first-class status in UML is to represent connector types as classes and connector instances as objects. 19

5. Allocation Views In UML, a deployment diagram is a graph of nodes connected by communication associations Nodes may contain component instances, which indicates that the component lives or runs on the node. Components may contain objects, which indicates that the object is part of the component Components are connected to other components by dashed-arrow dependencies  This indicates that one component uses the services of another 20

Allocation Views (Continue…) The deployment type diagram may also be used to show which components may run on which nodes by using dashed arrows with the stereotype «supports» 21

Allocation Views (Continue…) 22

23 Summary Any Questions?