Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts

Size: px
Start display at page:

Download "Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts"

Transcription

1 Object-Oriented Analysis and Design Analysis vs. Design Analysis Activities Finding the Objects/ Classes An Analysis Example The Unified Modeling Language Pre-UML Situation Early 90s Explosion of OO methods/notations No agreed terminology No standards No method/notation that satisfies a users needs completely Booch, OMT and OOSE among the most popular methods New generations of methods/notations Unification efforts OOSD--fall'04 Copyright by jubo@cs.umu.se 28 OOSD--fall'04 Copyright by jubo@cs.umu.se 29 Unification Efforts UML consortium Booch, OMT and OOSE Rational Booch, Rumbaugh (10/94) Jacobson (fall 95) Unified (v0.8, 10/95) UML consortium ( 96) UML (v0.9, 06/96) Unified process ( 98/ 99) OPEN consortium Fusion, MOSES, SOMA Firesmith, Graham, Henderson-Sellers, Yourdon, Toolbox approach Tailorable The Unified Modeling Language UML partners: Microsoft, Oracle, IBM, HP, Ericsson,... Here v1.4 (no visible difference to v1.5) Notations (8 official diagram types) Use case diagram Class diagram Interaction diagram Sequence diagram Collaboration diagram Statechart diagram Activity diagram Component diagram Deployment diagram OMG standard (v1.1, 11/97) ISO standard (v1.3, 10/00) OML ( 97) OPEN process ( 97) Integration with UML? OOSD--fall'04 Copyright by jubo@cs.umu.se 30 XMI (XML Metadata Interchange, standardised XML- DTD for UML, developed by an IBM-lead consortium) UML 2.0 adopted (draft, 06/03) OOSD--fall'04 Copyright by jubo@cs.umu.se 31

2 Rational s 4+1 View Logical View Process View packages, classes, scenarios, STDs Use Case View processes, threads, synchronization Implementation View actors, use cases Deployment View physical nodes subsystems, modules, code UML 2.0 Infrastructure: UML kernel and extension mechanisms Superstructure: UML user level constructs OCL: Object Constraint Language Diagram Interchange The UML metamodel describes the UML model elements Abstract syntax in terms of UML Well-formedness rules in terms of OCL and English prose Semantics (model usage) in terms English prose OOSD--fall'04 Copyright by jubo@cs.umu.se 32 OOSD--fall'04 Copyright by jubo@cs.umu.se 33 UML 2.0 Diagrams Organising Models Packages diagrams are used to organise models Defines namespaces á la C++ GUI User Forms Admin Forms javax.swing DB Interface Can be used for all diagram types Inofficial UML1.x diagram OOSD--fall'04 Copyright by jubo@cs.umu.se 34 OOSD--fall'04 Copyright by jubo@cs.umu.se 35

3 Class Diagrams Static analysis and design models Types of objects and their (static) interrelationships Basically similar to UML2.0 (but more carefully defined) Main elements: <class name> Classes <attribute list> Attributes Methods Relationships <method list> Dependency Association strength Aggregation/Composition Generalisation Realisation OOSD--fall'04 Copyright by 36 Class Notations Analysis Window Window size: Area maxsize create() resize() repaint() Design Window {author = Joe, status = tested} +size: Area = (100, 100) #maxsize: Rectangle -xwindowptr -components [*] {ordered} +create() +resize( in f: real = 1.25): Area #repaint( in gc: Graphics) Attribute :: [visibility] [/] name [: type] [multiplicity] [= default-value] [{ property-string }] Operation :: [visibility] name ( [parameter-list] ) [: return-type [{ property-string }]] Parameter :: [direction] name : type-expression [multiplicity] [= default-value] [{ property-string }] OOSD--fall'04 Copyright by jubo@cs.umu.se 37 Dependency Dependencies define a usage relationship A change in the used thing may affect things that use it Dependencies can have names (there is a set of predefined dependency keywords stereotypes) VideoClip name play( on: Channel) start() stop() rewind() <<use>> Channel Association 1 Associations specify structural relationships It specifies that objects are interconnected Associations can be navigated in both directions (default) Associations are quite similar to the relationships known from ER modelling Associations have cardinalities Associated classes may have roles Company * Works-for 1..* employer employee Person OOSD--fall'04 Copyright by jubo@cs.umu.se 38 OOSD--fall'04 Copyright by jubo@cs.umu.se 39

4 Association 2 Associations may have attributes and behaviour (association classes) Association classes are quite similar to the relationship types known from ER modelling Association names may have reading directions Aggregation and Composition Aggregation and composition are specific associations They denote the part-of or has relationship Composition is the stronger form Parts are not shared Parts are existence dependent on the whole Company * Works-for 1..* employer employee Person Aggregation 1 Polygon 1 Composition Job salary worker * boss 0..1 Manages Point 3..* 1 Graphics color Texture OOSD--fall'04 Copyright by jubo@cs.umu.se 40 OOSD--fall'04 Copyright by jubo@cs.umu.se 41 Generalisation Generalisation specifies the is-a relationship It is the strongest relationship between classes Subclasses inherit properties from superclasses Shown as class hierarchies Also known as specialisation or inheritance Person Notes, Constraints, Qualifiers, and Interfaces BankAccount balance compare () Responsibilities: -- keep current balance -- handle deposits and withdrawals {> 0} {or} CID PersNr Corporation Person gender: {female, male} wife 0..1 husband 0..1 Student Employee Sortable Notes, like this one can be attached to any notational element {self.wife.gender = #female and self.husband.gender = #male} A constraint written in OCL (Object Constraint Language) Mentor Manager OOSD--fall'04 Copyright by jubo@cs.umu.se 42 OOSD--fall'04 Copyright by jubo@cs.umu.se 43

5 Some Guidelines for Class Diagrams Keep the analysis model simple Many simple classes are better than a few complex ones Use meaningful and familiar names Avoid god classes, behaviour should be distributed among classes Use multiple inheritance very sparely Try to avoid the too general dependency Associate methods with the providers of a service, i.e. the responsible classes Name all associations Document your model carefully Sequence Diagrams Graphical notation for scenarios Describe how objects collaborate to provide a service Good tool to uncover missing behaviour and/or missing objects/classes Very useful to document CRC role-plays Sequence diagrams OIDs (see [OOTC 97]) Collaboration diagrams are semantically equivalent, but focus on structural relationships between objects OOSD--fall'04 Copyright by jubo@cs.umu.se 44 OOSD--fall'04 Copyright by jubo@cs.umu.se 45 Sequence Diagram Example Sequence Diagram Details add a course time :Registrar 1: enter id 3: create course 4: enter course info 5: submit 8: close form Course Maintenance Form 2: verify id 6: create 7: save tdbc18: Course The lifeline of the object An activation bar Provide lots of annotations Comments (script text) Object creation and deletion Message return Conditional messages and Iteration... Supports notations for concurrency Timing and activation Asynchronous messages Quite some changes in UML2.0 OOSD--fall'04 Copyright by jubo@cs.umu.se 46 OOSD--fall'04 Copyright by jubo@cs.umu.se 47

6 Some Guidelines for Sequence Diagrams Keep the analysis scenarios simple (do not overspecify your OIDs) Analysis scenarios should usually be initiated by an actor Discriminate instances of the same class Make all assumption clear, use pre- and postconditions Concentrate on the major scenarios Manage consistency between use cases, scenarios/oids, and class diagrams Focus on general behaviour, do not implement methods too early (in UML2.0 you could actually do that) The GSS Case Study Continued 1 Assign a judge to an event An event has a judging panels assigned to it The judging panel consists of qualified scorers for this event How could this work? :League_Official assign( thejudge) success theevent is_assigned is_qualified( theevent) addjudge( thejudge) thejudge [is_assigned == `false and is_qualified == `true ] is_qualified( theevent, thejudge) Shouldn't there be a third party to decide on that???? OOSD--fall'04 Copyright by jubo@cs.umu.se 48 OOSD--fall'04 Copyright by jubo@cs.umu.se 49 The GSS Case Study Continued 2 Alternative 1: Let Event handle qualified scorers Make Event an abstract class Defer determination of qualified scorers to specific event classes Competition 5 Judge is_assigned( ): boolean 1 * Judging Panel 1..n Event {abstract} assign( Judge) is_qualified( Judge) BalanceBeam Floor Vault The GSS Case Study Continued 3 Alternative 2..n: Try to give other existing classes this responsibility League Equipment... Define a special purpose class Find out where this responsibility lies in the real world OOSD--fall'04 Copyright by jubo@cs.umu.se 50 OOSD--fall'04 Copyright by jubo@cs.umu.se 51

7 Statechart Diagrams 1 Graphical notation for class behaviour modelling Describe all possible states and state changes triggered by external stimuli Good tool to describe complex object life cycles Good tool to uncover missing state information and behaviour start An internal transition A deferred event <state name> <attribute list> entry / <action> exit / <action> do / <action> <event> / <action> <event> / defer event trigger [guard condition]/ action if event then if condition then trigger transition; execute action else nothing happens; <state name> stop Statechart Diagrams 2 States can be nested Substates may be concurrent Transitions may have multiple sources and/or destinations Basically unchanged in UML2.0 OOSD--fall'04 Copyright by jubo@cs.umu.se 52 OOSD--fall'04 Copyright by jubo@cs.umu.se 53 Some Guidelines for Statechart Diagrams Use STDs when there is (complex) state- dependent behaviour Use STDs when you are not sure when things can (are allowed to) happen Ensure that all events are covered Ensure that all states are reachable Ensure that all states can be exited Ensure that all transitions can be triggered Check each pair of states for missing transactions Check consistency with other models Contents Introduction Object-Oriented Software Development Project Management Requirements Gathering (G)UI Design Object-Oriented Analysis and Design Advanced Topics in OOA&D Implementation and Testing References OOSD--fall'04 Copyright by jubo@cs.umu.se 54 OOSD--fall'04 Copyright by jubo@cs.umu.se 61

8 Implementation and Testing REMEMBER: This no programming course. We assume you already know something about this topic from earlier courses. Some links are available from the course web page. OOSD--fall'04 Copyright by 62

Model Driven Development Unified Modeling Language (UML)

Model 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 information

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach? Department: Information Technology Questions Bank Class: B.E. (I.T) Prof. Bhujbal Dnyaneshwar K. Subject: Object Oriented Modeling & Design dnyanesh.bhujbal11@gmail.com ------------------------------------------------------------------------------------------------------------

More information

OO Analysis and Design with UML 2 and UP

OO Analysis and Design with UML 2 and UP OO Analysis and Design with UML 2 and UP Dr. Jim Arlow, Zuhlke Engineering Limited Clear View Training 2008 v2.5 1 UML principles Clear View Training 2008 v2.5 2 1.2 What is UML? Unified Modelling Language

More information

12 Tutorial on UML. TIMe TIMe Electronic Textbook

12 Tutorial on UML. TIMe TIMe Electronic Textbook TIMe TIMe Electronic Textbook 12 Tutorial on UML Introduction......................................................2.................................................3 Diagrams in UML..................................................3

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Ingegneria 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 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 information

A - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models

A - 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 information

Modellistica 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 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 information

Course "Softwaretechnik" Book Chapter 2 Modeling with UML

Course 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 information

Introduction to Software Engineering. 5. Modeling Objects and Classes

Introduction 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 information

Object Oriented Modeling

Object Oriented Modeling Overview UML Unified Modeling Language What is Modeling? What is UML? A brief history of UML Understanding the basics of UML UML diagrams UML Modeling tools 2 Modeling Object Oriented Modeling Describing

More information

3.0 Object-Oriented Modeling Using UML

3.0 Object-Oriented Modeling Using UML 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: Introduction to UML Summary: History of OOAD leading to UML UML Diagrams: Overview UML Models in the Objectory Software Development Process Literature:

More information

Oral Questions. Unit-1 Concepts. Oral Question/Assignment/Gate Question with Answer

Oral Questions. Unit-1 Concepts. Oral Question/Assignment/Gate Question with Answer Unit-1 Concepts Oral Question/Assignment/Gate Question with Answer The Meta-Object Facility (MOF) is an Object Management Group (OMG) standard for model-driven engineering Object Management Group (OMG)

More information

Index. Add Diagram > Sequence Diagram command,

Index. Add Diagram > Sequence Diagram command, Quatrani.book Page 183 Monday, May 8, 2006 11:56 AM Index A abstraction, 3 actions completing before processing, 54 55 data flowing through, 53 passing control between, 51 performing, 155 157 as round-cornered

More information

Unified Modeling Language (UML)

Unified 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 information

Enterprise Architect Training Courses

Enterprise Architect Training Courses On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object

More information

Models are used for several purposes. We believe that some of the most important are:

Models 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 information

Unified Modelling Language

Unified Modelling Language Unified Modelling Language Phil Robinson What is the UML? A language that unifies the industry s best engineering practices for modelling software systems Goals Simple and extensible Broad application

More information

UML Modeling I. Instructor: Yongjie Zheng September 3, CS 490MT/5555 Software Methods and Tools

UML 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 information

Object Oriented System Development

Object Oriented System Development Object Oriented System Development Ratna Wardani Semester Genap, 2012 2/26/2012 Ratna W/PSBO2012 1 About This Course It shows how to apply OOAD technique to analyze and develop systems.. It gives you an

More information

Meltem Özturan

Meltem Ö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 information

Software Service Engineering

Software 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 information

Object-Oriented Systems Development: Using the Unified Modeling Language

Object-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 information

An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram

An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram After studying this chapter you should be able to: Define an object. Understand the terms

More information

COSC 3351 Software Design. An Introduction to UML (I)

COSC 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 information

Engineering Design w/embedded Systems

Engineering 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 information

Software Engineering with Objects and Components Open Issues and Course Summary

Software Engineering with Objects and Components Open Issues and Course Summary Software Engineering with Objects and Components Open Issues and Course Summary Massimo Felici Software Engineering with Objects and Components Software development process Lifecycle models and main stages

More information

Object-Oriented and Classical Software Engineering

Object-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 information

UML 2.0 State Machines

UML 2.0 State Machines UML 2.0 State Machines Frederic.Mallet@unice.fr Université Nice Sophia Antipolis M1 Formalisms for the functional and temporal analysis With R. de Simone Objectives UML, OMG and MDA Main diagrams in UML

More information

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Metamodeling. 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 information

Software Engineering from a

Software Engineering from a Software Engineering from a modeling perspective Robert B. France Dept. of Computer Science Colorado State University USA france@cs.colostate.edu Softwaredevelopment problems Little or no prior planning

More information

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram

UML 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 information

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

SOFTWARE 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 information

UML Primer. -Elango Sundaram

UML Primer. -Elango Sundaram UML Primer -Elango Sundaram About UML UML Can be thought of as a blue print for Software Graphical notation for expressing underlying OOA&D ideas Can be used to design any type of application, hardware,

More information

ISO/IEC INTERNATIONAL STANDARD. Information technology Open Distributed Processing Unified Modeling Language (UML) Version 1.4.

ISO/IEC INTERNATIONAL STANDARD. Information technology Open Distributed Processing Unified Modeling Language (UML) Version 1.4. INTERNATIONAL STANDARD ISO/IEC 19501 First edition 2005-04-01 Information technology Open Distributed Processing Unified Modeling Language (UML) Version 1.4.2 Technologies de l'information Traitement distribué

More information

What's New in UML 2.0

What's New in UML 2.0 What's New in UML 2.0 M.W.Richardson Lead Applications Engineer I-Logix UK mrichardson@ilogix.com What is UML? Unified Modeling Language Comprehensive full life-cycle 3 rd Generation modeling language

More information

CS 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 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 information

Lecture 33 April 4, Unied Modelling Language. ECE155: Engineering Design with Embedded Systems Winter Patrick Lam version 1

Lecture 33 April 4, Unied Modelling Language. ECE155: Engineering Design with Embedded Systems Winter Patrick Lam version 1 ECE155: Engineering Design with Embedded Systems Winter 2013 Lecture 33 April 4, 2013 Patrick Lam version 1 Unied Modelling Language The Unied Modelling Language (UML) is a language for specifying and

More information

The UML Extension Mechanisms

The UML Extension Mechanisms Jasmine Farhad Dept of Computer Science University College London 13-Dec-02 The UML Extension Mechanisms Introduction There is an important need for organisations to evolve in today s market. This has

More information

Introduction to Software Engineering. 5. Modeling Objects and Classes

Introduction 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 information

CISC 322 Software Architecture

CISC 322 Software Architecture CISC 322 Software Architecture UML - The Unified Modelling Language Nicolas Bettenburg 1 DEFINITION The Unified Modelling Language (UML) is a graphical language for visualizing, specifying, constructing,

More information

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis.

SOFTWARE 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 information

Unified Modeling Language (UML)

Unified 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 information

Architecture and the UML

Architecture and the UML Architecture and the UML Models, Views, and A model is a complete description of a system from a particular perspective Use Case Use Case Sequence Use Case Use Case Use Case State State Class State State

More information

Representing System Architecture

Representing System Architecture Representing System Architecture Logical View Implementation View End-user Functionality Programmers Software management Use Case View System integrators Performance Scalability Throughput Process View

More information

06. Analysis Modeling

06. Analysis Modeling 06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches

More information

OMG Modeling Glossary B

OMG Modeling Glossary B OMG Modeling Glossary B This glossary defines the terms that are used to describe the Unified Modeling Language (UML) and the Meta Object Facility (MOF). In addition to UML and MOF specific terminology,

More information

UML part I. UML part I 1/41

UML part I. UML part I 1/41 UML part I UML part I 1/41 UML part I 2/41 UML - Unified Modeling Language unified it can be shared among workers modeling it can be used for description of software model language it has defined structure

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-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 information

IS 0020 Program Design and Software Tools

IS 0020 Program Design and Software Tools 1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 April 13, 2005 What is UML? 2 The Unified Modelling Language is a standard notation to model [object oriented] systems.

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : ,

For 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 information

Course 3 7 March

Course 3 7 March Course 3 7 March adiftene@info.uaic.ro 1 From Courses 1, 2 Modeling Modeling Languages Graphic Languages UML History UML Definition UML Diagram Types UML Use Case Diagram Actors Use Case UML Class Diagrams

More information

TTool Training. I. Introduction to UML

TTool Training. I. Introduction to UML TTool Training I. Introduction to UML Ludovic Apvrille ludovic.apvrille@telecom-paris.fr Eurecom, Office 223 Ludovic Apvrille TTool Training - 2004. Slide #1 Outline of the Training Introduction to UML

More information

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified)

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model answer and the answer written by candidate

More information

Introduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p.

Introduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p. Introduction p. xxi Introduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p. 7 Understanding UML Diagrams p. 10 Visual Modeling

More information

Object-Oriented Analysis and Design Using UML

Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using UML An Introduction to Unified Process and Design Patterns Mahesh P. Matha Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using

More information

UML Start-Up Training UB1

UML Start-Up Training UB1 UML Start-Up Training UB1 Index History Overview Diagrams Use Case Diagram Sequence Diagram Activity Diagram Class Diagram UML This training course is designed with the intention to teach UML in not longer

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES 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 information

INTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling

INTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling User Centred Design 09 INTERACTION ARCHITECTURAL MODELING Lecture 9 Interaction Architectureal Modeling PREVIOUS LESSON(S) Synthetizing User Research Personas Actors / User Roles Scenarios Essential Use

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD: ,

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD: , Q.1 What is Object Orientation? Explain the concept of class, objects, instance, generalization, and associations. Ans :-- In the past, information systems used to be defined primarily by their functionality:

More information

Object-Oriented Systems Development: Using the Unified Modeling Language

Object-Oriented Systems Development: Using the Unified Modeling Language Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 4: Object-Oriented Methodologies Goals Object-Oriented Methodologies The Rumbaugh et al. OMT The Booch methodology Jacobson's

More information

Unified Modeling Language

Unified 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 information

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD Slides by: Shree Jaswal What is UML? 2 It is a standard graphical language for modeling object oriented software. It was developed in mid 90 s by collaborative

More information

UML Tutorial. Unified Modeling Language UML Tutorial

UML 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 information

Exercise Unit 2: Modeling Paradigms - RT-UML. UML: The Unified Modeling Language. Statecharts. RT-UML in AnyLogic

Exercise Unit 2: Modeling Paradigms - RT-UML. UML: The Unified Modeling Language. Statecharts. RT-UML in AnyLogic Exercise Unit 2: Modeling Paradigms - RT-UML UML: The Unified Modeling Language Statecharts RT-UML in AnyLogic Simulation and Modeling I Modeling with RT-UML 1 RT-UML: UML Unified Modeling Language a mix

More information

CIS 771: Software Specifications

CIS 771: Software Specifications CIS 771: Software Specifications Lecture 11: Introduction to OCL & USE Copyright 2001-2002, Matt Dwyer, John Hatcliff, and Rod Howell. The syllabus and all lectures for this course are copyrighted materials

More information

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester

Lab 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 information

MSc programme (induction week) Department of Informatics INTRODUCTION TO UML

MSc programme (induction week) Department of Informatics INTRODUCTION TO UML MSc programme (induction week) Department of Informatics INTRODUCTION TO UML Some of this material is based on Bernd Bruegge and Allen H. Dutoit (2009) Object-Oriented Software Engineering: Using UML,

More information

Objectives. UML Extension Mechanisms. What is UML? Is the UML enough? UML Extension Mechanisms. Specifications. By Jasmine Farhad

Objectives. UML Extension Mechanisms. What is UML? Is the UML enough? UML Extension Mechanisms. Specifications. By Jasmine Farhad UML Extension Mechanisms By Jasmine Farhad j.farhad@cs.ucl.ac.uk Objectives Briefly describe the UML Introduce the UML Extension Mechanisms: Specifications Common Divisions Adornments Extensibility Mechanism(we

More information

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships.

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships. Q 1) Attempt all the following questions: (a) Define the term cohesion in the context of object oriented design of systems? (b) Do you need to develop all the views of the system? Justify your answer?

More information

Object-Oriented Systems Analysis and Design Using UML

Object-Oriented Systems Analysis and Design Using UML 10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand

More information

Introduction to UML. Danang Wahyu utomo

Introduction 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 information

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis -- 1 Object-Oriented Analysis Object-Oriented

More information

UML Unified Modeling Language

UML Unified Modeling Language UML Unified Modeling Language a standard language to analyze, design and document software intensive solutions Modeling with UML Building blocks When you model something, you create a simplification of

More information

Software Engineering Lab Manual

Software 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 information

Index. : (colon), 80 <<>> (guillemets), 34, 56

Index. : (colon), 80 <<>> (guillemets), 34, 56 : (colon), 80 (guillemets), 34, 56 A Abstraction, 3 Acronyms, 54 Action field, 140 Actions tab, 140 ActiveX controls (Microsoft), 163 Activities. See also Activity diagrams basic description of, 241

More information

UML: Unified Modeling Language

UML: Unified Modeling Language UML: Unified Modeling Language 1 Modeling Describing a system at a high level of abstraction A model of the system Used for requirements and specification Many notations over time State machines Entity-relationship

More information

Outline. A little history. Outline. The Unified Modeling Language Opportunities and Challenges for Formal Methods

Outline. A little history. Outline. The Unified Modeling Language Opportunities and Challenges for Formal Methods Outline The Unified Modeling Language Opportunities and Challenges for Formal Methods An update on UML Language definition Tools A precise OO meta-modeling facility - MMF Stuart Kent University of Kent

More information

Module Outline. What is Object-Oriented? Some Possible Definitions. Why Object-oriented? Fundamentals of Object Orientation

Module Outline. What is Object-Oriented? Some Possible Definitions. Why Object-oriented? Fundamentals of Object Orientation Module Outline Fundamentals of Object Positioning Object Oriented Analysis Fundamentals of Object 1. Encapsulation 2. Abstraction 3. Inheritance 4. Polymorphism The need of Modeling Unified modeling language

More information

History of object-oriented approaches

History of object-oriented approaches Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented

More information

Introduction 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 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 information

What is a Class Diagram? A diagram that shows a set of classes, interfaces, and collaborations and their relationships

What 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 information

What 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. 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 information

MechEng SE3 Lecture 7 Domain Modelling

MechEng SE3 Lecture 7 Domain Modelling MechEng SE3 Lecture 7 Domain Modelling Simon Gay (slides by Phil Gray) 17 February 2010 1 This week s supplementary reading Zero Balances and Zero Responsibility Michael Bolton http://www.developsense.com/essays/zero.html

More information

User Interface Design with Components

User Interface Design with Components User Interface Design with Components TIP X LIU, School of Computing, Napier University This chapter discuss the principals of user interface design, popular user interaction styles, UCM architecture,

More information

UML big picture. Perdita Stevens. School of Informatics University of Edinburgh

UML big picture. Perdita Stevens. School of Informatics University of Edinburgh UML big picture Perdita Stevens School of Informatics University of Edinburgh Plan Whence UML? Parts of UML How it all fits together UML as a language Consistency: what does it mean, do we need it? Defining

More information

Hippo Software BPMN and UML Training

Hippo Software BPMN and UML Training Hippo Software BPMN and UML Training Icon Key: www.hippo-software.co.uk Teaches theory concepts and notation Teaches practical use of Enterprise Architect Covers BPMN, UML, SysML, ArchiMate Includes paper

More information

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY-621105. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 1301-OBJECT ORIENTED ANALYSIS AND

More information

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus

UML 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 information

Topic 3 Unified Modeling Language UML. Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics.

Topic 3 Unified Modeling Language UML. Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics. Topic 3 Unified Modeling Language UML Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics. Contents: 1. Structure diagrams 2. Behavior diagrams What

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 7 Integrated Object-Oriented Methodologies: OPEN and FOOM 1 Object-oriented Process, Environment and Notation (OPEN) First introduced in

More information

Week 9 Implementation

Week 9 Implementation Week 9 Implementation Dr. Eliane l. Bodanese What is more important From a software engineering perspective: Good Gui? does what customer wants maintainable, extensible, reusable Commented Code? how is

More information

UML Diagrams & And Some Of Their Elements

UML Diagrams & And Some Of Their Elements UML Diagrams 2013, J.P.N., page 1 UML Diagrams & And Some Of Their Elements UML Diagrams 2013, J.P.N., page 2 Building blocks of the UML As part of a model you have: modelling elements relationships between

More information

Unified Modeling Language for Real-Time Systems Design

Unified Modeling Language for Real-Time Systems Design Unified Modeling Language for Real-Time Systems Design Introduction The Unified Modeling Language, or UML, is a third-generation object-oriented modeling language. It adapts and extends the published works

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes 5.1 What is UML? The Unified Modelling Language is a standard graphical language

More information

administrivia today UML start design patterns Tuesday, September 28, 2010

administrivia 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 information

From Analysis to Design. LTOOD/OOAD Verified Software Systems

From Analysis to Design. LTOOD/OOAD Verified Software Systems From Analysis to Design 1 Use Cases: Notation Overview Actor Use case System X System boundary UCBase «extend» UCExt Actor A UCVar1 UCVar2 Extending case Generalization «include» Actor B UCIncl Included

More information

Unified Modeling Language Specification Version formal/

Unified Modeling Language Specification Version formal/ Date: January 2005 Unified Modeling Language Specification Version 1.4.2 formal/05-04-01 This specification is also available from ISO as ISO/IEC 19501. 1 Scope... 1 2 Normative references...1 2.1 Identical

More information

SEEM4570 System Design and Implementation. Lecture 10 UML

SEEM4570 System Design and Implementation. Lecture 10 UML SEEM4570 System Design and Implementation Lecture 10 UML Introduction In the previous lecture, we talked about software development life cycle in a conceptual level E.g. we need to write documents, diagrams,

More information