Software Design, Modelling and Analysis in UML
|
|
- Stella Andrews
- 6 years ago
- Views:
Transcription
1 Software Design, Modelling and Analysis in UML Lecture 08: Class Diagrams II main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany
2 Contents & Goals Last Lectures: class diagram except for associations; visibility within OCL type system This Lecture: Educational Objectives: Capabilities for following tasks/questions. Please explain this class diagram with associations. Which annotations of an association arrow are semantically relevant? What s a role name? What s it good for? What s multiplicity? How did we treat them semantically? What is reading direction, navigability, ownership,...? What s the difference between aggregation and composition? Sprelim Content: Study concrete syntax for associations. (Temporarily) extend signature, define mapping from diagram to signature. Study effect on OCL. Where do we put OCL constraints? 2/50
3 Associations: Syntax 3/ main
4 UML Class Diagram Syntax [Oestereich, 2006] Klassendiagramm Klasse Sichtbarkeit: + public element # protected element private element ~ package element Abstrakte Klasse «Stereotyp1, Stereotyp2» Paket::Klasse attribut operation() «Stereotyp1» attribut = wert Syntax für Attribute: Sichtbarkeit Attributname : Paket::Typ [Multiplizität Ordnung] = Initialwert {Eigenschaftswerte} Eigenschaftswerte: {readonly}, {ordered}, {composite} Syntax für Operationen: Sichtbarkeit Operationsname (Parameterliste):Rückgabetyp {Eigenschaftswerte} Parameterliste: Richtung Name : Typ = Standardwert Eigenschaftswerte: {query} Richtung: in, out, inout Entity Control Boundary Aktive Klasse Parametrisierte Klasse<Parameter> i:element Parametrisierbare Klasse Objektdiagramm Objekt Aktives Objekt Objekt:Klasse attribut = wert :Klasse Objekt Vererbung Attributierte Assoziation Assoziation Assoziationsklasse gerichtete Assoziation qualifizierte Assoziation Qualifizierer Realisierung Ganzes Aggregation Komposition Mehrgliedrige Assoziation Teil Existenzabhängiges Teil Sassocsyn Abhängige Klasse Anbieter "Stecker" bereitgestellte Schnittstelle genutzte Schnittstelle "Buchse" Schnittstelle Abhängigkeit Klasse Unabhängige Klasse Nutzer Anbieter Nutzer 2006 by oose.de GmbH Aktuelle Fassung, Info und Download: «interface» Schnittstelle-A «interface» Schnittstelle-A 1 Multiplizität Leserichtung «Stereotyp» Beziehungsname * {ordered} rolle Klasse3 «interface» Schnittstelle operation1() operation2() Sichtbarkeit rolle Notiz UML-Notationsübersicht Teil 1/4 4/50
5 UML Class Diagram Syntax [Oestereich, 2006] Vererbung Attributierte Assoziation Assoziation Assoziationsklasse gerichtete Assoziation qualifizierte Assoziation Qualifizierer Realisierung Ganzes Aggregation Komposition Mehrgliedrige Assoziation Teil Existenzabhängiges Teil Sassocsyn Abhängige Klasse Anbieter "Stecker" bereitgestellte Schnittstelle genutzte Schnittstelle "Buchse" Schnittstelle Abhängigkeit Klasse Unabhängige Klasse Nutzer Anbieter Nutzer 2006 by oose.de GmbH Aktuelle Fassung, Info und Download: «interface» Schnittstelle-A «interface» Schnittstelle-A 1 Multiplizität Leserichtung «Stereotyp» Beziehungsname * {ordered} rolle Klasse3 «interface» Schnittstelle operation1() operation2() Sichtbarkeit rolle Notiz UML-Notationsübersicht Teil 1/4 5/50
6 UML Class Diagram Syntax [OMG, 2007b, 61;43] A enda endb * BinaryAssociationAB * B A a 1..4 b 2..5 B Figure Graphic notation indicating exactly one association end owned by the association C c 1..4 d 2..5 D E e 1..4 f 2..5 F G g 1..4 h 2..5 H A B Sassocsyn i j I J Figure Examples of navigable ends A Figure Combining line path graphics B 6/50
7 What Do We (Have to) Cover? Assoziation An association has gerichtete Assoziation a name, a reading direction, and qualifizierte Assoziation Qualifizierer at least two ends. Each end has Attributierte Assoziation a role name, a multiplicity, Assoziationsklasse Sassocsyn a set of properties, such as unique, ordered, etc. a qualifier, a visibility, a navigability, an ownership, and possibly a diamond. Wanted: places in the signature to represent the information from the picture. Ganzes 1 Multiplizität Leserichtung «Stereotyp» Beziehungsname * {ordered} rolle Aggregation Komposition Mehrgliedrige Assoziation Klasse3 Teil Existenzabhängiges Teil Sichtbarkeit rolle 7/50
8 (Temporarily) Extend Signature: Associations Only for the course of Lectures 08/09 we assume that each attribute in V either is v : τ, ξ,expr 0, P v with τ Ì (as before), Sassocsyn or is an association of the form where n 2 (at least two ends), r : role 1 : C 1, µ 1, P 1, ξ 1, ν 1, o 1,. role n : C n, µ n, P n, ξ n, ν n, o n r, role i are just names, C i, 1 i n, the multiplicity µ i is an expression of the form µ ::= N N..M N.. µ, µ (N,M N) P i is a set of properties (as before), ξ {+,, #, } (as before), ν i {,, >} is the navigability, o i B is the ownership. 8/50
9 Sassocsyn (Temporarily) Extend Signature: Associations Only for the course of Lectures 08/09 we assume that each attribute in V either is v : τ, ξ,expr 0, P v Ì with τ (as before), or is an association of the form r : role 1 : C 1, µ 1, P 1, ξ 1, ν 1, o 1, Alternative syntax for multiplicities:. µ ::= N..M N.. µ, µ (N, M N { }) role n : C n, n, P n, ξ n, ν n, o n and define and N as abbreviations. where Note: n N2 (at could leastabbreviate two ends), 0..N, 1..N, or N..N. We use last one. r, role i are just names, C i, 1 i n, the multiplicity µ i is an expression of the form µ ::= N N..M N.. µ, µ (N,M N) P i is a set of properties (as before), ξ {+,, #, } (as before), ν i {,, >} is the navigability, o i B is the ownership. 8/50
10 (Temporarily) Extend Signature: Basic Type Attributes Also only for the course of this lecture we only consider basic type attributes to belong to a class (to appear in atr(c)), associations are not owned by a particular class (do not appear in atr(c)), but live on their own Sassocsyn Formally: we only call (Ì,, V,atr) a signature (extended for associations) if atr : 2 {v V }. v:τ,τ Ì 9/50
11 From Association Lines to Extended Signatures C 1 r C 2. C n r : role 1 : C 1, µ 1, P 1, ξ 1, ν 1, o 1 maps to. P i role n : C n, µ n, P n, ξ n, ν n, o n ξ i role i C i µ i Sassocsyn o i = 1, if C i ν i = 0, if C i, if C i, if C i >, if C i 10/50
12 Association Example C c 0.. r +n 0.. x : Int D Signature: = ({Int}, {C, D},{x : Int, Ë r : c : D, 0.., {unique},,, 0, n : C, 0.., {unique}, +, >, 1 }, {C, D {x}}) Sassocsyn 11/50
13 What If Things Are Missing? Most components of associations or association end may be omitted. For instance [OMG, 2007b, 17], Section 6.4.2, proposes the following rules: Name: Use if the name is missing. A C 1 C n Example: C A C D D for C D Sassocsyn Reading Direction: no default. Role Name: use the class name at that end in lower-case letters Example: c d C D for C D Other convention: (used e.g. by modelling tool Rhapsody) itsc itsd C D for C D 12/50
14 What If Things Are Missing? Multiplicity: 1 In my opinion, it s safer to assume 0..1 or if there are no fixed, written, agreed conventions ( expect the worst ). Properties: Visibility: public Navigability and Ownership: not so easy. [OMG, 2007b, 43] Sassocsyn Various options may be chosen for showing navigation arrows on a diagram. In practice, it is often convenient to suppress some of the arrows and crosses and just show exceptional situations: Show all arrows and x s. Navigation and its absence are made completely explicit. Suppress all arrows and x s. No inference can be drawn about navigation. This is similar to any situation in which information is suppressed from a view. Suppress arrows for associations with navigability in both directions, and show arrows only for associations with one- way navigability. In this case, the two-way navigability cannot be distinguished from situations where there is no navigation at all; however, the latter case occurs rarely in practice. 13/50
15 Wait, If Omitting Things......is causing so much trouble (e.g. leading to misunderstanding), why does the standard say In practice, it is often convenient...? Is it a good idea to trade convenience for precision/unambiguity? Sassocsyn It depends. Convenience as such is a legitimate goal. In UML-As-Sketch mode, precision doesn t matter, so convenience (for writer) can even be a primary goal. In UML-As-Blueprint mode, precision is the primary goal. And misunderstandings are in most cases annoying. But: (even in UML-As-Blueprint mode) If all associations in your model have multiplicity, then it s probably a good idea not to write all these s. So: tell the reader about it and leave out the s. 14/50
16
17 Association Semantics 15/ main
18 Overview What s left? Named association with at least two typed ends, each having a role name, a multiplicity, a set of properties, a visibility, a navigability, and an ownership Sassocover The Plan: Extend system states, introduce so-called links as instances of associations depends on name and on type and number of ends. Integrate role name and multiplicity into OCL syntax/semantics. Extend typing rules to care for visibility and navigability Consider multiplicity also as part of the constraints set Inv(CD). Properties: for now assume P v = {unique}. Properties (in general) and ownership: later. 16/50
19 Association Semantics: The System State Aspect main 17/50
20 Associations in General Recall: We consider associations of the following form: r : role 1 : C 1, µ 1, P 1, ξ 1, ν 1, o 1,..., role n : C n, µ n, P n, ξ n, ν n, o n Only these parts are relevant for extended system states: r : role 1 : C 1,, P 1,,,,..., role n : C n,, P n,,, (recall: we assume P 1 = P n = {unique}). The UML standard thinks of associations as n-ary relations which live on their own in a system state Sassocsem That is, links (= association instances) do not belong (in general) to certain objects (in contrast to pointers, e.g.) are first-class citizens next to objects, are (in general) not directed (in contrast to pointers). 18/50
21 Links in System States r : role 1 : C 1,, P 1,,,,..., role n : C n,, P n,,, Only for the course of lectures 07/08 we change the definition of system states: Sassocsem Definition. Let be a structure of the (extended) signature = (Ì,, V,atr). Ë A system state Ë of wrt. is a pair (σ, λ) consisting of a type-consistent mapping σ : ( ) (atr( ) (Ì )), a mapping λ which assigns each association r : role 1 : C 1,..., role n : C n V a relation λ(r) (C 1 ) (C n ) (i.e. a set of type-consistent n-tuples of identities). 19/50
22
23 Association/Link Example C n 0.. x : Int D Signature: = ({Int}, {C, D},{x : Int, Ë A C D : c : C, 0.., +, {unique},, 1, n : D, 0.., +, {unique}, >, 0 }, {C, D {x}}) Sassocsem A system state of Ë (some reasonable ) is (σ, λ) with: σ = {1 C, 3 D {x 1}, 7 D {x 2}} λ = {A C D {(1 C, 3 D ), (1 C, 7 D )}} 20/50
24 Extended System States and Object Diagrams Legitimate question: how do we represent system states such as σ = {1 C, 3 D {x 1}, 7 D {x 2}} λ = {A C D {(1 C, 3 D ), (1 C, 7 D )}} as object diagram? Sassocsem 21/50
25 References 49/ main
26 References [Oestereich, 2006] Oestereich, B. (2006). Analyse und Design mit UML 2.1, 8. Auflage. Oldenbourg, 8. edition. [OMG, 2007a] OMG (2007a). Unified modeling language: Infrastructure, version Technical Report formal/ [OMG, 2007b] OMG (2007b). Unified modeling language: Superstructure, version Technical Report formal/ main 50/50
Software Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 07: Class Diagrams II 2009-11-12 07 2009-11-12 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents
More information/50 5/50 2/50 3/50 6/50. UML-Notationsübersicht. Teil 1/4. Figure Examples of navigable ends. enda. endb main
a c e g i b d f h j * * Software Design, Modelling and Analysis in UML Lecture 07: Class Diagrams II 20--30 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany UML
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 06: Class Diagrams I 2013-11-11 06 2013-11-11 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Course
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 06: Class Diagrams I 2013-11-11 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Course Map UML W N E Model
More informationSoftware Design, Modelling and Analysis in UML
ourse Map ontents & Goals UML W N E Last Lecture: OL Semantics Software Design, Modelling and Analysis in UML Lecture 05: lass Diagrams I 2011-11-15 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität
More informationLecture 07: Class Diagrams II
Software Design, Modelling and Analysis in UML Lecture 07: lass Diagrams II 2014-11-13 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany ontents & Goals Last Lecture:
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 05: Class Diagrams I 2012-11-07 05 2012-11-07 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Course
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 02: Semantical Model 2013-10-23 02 2013-10-23 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 07: A Type System for Visibility 2013-11-18 07 2013-11-18 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg,
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 03: Object Constraint Language (OCL) 2013-10-28 03 2013-10-28 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg,
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 03: Object Constraint Language (OCL) 2013-10-28 03 2013-10-28 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg,
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 03: Object Constraint Language (OCL) 2012-10-30 03 2012-10-30 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg,
More informationLecture 02: Semantical Model
Software Design, Modelling and Analysis in UML Lecture 02: Semantical Model 2014-10-23 02 2014-10-23 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents
More informationLecture 15: Hierarchical State Machines I
Software Design, Modelling and Analysis in UML Lecture 15: Hierarchical State Machines I 2015-01-08 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal 15 2015-01-08 main Albert-Ludwigs-Universität Freiburg,
More informationLecture 03: Object Constraint Language
Software Design, Modelling and Analysis in UML Lecture 03: Object Constraint Language 2016-10-27 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany 03 2016-10-27
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 03: Object Constraint Language (OCL) 2011-11-02 03 2011-11-02 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg,
More informationLecture 16: Hierarchical State Machines II
Software Design, Modelling and Analysis in UML Lecture 6: Hierarchical State Machines II 206-0-9 6 206-0-9 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany
More informationLecture 10: State Machines Overview
Software Design, Modelling and Analysis in UML Lecture 10: State Machines Overview 2015-12-03 10 2015-12-03 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany
More informationCOSC 3351 Software Design. An Introduction to UML (I)
COSC 3351 Software Design An Introduction to UML (I) This lecture contains material from: http://wps.prenhall.com/esm_pfleeger_softengtp_2 http://sunset.usc.edu/classes/cs577a_2000/lectures/05/ec-05.ppt
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 20: Inheritance III 2012-02-14 20 2012-02-14 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents
More informationModel Driven Development Unified Modeling Language (UML)
Model Driven Development Unified Modeling Language (UML) An Overview UML UML is a modeling notation standardized by OMG (proposal 1997, ver.1.1 in 1998, ver. 2.0 in 2004) now in 2.4.1 mature based on notations
More informationPrinciples of Software Construction: Objects, Design and Concurrency. Just enough UML. toad
Principles of Software Construction: Objects, Design and Concurrency Just enough UML 15-214 toad Christian Kästner Charlie Garrod School of Computer Science With slides from Klaus Ostermann Learning Goals
More informationIntroduction to Software Engineering. 5. Modeling Objects and Classes
Introduction to Software Engineering 5. Modeling Objects and Classes Roadmap > UML Overview > Classes, attributes and operations > UML Lines and Arrows > Parameterized Classes, Interfaces and Utilities
More informationCSE 403: Software Engineering, Spring courses.cs.washington.edu/courses/cse403/15sp/ UML Class Diagrams. Emina Torlak
CSE 403: Software Engineering, Spring 2015 courses.cs.washington.edu/courses/cse403/15sp/ UML Class Diagrams Emina Torlak emina@cs.washington.edu Outline Designing classes Overview of UML UML class diagrams
More informationModellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico
Modellistica Medica Maria Grazia Pia INFN Genova Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Lezione 6 UML Introduction Structural diagrams Basics What is? Please explain
More informationUML Modeling I. Instructor: Yongjie Zheng September 3, CS 490MT/5555 Software Methods and Tools
UML Modeling I Instructor: Yongjie Zheng September 3, 2015 CS 490MT/5555 Software Methods and Tools Object-Oriented Design: Topics & Skills Rational Unified Process Unified Modeling Languages (UML) Provide
More informationModel Driven Architecture Action Semantics and Action Languages
Model Driven Architecture Action Semantics and Action Languages Prof. Dr. Peter Thiemann Universität Freiburg 28.06.2006 Action Semantics What is it? OMG sanctioned approach to define the low-level behavior
More informationUnified Modeling Language (UML) Class Diagram
1 / 10 Unified Modeling Language (UML) Class Diagram Miaoqing Huang University of Arkansas Spring 2010 2 / 10 Outline 1 2 3 / 10 Class Diagram Class diagrams show the static structure of the classes that
More informationMetamodeling. Janos Sztipanovits ISIS, Vanderbilt University
Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages
More informationSOFTWARE DESIGN COSC 4353 / Dr. Raj Singh
SOFTWARE DESIGN COSC 4353 / 6353 Dr. Raj Singh UML - History 2 The Unified Modeling Language (UML) is a general purpose modeling language designed to provide a standard way to visualize the design of a
More informationCourse "Softwaretechnik" Book Chapter 2 Modeling with UML
Course "Softwaretechnik" Book Chapter 2 Modeling with UML Lutz Prechelt, Bernd Bruegge, Allen H. Dutoit Freie Universität Berlin, Institut für Informatik http://www.inf.fu-berlin.de/inst/ag-se/ Modeling,
More informationIntro to Modelling and UML
CSCD01 Engineering Large Software Systems Intro to Modelling and UML Joe Bettridge Winter 2018 With thanks to Anya Tafliovich and Steve Easterbrook Getting Started So, you ve just started working on a
More informationA - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models
CS 494 Object-Oriented Analysis & Design UML Class Models Overview How class models are used? Perspectives Classes: attributes and operations Associations Multiplicity Generalization and Inheritance Aggregation
More informationSOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis.
SOFTWARE ENGINEERING UML FUNDAMENTALS Saulius Ragaišis saulius.ragaisis@mif.vu.lt Information source Slides are prepared on the basis of Bernd Oestereich, Developing Software with UML: Object- Oriented
More informationIntroducing the UML Eng. Mohammed T. Abo Alroos
Introducing the UML Eng. Mohammed T. Abo Alroos Islamic University of Gaza Introduction to the UML: The UML stands for Unified Modeling Language. It was released in 1997 as a method to diagram software
More informationCS313D: ADVANCED PROGRAMMING LANGUAGE
CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 4 : Classes & Objects Lecture Contents What is a class? Class definition: Data Methods Constructors Properties (set/get) objects
More informationCSCU9T4: Managing Information
CSCU9T4: Managing Information CSCU9T4 Spring 2016 1 The Module Module co-ordinator: Dr Gabriela Ochoa Lectures by: Prof Leslie Smith (l.s.smith@cs.stir.ac.uk) and Dr Nadarajen Veerapen (nve@cs.stir.ac.uk)
More informationDeveloping Shlaer-Mellor Models Using UML
Developing Shlaer-Mellor Models Using UML Stephen J. Mellor Neil Lang Project Technology, Inc. 10940 Bigge Street San Leandro, California 94577 (510) 567-0255 http://www.projtech.com This position paper
More informationOBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization
OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization 2016 Software Engineering 2 (Zoom-Into Design) Requirement Requirement Specification (Functional & Non- Functional) analysis Requirement
More informationSoftware Service Engineering
Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language
More information2 UML for OOAD. 2.1 What is UML? 2.2 Classes in UML 2.3 Relations in UML 2.4 Static and Dynamic Design with UML. UML for OOAD Stefan Kluth 1
2 UML for OOAD 2.1 What is UML? 2.2 Classes in UML 2.3 Relations in UML 2.4 Static and Dynamic Design with UML UML for OOAD Stefan Kluth 1 2.1 UML Background "The Unified Modelling Language (UML) is a
More informationadministrivia today UML start design patterns Tuesday, September 28, 2010
administrivia Assignment 2? promise to get past assignment 1 back soon exam on monday review slides are posted your responsibility to review covers through last week today UML start design patterns 1 Unified
More informationObject-Oriented Software Engineering Practical Software Development using UML and Java
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical
More informationUnified Modeling Language (UML)
Unified Modeling Language (UML) Troy Mockenhaupt Chi-Hang ( Alex) Lin Pejman ( PJ ) Yedidsion Overview Definition History Behavior Diagrams Interaction Diagrams Structural Diagrams Tools Effect on Software
More informationOBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization
OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop detailed sequence diagrams
More informationSUMMARY: MODEL DRIVEN SECURITY
SUMMARY: MODEL DRIVEN SECURITY JAN-FILIP ZAGALAK, JZAGALAK@STUDENT.ETHZ.CH Model Driven Security: From UML Models to Access Control Infrastructres David Basin, Juergen Doser, ETH Zuerich Torsten lodderstedt,
More informationLecture Contents CS313D: ADVANCED PROGRAMMING LANGUAGE
CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 4 : Classes & Objects Lecture Contents What is a class? Class definition: Data Methods Constructors Properties (set/get) objects
More informationIngegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML
Ingegneria del Software Corso di Laurea in Informatica per il Management Introduction to UML Davide Rossi Dipartimento di Informatica Università di Bologna Modeling A model is an (abstract) representation
More informationUML. By Somenath Mukhopadhyay.
UML By som@som-itsolutions.com What is the UML? Stands for unified modelling language Is the successor of OOAD methods It unifies the methods of Booch, Rumbaugh and Jacobson Now a standard with Object
More informationuser.book Page 45 Friday, April 8, :05 AM Part 2 BASIC STRUCTURAL MODELING
user.book Page 45 Friday, April 8, 2005 10:05 AM Part 2 BASIC STRUCTURAL MODELING user.book Page 46 Friday, April 8, 2005 10:05 AM user.book Page 47 Friday, April 8, 2005 10:05 AM Chapter 4 CLASSES In
More informationObject-Oriented Systems Development: Using the Unified Modeling Language
Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 5: Unified Modeling Language Goals Modeling. Unified modeling language. Class diagram. Use case diagram. Interaction diagrams.
More informationIntroduction to UML and Class Diagrams
Introduction to UML and Class Diagrams Engineering 5895 Faculty of Engineering & Applied Science Memorial University of Newfoundland 1 / 31 UML Unified Modelling Language (UML) UML is a graphical modelling
More informationSoftwaretechnik Model Driven Architecture Meta Modeling
Softwaretechnik Model Driven Architecture Meta Modeling Prof. Dr. Peter Thiemann Universität Freiburg 22.06.2009 PT (Univ. Freiburg) Softwaretechnik Model Driven Architecture Meta Modeling 22.06.2009 1
More information12 Tutorial on UML. TIMe TIMe Electronic Textbook
TIMe TIMe Electronic Textbook 12 Tutorial on UML Introduction......................................................2.................................................3 Diagrams in UML..................................................3
More informationA Conceptual Model of the UML
CONTENT A Conceptual Model of the UML Building Blocks of the UML 1. Things [1.1] Structural Things (1.1.1) Class (1.1.2) Interface (1.1.3) Collaboration: (1.1.4) Use case (1.1.5) Components: (1.1.6) Node:
More informationCS313D: ADVANCED PROGRAMMING LANGUAGE
CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 4 (a): Classes & Objects Lecture Contents 2 What is a class? Class definition: Data Methods Constructors objects Static members
More informationClass diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch
Class diagrams Modeling with UML Chapter 2, part 2 CS 4354 Summer II 2015 Jill Seaman Used to describe the internal structure of the system. Also used to describe the application domain. They describe
More informationLecture 09. Spring 2018 Borough of Manhattan Community College
Lecture 09 Spring 2018 Borough of Manhattan Community College 1 Entity Relationship Modeling The Entity Relationship (ER) is a nontechnical communication model that describes the nature of the data and
More informationUnified Modeling Language (UML)
Appendix H Unified Modeling Language (UML) Preview The Unified Modeling Language (UML) is an object-oriented modeling language sponsored by the Object Management Group (OMG) and published as a standard
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 1: Introduction 2011-10-25 1 2011-10-25 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents
More informationNOTES ON OBJECT-ORIENTED MODELING AND DESIGN
NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented
More informationCS313D: ADVANCED PROGRAMMING LANGUAGE
CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 4 : Classes & Objects Lecture Contents What is a class? Class definition: Data Methods Constructors Properties (set/get) objects
More information2.1 Introduction UML Preliminaries Class diagrams Modelling delegation... 4
Department of Computer Science COS121 Lecture Notes Chapter 2- Memento design pattern Copyright c 2015 by Linda Marshall and Vreda Pieterse. All rights reserved. Contents 2.1 Introduction.................................
More informationLecture 8: Use Cases and Scenarios
Softwaretechnik / Software-Engineering Lecture 8: Use Cases and Scenarios 2016-06-02 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany 8 2016-06-02 main Topic
More informationUNIT-II Introduction to UML
UNIT-II Introduction to UML - P. P. Mahale UML OVERVIEW OF UML :- We need a Modeling Language! We will use the Unified Modeling Language, UML), Provides a standard for artifacts produced during development
More informationObjectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams
Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop interaction diagrams based on the principles of object responsibility and use case controllers
More informationClass Diagram. Classes consist of. Note that class diagrams contain only classes, not objects.
Class Diagrams UML Class Diagram Classes consist of the class name written in BOLD features attributes and methods user-defined constraints Note that class diagrams contain only classes, not objects. Class
More informationIntroduction to UML What is UML? Motivations for UML Types of UML diagrams UML syntax Descriptions of the various diagram types Rational Rose (IBM.. M
Introduction to UML Part I 1 What is UML? Unified Modeling Language, a standard language for designing and documenting a system in an object- oriented manner. It s a language by which technical architects
More informationUML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus
UML 2.0 Division of Computer Science, College of Computing Hanyang University ERICA Campus Introduction to UML 2.0 UML Unified Modeling Language Visual language for specifying, constructing and documenting
More informationClass diagrams and architectural design
Class diagrams and architectural design Perdita Stevens School of Informatics University of Edinburgh More unified modelling language We saw use case diagrams, which are part of UML, the Unified Modelling
More informationUML Tutorial. Unified Modeling Language UML Tutorial
UML Tutorial Unified Modeling Language UML Tutorial A Unified Modeling Language is a language for specifying, constructing, visualizing and documenting the software system and its components. UML is a
More informationChapter 2: Entity-Relationship Model
Chapter 2: Entity-Relationship Model! Entity Sets! Relationship Sets! Design Issues! Mapping Constraints! Keys! E-R Diagram! Extended E-R Features! Design of an E-R Database Schema! Reduction of an E-R
More informationClass Diagram. Classes consist of. Note that class diagrams contain only classes, not objects.
Class Diagrams UML Class Diagram Classes consist of the class name written in BOLD features attributes and methods user defined constraints Note that class diagrams contain only classes, not objects. Class
More informationIntroduction to UML and Class Diagrams
Introduction to UML and Class Diagrams Engineering 5895 Faculty of Engineering & Applied Science Memorial University of Newfoundland 2017, T. S. Norvell, A. Vardy 1 / 34 UML Unified Modelling Language
More informationRecency Types for Dynamically-Typed, Object-Based Languages
Recency Types for Dynamically-Typed, Object-Based Languages Phillip Heidegger, Peter Thiemann Albert-Ludwigs-Universität Freiburg 15.10.2008 Task: Maintenance Finding bugs in JavaScript programs Understanding
More informationData and Process Modelling
Data and Process Modelling Lab 4. UML Classic Diagrams and ORM Marco Montali KRD Research Centre for Knowledge and Data Faculty of Computer Science Free University of ozen-olzano.y. 2014/2015 Marco Montali
More information10 Modelling Multimedia Applications
10 Modelling Multimedia Applications 10.1 Model-Driven Development 10.2 Multimedia Modeling Language MML Literature: M. Jeckle, C. Rupp, J. Hahn, B. Zengler, S. Queins: UML Glasklar, Hanser Wissenschaft
More informationOO Techniques & UML Class Diagrams
OO Techniques & UML Class Diagrams SE3A04 Tutorial Jason Jaskolka Department of Computing and Software Faculty of Engineering McMaster University Hamilton, Ontario, Canada jaskolj@mcmaster.ca October 17,
More informationUML REFERENCE SHEETS. 2013, 2014 Michael Marking; all rights reserved, including moral rights. Web site:
UML Reference Sheets 2013, 2014 Michael Marking; all rights reserved, including moral rights. Web site: http://www.tatanka.com/ Revision Information This document was last revised 2014.03.02. The current
More informationBusiness Process Modelling
CS565 - Business Process & Workflow Management Systems Business Process Modelling CS 565 - Lecture 2 20/2/17 1 Business Process Lifecycle Enactment: Operation Monitoring Maintenance Evaluation: Process
More informationUse of UML in Tranmodel
February 2017 Use of UML in Tranmodel Public Transport Reference Data Model (Transmodel) CEN TC278/WG3/SG4 PT0302 Table of Contents Introduction... 2 Typographic conventions... 2 Methodology for conceptual
More informationDesign and UML Class Diagrams
Design and UML Class Diagrams 1 Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.com/article/31863 UML DistilledCh. 3, by M. Fowler How do people draw / write
More informationUnified Modeling Language
Unified Modeling Language Modeling Applications using Language Mappings Programmer s Reference Manual How to use this Reference Card: The consists of a set of fundamental modeling elements which appear
More informationUnified Modeling Language (UML) and Modeling
LECTURE-11 Unified Modeling Language (UML) and Modeling UML is a graphical notation useful for OO analysis and design Allows representing various aspects of the system Various notations are used to build
More informationOntological Modeling: Part 7
Ontological Modeling: Part 7 Terry Halpin LogicBlox and INTI International University This is the seventh in a series of articles on ontology-based approaches to modeling. The main focus is on popular
More informationTopic : Object Oriented Design Principles
Topic : Object Oriented Design Principles Software Engineering Faculty of Computing Universiti Teknologi Malaysia Objectives Describe the differences between requirements activities and design activities
More informationSupporting Modeling in the Large in Fujaba
Supporting Modeling in the Large in Thomas Buchmann Angewandte Informatik 1 Universität Bayreuth D-95440 Bayreuth thomas.buchmann@unibayreuth.de Alexander Dotor Angewandte Informatik 1 Universität Bayreuth
More informationGraphical Notation for Topic Maps (GTM)
Graphical Notation for Topic Maps (GTM) 2005.11.12 Jaeho Lee University of Seoul jaeho@uos.ac.kr 1 Outline 2 Motivation Requirements for GTM Goals, Scope, Constraints, and Issues Survey on existing approaches
More informationS T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A
S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A G R A M S ) WHAT IS CLASS DIAGRAM? A class diagram
More informationObject-Oriented Design
Object-Oriented Design Lecturer: Raman Ramsin Lecture 10: Analysis Packages 1 Analysis Workflow: Packages The analysis workflow consists of the following activities: Architectural analysis Analyze a use
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2004 Vol. 3, No. 7, July-August 2004 UML 2 Activity and Action Models Part 5: Partitions
More informationSoftware Engineering Lab Manual
Kingdom of Saudi Arabia Ministry Education Prince Sattam Bin Abdulaziz University College of Computer Engineering and Sciences Department of Computer Science Software Engineering Lab Manual 1 Background:-
More informationModeling variability with UML
Modeling variability with UML Matthias Clauß Intershop Research Software Engineering Group Intershop, Jena Dresden University of Technology Matthias.Clauss@gmx.de Keywords: product families, domain modeling,
More informationLesson 11. W.C.Udwela Department of Mathematics & Computer Science
Lesson 11 INTRODUCING UML W.C.Udwela Department of Mathematics & Computer Science Why we model? Central part of all the activities We build model to Communicate Visualize and control Better understand
More informationUML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011
UML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011 1 Goals of the Lecture Review the material in Chapter 2 of the Textbook Cover key parts of the UML notation
More informationDETC A NEW EVENT MODEL FOR PML
Proceedings of the ASME 2009 International Design Engineering Technical Conferences & Computers and Information in Engineering Conference IDETC/CIE 2009 August 30-September 2, 2009, San Diego, USA DETC2009-87298
More informationLecture 08: Scenarios and Use Cases
Introduction evelopment Process, Metrics Requirements ngineering rchitecture & esign onstructive Models Testing, Formal Verification Invited Talks Wrap-Up L 1: 20.4., Mo T 1: 23.4., o L 2: 27.4., Mo L
More informationObject-Oriented Design
Object-Oriented Design Lecture 15: Refining Analysis Relationships Department of Computer Engineering Sharif University of Technology 1 Refining Analysis Relationships Relationships in analysis are converted
More informationObject-Oriented and Classical Software Engineering
Slide 16.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 16 Slide 16.2 MORE ON UML 1 Chapter Overview Slide
More information1/17/2014. UML Help and Details (from: UML for cse UML for a class. UML and project clarifications
UML Help and Details (from: http://enwikipediaorg/wiki/class_diagram) Sharma Chakravarthy Information Technology Laboratory (IT Lab) Computer Science and Engineering Department The University of Texas
More information