Object Mentor, Inc. Or How Uncle Bob uses UML. Copyright by Object Mentor, Inc All Rights Reserved
|
|
- Deirdre Lyons
- 6 years ago
- Views:
Transcription
1 Object Mentor, Inc. Or How Uncle Bob uses UML. fitnesse.org Copyright by Object Mentor, Inc All Rights Reserved
2 The three modes of UML Conceptual Tied to human language. Specification A description of source code yet to be written. Implementation A description of source code that already exists. 2
3 Conceptual Tied to human language: Animal An Animal ISA Dog Dog 3
4 Hmmm 4
5 Tied to human language Animal Lounge Chair «SitsInA» Dog «DrinksA» Martini Led Zepplin «GroovesTo» {WayLoud} «SmokesA» Cigar 5
6 Models of the Real World Do not relate to software structure. Now it s time for: Uncle Bob s rant. Human language is not the best foundation for software structure. A Circle ISA Ellipse. 6
7 A Circle ISA Ellipse User Ellipse Circle 7
8 Specification and Implementation Are tied to code. Follow the same rules. Differ only in detail. Sometimes. 8
9 Example: public class TreeMap { TreeMapNode topnode = null; public void add(comparable key, Object value) { } public Object get(comparable key) { } } class TreeMapNode { private Comparable itskey; private Object itsvalue; private TreeMapNode nodes[] = new TreeMapNode[2]; public TreeMapNode(Comparable key, Object value) { } } public Object find(comparable key) { } public void add(comparable key, Object value) { } 9
10 Here s some UML for that. 2 nodes TreeMap + add(key, value) + get(key) topnode TreeMapNode + add(key, value) + find(key) itskey «interface» Comparable itsvalue Object 10
11 Classes and Relationships. Rectangles represent classes, and arrows represent relationships. 2 nodes TreeMap + add(key, value) + get(key) topnode TreeMapNode + add(key, value) + find(key) itskey «interface» Comparable itsvalue Object 11
12 Associations. In this diagram all the relationships are associations. Associations are simple data relationships in which one object holds a reference to, and invokes methods upon, the other. 2 nodes TreeMap + add(key, value) + get(key) topnode TreeMapNode + add(key, value) + find(key) itskey «interface» Comparable itsvalue Object 12
13 Relationship Names. The name on an association maps to the name of the variable that holds the reference. public class TreeMap { TreeMapNode topnode = null; } 2 nodes TreeMap + add(key, value) + get(key) topnode TreeMapNode + add(key, value) + find(key) itskey «interface» Comparable 13 itsvalue Object
14 Multiplicity. A number next to an arrowhead typically shows the number of instances held by the relationship. If that number is greater than one then some kind of container, like an array, is implied. class TreeMapNode { private TreeMapNode nodes[] = new TreeMapNode[2]; } 2 nodes TreeMap + add(key, value) + get(key) topnode TreeMapNode + add(key, value) + find(key) itskey «interface» Comparable 14 itsvalue Object
15 Class Icons. Class icons can have more than one compartment. The top compartment always holds the name of the class. The other compartments describe functions and variables. 2 nodes TreeMap + add(key, value) + get(key) topnode TreeMapNode + add(key, value) + find(key) itskey «interface» Comparable 15 itsvalue Object
16 Interface. The «interface» notation means that Comparable is an interface. 2 nodes TreeMap + add(key, value) + get(key) topnode TreeMapNode + add(key, value) + find(key) itskey «interface» Comparable 16 itsvalue Object
17 Optional. Most of the notations shown are optional Uncle Bob is going to rant again 2 nodes TreeMap + add(key, value) + get(key) topnode TreeMapNode + add(key, value) + find(key) itskey «interface» Comparable 17 itsvalue Object
18 <<Grimace>>. But Uncle Bob, you didn t talk about Aggregation or Composition. Rant. Car Steering Wheel 18 Engine
19 Object Diagrams. :TreeMap topnode - itskey = "Martin" nodes[less] - itskey = "Bob" nodes[greater] - itskey = "Robin" nodes[less] nodes[greater] nodes[less] nodes[greater] - itskey = "Alan" - itskey = "Don" - itskey = "Paul" - itskey = "Sam" 19
20 Freeze Frame. It shows a set of objects and relationships at a particular moment in the execution of the system. You can view it as a snapshot of memory. :TreeMap topnode - itskey = "Martin" nodes[less] - itskey = "Bob" nodes[greater] - itskey = "Robin" nodes[less] nodes[greater] nodes[less] nodes[greater] 20 - itskey = "Alan" - itskey = "Don" - itskey = "Paul" - itskey = "Sam"
21 Object Names are Underlined. the rectangle icons represent objects. You can tell that they are objects because their names are underlined. :TreeMap topnode - itskey = "Martin" nodes[less] - itskey = "Bob" nodes[greater] - itskey = "Robin" nodes[less] nodes[greater] nodes[less] nodes[greater] 21 - itskey = "Alan" - itskey = "Don" - itskey = "Paul" - itskey = "Sam"
22 Object : Class The name after the colon is the name of the class that the object belongs to. :TreeMap topnode - itskey = "Martin" nodes[less] - itskey = "Bob" nodes[greater] - itskey = "Robin" nodes[less] nodes[greater] nodes[less] nodes[greater] 22 - itskey = "Alan" - itskey = "Don" - itskey = "Paul" - itskey = "Sam"
23 Values. Note that the lower compartment of each object shows the value of that object sitskey variable. :TreeMap topnode - itskey = "Martin" nodes[less] - itskey = "Bob" nodes[greater] - itskey = "Robin" nodes[less] nodes[greater] nodes[less] nodes[greater] 23 - itskey = "Alan" - itskey = "Don" - itskey = "Paul" - itskey = "Sam"
24 Links. The relationships between the objects are called links, and are derived from the associations. :TreeMap topnode TreeMap + add(key, value) + get(key) topnode 2 nodes TreeMapNode + add(key, value) + find(key) - itskey = "Martin" itskey «interface» Comparable nodes[less] nodes[greater] itsvalue Object - itskey = "Bob" - itskey = "Robin" nodes[less] nodes[greater] nodes[less] nodes[greater] 24 - itskey = "Alan" - itskey = "Don" - itskey = "Paul" - itskey = "Sam"
25 Sequence Diagrams. public void add(comparable key,object value){ if (topnode == null) topnode = new TreeMapNode(key, value); else topnode.add(key, value); } 25
26 Actor. The stick figure (actor) represents an unknown caller. 26
27 Lifelines. The dashed lines are lifelines, they show the lifetime of the objects they descend from. 27
28 Messages. The long arrows are messages sent between the objects. 28
29 Guards. The boolean expressions inside square brackets are called guards. They show which path is taken. 29
30 Construction. The message arrow that terminates on the TreeMapNode icon represents construction. 30
31 Data Tokens The little arrows with circles are called data tokens. They show any arguments or return values. 31
32 Activations. The skinny rectangle below TreeMap is called an activation. It depicts how much time the add method executes. 32
33 Collaboration Diagrams. 1: add(key, value) :TreeMap [topnode!= null] 1.1:add(key, value) topnode 33
34 Same data as Sequence Diagrams. Collaboration diagrams make the relationships between the objects clear. 1: add(key, value) :TreeMap [topnode!= null] 1.1:add(key, value) topnode 34
35 Links (again). The objects are connected by relationships called links. A link exists wherever one object can send a message to another. 1: add(key, value) :TreeMap [topnode!= null] 1.1:add(key, value) topnode 35
36 Messages. Traveling over those links are the messages themselves. They are depicted as the smaller arrows. 1: add(key, value) :TreeMap [topnode!= null] 1.1:add(key, value) topnode 36
37 Message Labels. The messages are labeled with the name of the message, its sequence number, and any guards that apply. 1: add(key, value) :TreeMap [topnode!= null] 1.1:add(key, value) topnode 37
38 Sequence Numbers. The dot structure of the sequence number shows the calling hierarchy. 1: add(key, value) :TreeMap [topnode!= null] 1.1:add(key, value) topnode 38
39 State Diagrams. A Subway Turnstile. pass / Alarm Locked coin / Unlock pass / Lock Unlocked coin / Thankyou 39
40 States. There are two states named Locked and Unlocked. pass / Alarm Locked coin / Unlock pass / Lock Unlocked coin / Thankyou 40
41 Events. Two events may be sent to the machine. The coin event means that the user has dropped a coin into the turnstile. The pass event means that the user has passed through the turnstile. pass / Alarm Locked coin / Unlock pass / Lock Unlocked coin / Thankyou 41
42 Transitions. The arrows are called transitions. They are labeled with the event that triggers the transition and the action that the transition performs. pass / Alarm Locked coin / Unlock pass / Lock Unlocked coin / Thankyou 42
43 Interpretation. If we are in the Locked state and we get a coin event, then we transition to the Unlocked state and we invoke the Unlock function. If we are in the Unlocked state and we get a pass event, then we transition to the Locked state and we invoke the Lock function. If we are in the Unlocked state and we get a coin event, then we stay in the Unlocked state and we call thethankyou function. If we are in the Locked state and we get a pass event, then we stay in the Locked state and we call the Alarm function. pass / Alarm Locked coin / Unlock 43 pass / Lock Unlocked coin / Thankyou
44 Sufficiency. The diagrams shown in this chapter are enough for most purposes. Most programmers could live without any more knowledge of UML than what is shown here. 44
45 Tools. Now ask me what I think about tools.. 45
46 Documentation. 46
47 Where to get this presentation. 47
Class 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 informationMeltem Özturan
Meltem Özturan www.mis.boun.edu.tr/ozturan/samd 1 2 Modeling System Requirements Object Oriented Approach to Requirements OOA considers an IS as a set of objects that work together to carry out the function.
More informationLABORATORY 1 REVISION
UTCN Computer Science Department Software Design 2012/2013 LABORATORY 1 REVISION ================================================================== I. UML Revision This section focuses on reviewing the
More informationUNIT-4 Behavioral Diagrams
UNIT-4 Behavioral Diagrams P. P. Mahale Behavioral Diagrams Use Case Diagram high-level behaviors of the system, user goals, external entities: actors Sequence Diagram focus on time ordering of messages
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 informationUML Essentials Dynamic Modeling
UML Essentials Dynamic Modeling Excerpts from: Object Oriented Software Engineering by Lethbridge/Laganière and Applying UML and Patterns by Larman, C. Dynamic model (diagram) elements (model run-time)
More informationObject-oriented design. More UML
Object-oriented design More UML Interfaces An interface is a language construct specific to Java Java does not support multiple inheritance Interfaces provide some of the same functionality A Java class
More informationChapter 2: The Object-Oriented Design Process
Chapter 2: The Object-Oriented Design Process In this chapter, we will learn the development of software based on object-oriented design methodology. Chapter Topics From Problem to Code The Object and
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 informationInteraction Modelling: Sequence Diagrams
Interaction Modelling: Sequence Diagrams Fabrizio Maria Maggi Institute of Computer Science (these slides are derived from the book Object-oriented modeling and design with UML ) Interaction Modelling
More informationChapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin
Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain
More informationCS 370 REVIEW: UML Diagrams D R. M I C H A E L J. R E A L E F A L L
CS 370 REVIEW: UML Diagrams D R. M I C H A E L J. R E A L E F A L L 2 0 1 5 Introduction UML Unified Modeling Language Very well recognized specification for modeling architectures, use cases, etc. UML
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 informationPractical UML - A Hands-On Introduction for Developers
Practical UML - A Hands-On Introduction for Developers By: Randy Miller (http://gp.codegear.com/authors/edit/661.aspx) Abstract: This tutorial provides a quick introduction to the Unified Modeling Language
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 informationChapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects,
Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Classes, Class Diagrams Values and Attributes Operations
More informationIntroduction to UML Diagrams
Bern University of Applied Sciences H T I Bienne Department I Basic Programming Introduction to UML Diagrams J.-P. Dubois Content State Machine Diagrams Class Diagrams Object Diagrams Sequence Diagrams
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 informationPractical UML : A Hands-On Introduction for Developers
Borland.com Borland Developer Network Borland Support Center Borland University Worldwide Sites Login My Account Help Search Practical UML : A Hands-On Introduction for Developers - by Randy Miller Rating:
More informationUML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram
UML Fundamental NetFusion Tech. Co., Ltd. Jack Lee 2008/4/7 1 Use-case diagram Class diagram Sequence diagram OutLine Communication diagram State machine Activity diagram 2 1 What is UML? Unified Modeling
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 informationChapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee
Chapter 4 Capturing the Requirements Shari L. Pfleeger Joanne M. Atlee 4th Edition It is important to have standard notations for modeling, documenting, and communicating decisions Modeling helps us to
More informationWhat is a Class Diagram? A diagram that shows a set of classes, interfaces, and collaborations and their relationships
Class Diagram What is a Class Diagram? A diagram that shows a set of classes, interfaces, and collaborations and their relationships Why do we need Class Diagram? Focus on the conceptual and specification
More informationWhat is a Class Diagram? Class Diagram. Why do we need Class Diagram? Class - Notation. Class - Semantic 04/11/51
What is a Class Diagram? Class Diagram A diagram that shows a set of classes, interfaces, and collaborations and their relationships Why do we need Class Diagram? Focus on the conceptual and specification
More informationJava How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.
Java How to Program, 10/e Education, Inc. All Rights Reserved. Each class you create becomes a new type that can be used to declare variables and create objects. You can declare new classes as needed;
More informationIntroduction To UML PART II State Diagrams
Introduction To UML PART II State Diagrams The behavioral elements show how parts of a UML model change over time. As the system interacts with users and possibly with other systems, the objects that make
More informationInteractions A link message
Interactions An interaction is a behavior that is composed of a set of messages exchanged among a set of objects within a context to accomplish a purpose. A message specifies the communication between
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 2014 Jill Seaman Used to describe the internal structure of the system. Also used to describe the application domain. They describe
More informationAli Khan < Project Name > Design Document. Version 1.0. Group Id: S1. Supervisor Name: Sir.
< Project Name > Design Document Version 1.0 Group Id: S1. Supervisor Name: Sir. Revision History Date Version Description Author Table of Contents 1. Introduction of Design Document 2. Entity Relationship
More informationUnified Modeling Language (UML)
1.17 Software Engineering Case Study: Introduction to Object Technology and the UML (Required) Object orientation A natural way of thinking about the world and computer programs Unified Modeling Language
More informationBasic Structural Modeling. Copyright Joey Paquet,
Basic Structural Modeling Copyright Joey Paquet, 2000 1 Part I Classes Copyright Joey Paquet, 2000 2 Classes Description of a set of objects sharing the same attributes, operations and semantics Abstraction
More informationQuestion Sheet There are a number of criticisms to UML. List a number of these criticisms.
Question Sheet 1 Name: ID: These questions do not have a formal, definitive answer. They are meant to be food for thoughts. Feel free to seek answers on browsing the Internet, talking to other software
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 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 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 informationFor 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : ,
Course Code : MCS-032 Course Title : Object Oriented Analysis and Design Assignment Number : MCA (3)/032/Assign/2014-15 Assignment Marks : 100 Weightage : 25% Last Dates for Submission : 15th October,
More informationSoftware Development Cycle. Unified Modeling Language. Unified Modeling Language. Unified Modeling Language. Unified Modeling Language.
Plan for today Software Design and UML Building a software system Documenting your design using UML Process for software development People management Work management Team management Caveat: These processes
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 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 informationUML UNIFIED MODELLING LANGUAGE EXEMPLIFIED ON BLACKJACK. Object Oriented Programming (Samy Zafrany)
UML UNIFIED MODELLING LANGUAGE EXEMPLIFIED ON BLACKJACK 1 Theoretically, before we write object-oriented code for solving a problem, we need to design an abstract model which depicts the essential features
More informationOO System Models Static Views
OO System Models Static Views UML Class & Object Diagrams Software Engineering OO Models Class Diagram Slide 1 Objective Introduces the evolutionary approach for building classes Explain how to identify
More informationModeling with UML. (1) Use Case Diagram. (2) Class Diagram. (3) Interaction Diagram. (4) State Diagram
Modeling with UML A language or notation intended for analyzing, describing and documenting all aspects of the object-oriented software system. UML uses graphical notations to express the design of software
More informationSE 1: Software Requirements Specification and Analysis
SE 1: Software Requirements Specification and Analysis Lecture 9: UML Class (Concept), Object, Communication Diagrams Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445
More informationIntroduction to UML. Danang Wahyu utomo
Introduction to UML Danang Wahyu utomo danang.wu@dsn.dinus.ac.id 085 740 955 623 Evolution of OO Development Methods History of OOAD leading to UML Why Model? Analyse the problem domain - Simplify reality
More informationComputer Science for Engineers
Computer Science for Engineers Lecture 5 Object Orientation part 3 Prof. Dr. Dr.-Ing. Jivka Ovtcharova Dipl. Wi.-Ing. Dan Gutu 27 th of November 2009 Aggregation and Composition (1) A special case of an
More informationSequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c
Sequence Diagrams Massimo Felici What are Sequence Diagrams? Sequence Diagrams are interaction diagrams that detail how operations are carried out Interaction diagrams model important runtime interactions
More informationObject Oriented Methods with UML. Lecture -4
Object Oriented Methods with UML Lecture -4 Topics Class diagram with sample code Interaction diagram Sequence Diagram Collaboration Diagram Class Diagram with sample code +name: char #email: char #CNumber:
More informationDesign Patterns: State, Bridge, Visitor
Design Patterns: State, Bridge, Visitor State We ve been talking about bad uses of case statements in programs. What is one example? Another way in which case statements are sometimes used is to implement
More informationEngineering Design w/embedded Systems
1 / 40 Engineering Design w/embedded Systems Lecture 33 UML Patrick Lam University of Waterloo April 4, 2013 2 / 40 What is UML? Unified Modelling Language (UML): specify and document architecture of large
More informationObject-Oriented Design and Modeling Using the UML
Design Classes Object-Oriented Design and Modeling Using the UML Based on Chapter 18 of Whitten, Bentley, and Dittman: Systems Analysis and Design for the Global Enterprise (7th Ed). McGraw Hill. 2007
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 informationLab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester
Lab Manual Object Oriented Analysis And Design TE(Computer) VI semester Index Sr. No. Title of Programming Assignment Page No. 1 2 3 4 5 6 7 8 9 10 Study of Use Case Diagram Study of Activity Diagram Study
More informationModels are used for several purposes. We believe that some of the most important are:
Course: Objekt orientated programming, extending course Supervisor: Authors: Marc Mikael Karlsson, Sandberg Fredrik Fahlman and Martin Mileros Mälardalens Högskola, spring-2000 UML Contents 1. Introduction...
More informationUnified Modeling Language (UML)
1 / 45 Unified Modeling Language (UML) Miaoqing Huang University of Arkansas 2 / 45 Outline 1 Introduction 2 Use Case Diagram 3 Class Diagram 4 Sequence Diagram 3 / 45 Outline 1 Introduction 2 Use Case
More informationSequence Diagram. r: Register s: Sale
ACS-3913 1 Sequence Diagram A UML diagram used to show how objects interact. Example: r: Register s: Sale makepayment() makepayment() new() : Payment The above starts with a Register object, r, receiving
More informationSequence Diagram. A UML diagram used to show how objects interact. Example:
Sequence Diagram A UML diagram used to show how objects interact. Example: r: Register s: Sale makepayment() makepayment() new() : Payment The above starts with a Register object, r, receiving a makepayment
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 informationLecture 21 Detailed Design Dynamic Modeling with UML
Lecture 21 Detailed Design Dynamic Modeling with UML Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte November 18, 2008
More informationAPPENDIX M INTRODUCTION TO THE UML
M INTRODUCTION TO THE UML This appendix, written only for those readers not familiar with the topic, provides a brief introduction, which cannot be considered as exhaustive, to the UML. The UML is a general-purpose
More informationLecture 2 and 3: Fundamental Object-Oriented Concepts Kenneth M. Anderson
Lecture 2 and 3: Fundamental Object-Oriented Concepts Kenneth M. Anderson January 13, 2005 January 18, 2005 1 of 38 Lecture Goals Introduce the basic concepts of object-oriented analysis/design/programming
More informationInheritance and Polymorphism
Object Oriented Programming Designed and Presented by Dr. Ayman Elshenawy Elsefy Dept. of Systems & Computer Eng.. Al-Azhar University Website: eaymanelshenawy.wordpress.com Email : eaymanelshenawy@azhar.edu.eg
More informationCredit where Credit is Due. Lecture 4: Fundamentals of Object Technology. Goals for this Lecture. Real-World Objects
Lecture 4: Fundamentals of Object Technology Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2003 Credit where Credit is Due Some material presented in this lecture
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 informationEE 446 EMBEDDED ARCHITECTURE Embedded System in UML (2)
EE 446 EMBEDDED ARCHITECTURE Embedded System in UML (2) Airs Lin PART I CLASS DIAGRAMS System Analysis and Design. Identify the information system s purpose 2. Identify the information system s actors
More informationUML (Unified Modeling Language)
UML (Unified Modeling Language) UML Outline Software Institute of Nanjing University 2009 Instructor 刘嘉 (Liu Jia) Email : liujia@software.nju.edu.cn ext : 509 Office : 705 2 References [1] The Unified
More informationUML Component Diagrams A.Y 2018/2019
UML Component Diagrams A.Y 2018/2019 Component diagrams Component diagrams are integral to building your software system. Drawn out with UML diagramming software, they help your team understand the structure
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 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 informationSystem Sequence Diagrams. Based on Craig Larman, Chapter 10 and Anuradha Dharani s notes
System Sequence Diagrams Based on Craig Larman, Chapter 10 and Anuradha Dharani s notes Dynamic behaviors Class diagrams represent static relationships. Why? What about modeling dynamic behavior? Interaction
More informationUnified Modeling Language (UML) Object Diagram and Interaction Diagrams
1 / 17 Unified Modeling Language (UML) and Miaoqing Huang University of Arkansas Spring 2010 2 / 17 Outline 1 2 3 / 17 Outline 1 2 4 / 17 A snapshot of the objects in a system at a point in time Object:
More informationCS211 Lecture: Modeling Dynamic Behaviors of Systems; Interaction Diagrams in UML
CS211 Lecture: Modeling Dynamic Behaviors of Systems; Interaction Diagrams in UML Objectives: 1. To introduce the notion of dynamic analysis 2. To show how to create and read Sequence Diagrams 3. To show
More informationMAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified)
Subject Code: 17630 Model Answer Page No: 1 /32 Important Instructions to examiners: 1) The answers should be examined by keywords and not as word-to-word as given in the model answer scheme. 2) The model
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 informationCS 451 Software Engineering
CS 451 Software Engineering Yuanfang Cai Room 104, University Crossings 215.895.0298 yfcai@cs.drexel.edu 1 Elaboration 2 Elaboration: Building the Analysis Model An analysis model provides a description
More informationComputer Science II. OO Programming Classes Scott C Johnson Rochester Institute of Technology
Computer Science II OO Programming Classes Scott C Johnson Rochester Institute of Technology Outline Object-Oriented (OO) Programming Review Initial Implementation Constructors Other Standard Behaviors
More informationUnified Modeling Language
jonas.kvarnstrom@liu.se 2015 Unified Modeling Language A Brief Introduction History In the early 1990s, three common OO modeling approaches James Rumbaugh's Object-modeling technique (OMT) 2 Grady Booch's
More informationIntroduction to Software Engineering. 6. Modeling Behaviour
Introduction to Software Engineering 6. Modeling Behaviour Roadmap > Use Case Diagrams > Sequence Diagrams > Collaboration (Communication) Diagrams > Activity Diagrams > Statechart Diagrams Nested statecharts
More informationUML & OO Fundamentals. CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 3 09/04/2012
UML & OO Fundamentals CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 3 09/04/2012 1 Goals of the Lecture Review the material in Chapter 2 of the Textbook Cover key parts of the UML notation
More informationModeling Diagrams for OO Programs (Chapter 14) Questions:
Modeling Diagrams for OO Programs (Chapter 14) Questions: 1 1. Let s say that your company, Hotorola, has decided to launch a $100 Million Dollar project to develop a new line of cell phones with brand
More information7. UML Sequence Diagrams Page 1 of 1
7. UML Sequence Diagrams Page 1 of 1 Sequence Diagram in UML In the last article, we saw Activity diagrams, the notations to be used in Activity diagrams, their significance, and how to build an Activity
More informationA Rapid Overview of UML
A Rapid Overview of UML The Unified dmodeling Language (UML) Emerged in the mid 90s as the de facto standard for softwareengineering engineering design Use case diagram depicts user interaction with system
More informationInteraction Modelling: Use Cases
Interaction Modelling: Use Cases Fabrizio Maria Maggi Institute of Computer Science (these slides are derived from the book Object-oriented modeling and design with UML ) Interaction Modelling: INPUT 1
More informationObject Fundamentals Part Two. Kenneth M. Anderson University of Colorado, Boulder CSCI 4448/5448 Lecture 3 09/01/2009
Object Fundamentals Part Two Kenneth M. Anderson University of Colorado, Boulder CSCI 4448/5448 Lecture 3 09/01/2009 1 Lecture Goals Continue our tour of the basic concepts, terminology, and notations
More informationUML Sequence Diagrams for Process Views
UML Sequence Diagrams for Process Views With some material from MartyStepp lectures, Wi07. Outline UML class diagrams recap UML sequence diagrams UML wrapup More detail: http://dn.codegear.com/article/31863#sequence-diagrams
More informationCHAPTER 5 ARCHITECTURAL DESIGN SE211 SOFTWARE DESIGN
CHAPTER 5 ARCHITECTURAL DESIGN SE211 SOFTWARE DESIGN Assist. Prof. Dr. Volkan TUNALI Faculty of Engineering and Natural Sciences / Maltepe University OVERVIEW 2 SECTION 1 Architectural Design SECTION 2
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 informationLecture 7: Classes and Objects CS2301
Lecture 7: Classes and Objects NADA ALZAHRANI CS2301 1 What is OOP? Object-oriented programming (OOP) involves programming using objects. An object represents an entity in the real world that can be distinctly
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 informationLecture 17: (Architecture V)
Lecture 17: (Architecture V) Software System Design and Implementation ITCS/ITIS 6112/8112 091 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte Oct. 30,
More informationRSARTE Icons. Mattias Mohlin Senior Software Architect IBM
RSARTE Icons Mattias Mohlin Senior Software Architect IBM MODEL ELEMENTS...2 DIAGRAMS...3 VIRTUAL FOLDERS...3 FILES AND FOLDERS...4 OVERLAY ICONS...4 DIAGRAM DECORATOR ICONS...5 This document explains
More informationSYMMETRY v.1 (square)
Symmetry with Code - v1 George Gadanidis 2017 researchideas.ca/sym 1 SYMMETRY v.1 (square) What is symmetry? I can t remember. Help! SQUARE PUZZLE My teacher loves puzzles I do too! Here is the latest
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 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 informationWhat s Next. INF 117 Project in Software Engineering. Lecture Notes -Spring Quarter, Michele Rousseau Set 6 System Architecture, UML
What s Next INF 117 Project in Software Engineering Lecture Notes -Spring Quarter, 2008 Michele Rousseau Set 6 System Architecture, UML Set 6 2 Announcements kreqs should be complete Except minor changes
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 informationSoftware Modelling. UML Class Diagram Notation. Unified Modeling Language (UML) UML Modelling. CS 247: Software Engineering Principles
CS 247: Software Engineering Principles UML Modelling InStacks Software Modelling Publication[p] borrow(m,p) / BorrowItem(m, p, today) return(p) / ReturnItem(p, today) OnLoan lost A software model is an
More informationStructured and Object Oriented Analysis and Design
RAMRAO ADIK INSTITUTE OF TECHNOLOGY, NERUL Department of Computer Engineering Lab Manual Structured and Object Oriented Analysis and Design 2015-2016 List of Experiments Subject: Structured and object
More informationThe three element types, connected by relations, can form sentences of sorts.
Archi Overview ArchiMate ArchiMate is built from three types of elements: elements that act (active elements) elements that represent the behavior of those elements that act (behavioral elements) elements
More information1: Introduction to Object (1)
1: Introduction to Object (1) 김동원 2003.01.20 Overview (1) The progress of abstraction Smalltalk Class & Object Interface The hidden implementation Reusing the implementation Inheritance: Reusing the interface
More informationObject-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 8: Modelling Interactions and Behaviour
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour 8.1 Interaction Diagrams Interaction diagrams are used to model the
More information