Unified Modeling Language
|
|
- Heather Walters
- 6 years ago
- Views:
Transcription
1 Unified Modeling Language Software technology Szoftvertechnológia Dr. Balázs Simon BME, IIT
2 Outline UML Diagrams: Sequence Diagram Communication Diagram Interaction Overview Diagram Dr. Balázs Simon, BME, IIT 2
3 Where are we now? Requirements Design Implementation Testing Delivery Maintenance Use Case Diagram High level description of functional requirements: Use cases are basic interaction sequences between the system and its users Activity Diagram Use case interaction sequences as workflows Component Diagram High level overview of the system architecture: Components and how they are connected to each other Where to deploy components Deployment Diagram Dr. Balázs Simon, BME, IIT 3
4 Where are we now? Requirements Design Implementation Testing Delivery Maintenance Class Diagram Package Diagram Object Diagram Structure of a component/system using object-oriented modeling Packages and dependencies between them Shows a snapshot of the detailed state of a system at a point in time Next: How to design the inside of a component? (Behavior) Dr. Balázs Simon, BME, IIT 4
5 Where are we now? Structural UML diagrams: Next: How to design the inside of a component? (Behavior) Component diagram Deployment diagram Class diagram Package diagram Object diagram Composite structure diagram Profile diagram Behavioral UML diagrams: Use case diagram Activity diagram Sequence diagram Communication diagram State diagram Timing diagram Interaction overview diagram Dr. Balázs Simon, BME, IIT 5
6 Sequence Diagram Dr. Balázs Simon, BME, IIT 6
7 Sequence Diagram Requirements Design Implementation Testing Delivery Maintenance Sequence Diagrams are graphical representations of interactions Sequence Diagrams show the dynamic behavior of the system interactions focus on the passing of information between participants Sequence Diagrams can be used to describe use case scenarios, logic of methods, message flows of a protocol Sequence Diagrams show possible traces of message exchanges arranged in time sequence traces are simple runtime scenarios valid and invalid traces can also be described traces that are not included are not described by the interactions at all, and we cannot know whether they are valid or invalid Dr. Balázs Simon, BME, IIT 7
8 Pacman: Class Diagram excerpt Thing +CollideWith(t: Thing) +HitBy(p: Pacman) +HitBy(m: Monster) +Move(d: Direction) -things -field 0..* d:direction Field -neighbors Accept(t: Thing) +Remove(t: Thing) +GetNeighbor(d: Direction): Field Pacman +CollideWith(t: Thing) +HitBy(m: Monster) +Die() Monster +CollideWith(t: Thing) +HitBy(p: Pacman) <<enumeration>> Direction +Up +Down +Left +Right Dr. Balázs Simon, BME, IIT 8
9 Pacman: Object Diagram for a possible initial state m : Monster p : Pacman f1 : Field f2 : Field Dr. Balázs Simon, BME, IIT 9
10 Sequence Diagram example: Monster kills Pacman sd Monster kills Pacman m : Monster f1 : Field f2 : Field p : Pacman Move(d) GetNeighbor(d) f2 Time Remove(m) Accept(m) CollideWith(m) HitBy(p) Die() 10
11 Sequence Diagram example: Monster kills Pacman sd Monster kills Pacman m : Monster f1 : Field f2 : Field p : Pacman Move(d) GetNeighbor(d) f2 Remove(m) Accept(m) CollideWith(m) HitBy(p) Die() 11
12 Sequence Diagram example: Monster kills Pacman sd Monster kills Pacman Interaction name Interaction m : Monster f1 : Field f2 : Field p : Pacman Lifeline Gate Move(d) GetNeighbor(d) f2 Name Type Lifeline Remove(m) Frame (fragment) Accept(m) CollideWith(m) HitBy(p) Die() Gate 12
13 Sequence Diagram example: Monster kills Pacman sd Monster kills Pacman m : Monster f1 : Field f2 : Field p : Pacman Move(d) GetNeighbor(d) Message f2 Message Execution specification Remove(m) Accept(m) CollideWith(m) Parameter HitBy(p) Die() Overlapping execution specification 13
14 Sequence Diagram example: Monster kills Pacman m : Monster f1 : Field f2 : Field p : Pacman Mapping to C++: Move(d) class Monster : public Thing { private: Field* field; //should be in Thing public: void Move(Direction d) { Field* next = field->getneighbor(d); field->remove(this); next->accept(this); void HitBy(Pacman* p) { p->die(); //... GetNeighbor(d) f2 Remove(m) Accept(m) HitBy(p) Die() CollideWith(m) 14
15 Sequence Diagram example: Monster kills Pacman m : Monster f1 : Field f2 : Field p : Pacman Move(d) Mapping to Java: GetNeighbor(d) public class Monster extends Thing { private Field field; //should be in Thing public void Move(Direction d) { Field next = field.getneighbor(d); field.remove(this); next.accept(this); public void HitBy(Pacman p) { p.die(); //... f2 Remove(m) Accept(m) HitBy(p) Die() CollideWith(m) 15
16 Sequence Diagram example: Monster kills Pacman m : Monster f1 : Field f2 : Field p : Pacman Move(d) Mapping to C#: GetNeighbor(d) public class Monster : Thing { private Field field; //should be in Thing public void Move(Direction d) { Field next = field.getneighbor(d); field.remove(this); next.accept(this); public void HitBy(Pacman p) { p.die(); //... f2 Remove(m) Accept(m) HitBy(p) Die() CollideWith(m) 16
17 Lifeline Describes the time-line for a process, where time increases down the page The head of the lifeline is not an instance specification (object)! an instance specification (object) is a snapshot of the dynamic instance it is modeling the sequence diagram is not a snapshot, it is dynamic, it shows a process hence: no underline in the head of the lifeline even an interface or an abstract class can appear as a type in the head on the lifeline but, of course, abstract methods and methods of an interface can only be called, they cannot call other methods, since they have no implementation p : Pacman Name Name Anonymous lifeline Type Lifeline The name and the type is optional, but at least one of them has to be specified Dr. Balázs Simon, BME, IIT 17 p : Pacman Type Lifeline Lifeline
18 Sequence Diagram: synchronous message Synchronous message: synchronous method call the operation name and the values passed as parameters are written above the arrow starts an execution specification the caller waits for the execution of the method to complete and, hence, for all the other methods called by this method Reply message: drawn from the end of the execution specification of a synchronous message the return value is written above the arrow Execution specification: body of the method call, while it is active corresponds to stack frames in programming languages main : Calculator Add(3,4) Synchronous message 7 Execution specification Reply message Dr. Balázs Simon, BME, IIT 18
19 Sequence Diagram: asynchronous message Asynchronous message (signal): asynchronous method call the caller does not wait for the execution of the method to complete it calls into or starts another thread/process the operation name and the values passed as parameters are written above the arrow starts an execution specification which does not need to be nested within the range of the caller s execution specification an asynchronous message has no reply message another asynchronous message can be used as callback main : Thread start() Asynchronous message Dr. Balázs Simon, BME, IIT 19
20 Sequence Diagram: create and destroy Create message: creates a new lifeline : Pacman Create message <<create>> b : Bomb f : Field Accept(b) Destruction: ends a lifeline timer b : Bomb tick() explode() Destruction Dr. Balázs Simon, BME, IIT 20
21 Sequence Diagram: Alternatives Choice of behavior: alt if-else branches Mapping to C++: class Hello { public: void Greet(Person* p, int hour) { if (hour < 12) p->goodmorning(); Combined fragment Guard else if (hour < 18) p->goodafternoon(); else p->goodevening(); Operand main Greet(p, hour) alt [hour<12] [hour<18] : Hello GoodMorning() GoodAfternoon() p : Person Mapping to Java/C#: public class Hello { public void Greet(Person p, int hour) { if (hour < 12) p.goodmorning(); else if (hour < 18) p.goodafternoon(); else p.goodevening(); [else] GoodEvening() 21
22 Sequence Diagram: Option Optional behavior: opt if without else timer tick() b : Bomb Combined fragment Mapping to C++: class Bomb { private: int timer; public: void Tick() { --timer; if (timer == 0) { this.explode(); void Explode() { /*...*/ Guard Operand Mapping to Java/C#: opt [timer==0] public class Bomb { private int timer; public void Tick() { --timer; if (timer == 0) { this.explode(); public void Explode() { /*...*/ explode() 22
23 Sequence Diagram: Loop Repeated behavior: loop main start() b : Bomb Combined fragment Mapping to C++: class Bomb { private: int timer; public: void Start() { while(timer > 0) { this.tick(); this.explode(); void Tick() { --timer; void Explode() { /*...*/ Guard Operand Mapping to Java/C#: loop [timer > 0] tick() public class Bomb { private int timer; public void Start() { while(timer > 0) { this.tick(); this.explode(); public void Tick() { --timer; public void Explode() { /*...*/ explode() 23
24 Sequence Diagram: combined fragments Abbrev Kind Meaning alt Alternatives Represents a choice of behavior. At most one of the operands will be chosen. opt Option Represents a choice of behavior where either the (sole) operand happens or nothing happens. break Break Represents a breaking scenario in the sense that the operand is a scenario that is performed instead of the remainder of the enclosing fragment. par Parallel Represents a parallel merge between the behaviors of the operands. seq Weak sequencing Represents a weak sequencing between the behaviors of the operands. strict Strict sequencing Represents a strict sequencing between the behaviors of the operands. Dr. Balázs Simon, BME, IIT 24
25 Sequence Diagram: combined fragments Abbrev Kind Meaning neg Negative Represents traces that are defined to be invalid. All fragments that are different from Negative are considered positive meaning that they describe traces that are valid and should be possible. critical Critical region The region is treated atomically by the enclosing fragment when determining the set of valid traces. ignore Ignore Ignore designates that there are some message types that are not shown within this combined fragment. consider Consider Consider designates which messages should be considered within this combined fragment. This is equivalent to defining every other message to be ignored. assert Assertion Represents an assertion. The sequences of the operand of the assertion are the only valid continuations. All other continuations result in an invalid trace. loop Loop Represents a loop. The loop operand will be repeated a number of times. Dr. Balázs Simon, BME, IIT 25
26 Sequence Diagram: Interaction use Sequence Diagrams can reference other Sequence Diagrams with Interaction use Advantages: modularity: large diagrams can be split into multiple smaller diagrams reuse: common behavior in multiple diagrams can be drawn once and referenced multiple times readability: high level diagrams can be refined with lower level diagrams Dr. Balázs Simon, BME, IIT 26
27 Sequence Diagram: Thing moves sd Thing moves t : Thing f1 : Field f2 : Field Move(d) GetNeighbor(d) f2 Remove(t) Accept(t) Dr. Balázs Simon, BME, IIT 27
28 Sequence Diagram: Interaction use sd Game loop timer t : Thing Start() loop [not end of game] loop Interaction use [for all t:thing] (references the diagram on the previous slide) ref Thing moves Dr. Balázs Simon, BME, IIT 28
29 Rules to have consistent and manageable diagrams Display one key behavior per diagram Different objects of the same type must have different lifelines Make sure that the caller knows the target object draw an Object Diagram to show who knows who at the beginning Make sure that the method being called is available through the target s known static type Create separate diagrams for polymorphic behavior Make sure that the same method behaves the same way in all diagrams Make sure to write operation parameters and results over the arrows Make sure that all operations exist in the class diagram Dr. Balázs Simon, BME, IIT 29
30 Informal Sequence Diagram Informal Sequence Diagrams: they alleviate the strict formalism of UML they don t exactly follow the UML standard however, they are great for brainstorming We usually don t model every little detail of the system in formal Sequence Diagrams this is usually unnecessary it is also time consuming, and programming the behavior is much easier and much quicker, than drawing sequence diagrams in clumsy design tools maintaining them later and keeping them in sync with the source code is also time consuming and error prone Usually informal Sequence Diagrams are sufficient to show the relevant behavior of the system these are much quicker to draw during brainstorming they provide enough detail to understand the overall picture they only have to be updated in the documentation, if the design principles of the behavior they show change Note: in the homework, in the exam and in the subject called Software project laboratory we expect you to draw formal Sequence Diagrams our goal is to see whether you know the UML standard you can always alleviate the strict formalism later Dr. Balázs Simon, BME, IIT 30
31 Reminder from earlier: Buy item use case Buy item Customer Cashier Use case: Buy item Actors: Customer, Cashier Main Success Scenario: 1. The Customer picks the item 2. The Customer hands the item to the Cashier 3. The Cashier records the item 4. The Cashier asks for money from the Customer 5. The Customer pays the amount to the Cashier 6. The Cashier gives the item and the receipt to the Customer Alternative 5.A: 5.A.1. The Customer has not enough money 5.A.2. The Customer leaves empty handed Dr. Balázs Simon, BME, IIT 31
32 Informal Sequence Diagram for the Buy item use case Item Money Customer 1 : Pick 2 : Hand over Cashier 3 : Record 4 : Ask for money alt [has enough money] 5 : Pay(Money) <<create>> 6 : Print Receipt 7 : Give(Item, Receipt) [not enough money] 8 : Leave empty handed 32
33 Where are we now? Structural UML diagrams: Component diagram Deployment diagram Class diagram Package diagram Object diagram Composite structure diagram Profile diagram Behavioral UML diagrams: Use case diagram Activity diagram Sequence diagram Communication diagram State diagram Timing diagram Interaction overview diagram Dr. Balázs Simon, BME, IIT 33
34 Communication Diagram Dr. Balázs Simon, BME, IIT 34
35 Communication Diagram Requirements Design Implementation Testing Delivery Maintenance Communication Diagrams are graphical representations of interactions Communication Diagrams show the dynamic behavior of the system interactions focus on the passing of information between participants the sequencing of messages is given through a sequence numbering scheme Communication Diagrams correspond to simple Sequence Diagrams that use none of the structuring mechanisms such as Interaction uses and Combined fragments Sequence Diagrams are good at showing sequential logic, but not that good at giving a big picture Communication Diagrams are good at showing the big picture (participants and their relationships), but not that good at showing sequential logic a Communication Diagram is like a view of a simple Sequence Diagram from above Dr. Balázs Simon, BME, IIT 35
36 Reminder: Monster kills Pacman Sequence Diagram sd Monster kills Pacman m : Monster f1 : Field f2 : Field p : Pacman Move(d) GetNeighbor(d) f2 Time Remove(m) Accept(m) CollideWith(m) HitBy(p) Die() 36
37 Communication Diagram: Monster kills Pacman sd Monster kills Pacman Interaction name Interaction m : Monster Sequence number 4.1.1: HitBy(p) p : Pacman Frame (fragment) 1: GetNeighbor(d) 2: f2 3: Remove(m) f1 : Field Reply message : Die() 4: Accept(m) f2 : Field Synchronous message 4.1: CollideWith(m) Lifeline Name Type Dr. Balázs Simon, BME, IIT 37
38 Where are we now? Structural UML diagrams: Component diagram Deployment diagram Class diagram Package diagram Object diagram Composite structure diagram Profile diagram Behavioral UML diagrams: Use case diagram Activity diagram Sequence diagram Communication diagram State diagram Timing diagram Interaction overview diagram Dr. Balázs Simon, BME, IIT 38
39 Interaction Overview Diagram Dr. Balázs Simon, BME, IIT 39
40 Interaction Overview Diagram Requirements Design Implementation Testing Delivery Maintenance Interaction Overview Diagrams define Interactions through a variant of Activity Diagrams in a way that promotes overview of the control flow However, the nodes are: Interactions or Interaction uses Interaction: inline Sequence Diagram or Collaboration Diagram or Interaction Overview Diagram Interaction use: reference to a Sequence Diagram or to a Collaboration Diagram or to an Interaction Overview Diagram Dr. Balázs Simon, BME, IIT 40
41 Restrictions Interaction Overview Diagrams differ from Activity Diagrams in some respects: the nodes are: Interactions or Interaction uses Alternative Combined Fragments are represented by a Decision node and a corresponding Merge node Parallel Combined Fragments are represented by a Fork node and a corresponding Join node Loop Combined Fragments are represented by simple cycles Branching and joining of branches must be properly nested Interaction Overview Diagrams are framed by the same kind of frame that encloses other forms of Interaction Diagrams Dr. Balázs Simon, BME, IIT 41
42 Interaction Overview example: Pacman game sd Pacman game Interaction Interaction name ref Select from main menu Interaction use Inline interaction sd Game loop [start game] [quit game] Start timer t : Thing Frame (fragment) loop [not end of game] loop [for all t:thing] refthing moves 42
43 Where are we now? Structural UML diagrams: Component diagram Deployment diagram Class diagram Package diagram Object diagram Composite structure diagram Profile diagram Behavioral UML diagrams: Use case diagram Activity diagram Sequence diagram Communication diagram State diagram Timing diagram Interaction overview diagram Dr. Balázs Simon, BME, IIT 43
44 Summary Dr. Balázs Simon, BME, IIT 44
45 Outline Graphical representations of interactions Interactions focus on the passing of information between participants UML Diagrams: Sequence Diagrams are good at showing sequential logic, but not that good at giving a big picture Communication Diagrams are good at showing the big picture (participants and their relationships), but not that good at showing sequential logic Interaction Overview Diagrams define Interactions through a variant of Activity Diagrams in a way that promotes overview of the control flow Dr. Balázs Simon, BME, IIT 45
46 Where are we now? Structural UML diagrams: Component diagram Deployment diagram Class diagram Package diagram Object diagram Composite structure diagram Profile diagram Behavioral UML diagrams: Use case diagram Activity diagram Sequence diagram Communication diagram State diagram Timing diagram Interaction overview diagram Dr. Balázs Simon, BME, IIT 46
Sequence 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 Modeling. Sequence Diagram. Slides accompanying Version 1.0
Object-Oriented Modeling Sequence Diagram Slides accompanying UML@Classroom Version 1.0 Business Informatics Group Institute of Software Technology and Interactive Systems Vienna University of Technology
More informationUnified Modeling Language I.
Unified Modeling Language I. Software engineering Szoftvertechnológia Dr. Balázs Simon BME, IIT Outline Software engineering Modeling Unified Modeling Language (UML) UML Diagrams: Use Case Diagram Activity
More informationThe learning objectives of this chapter are the followings. At the end of this chapter, you shall
Chapter 5 Sequence diagrams In the previous chapters, we have seen different diagrams. Use case diagrams describe tasks that a system is supposed to perform. It gives high-level information about how a
More informationSoftware Specification 2IX20
Software Specification 2IX20 Julien Schmaltz (slides from A. Serebrenik) Lecture 05: Interaction diagrams / Sequence diagrams This week sources Slides by Site by David Meredith, Aalborg University, DK
More informationObject Interaction Sequence Diagrams
Object Interaction Sequence Diagrams Based on Chapter 9 Bennett, McRobb and Farmer Object Oriented Systems Analysis and Design Using UML 4 th Edition, McGraw Hill, 2010 2010 Bennett, McRobb and Farmer
More informationChapter 2, Modeling with UML: UML 2 Hightlights
Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 2, Modeling with UML: UML 2 Hightlights Outline for this class ü Overview of important changes in UML 2 Ø Deployment diagrams
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 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 informationObject-Interaction Diagrams: Sequence Diagrams UML
Object-Interaction Diagrams: Sequence Diagrams UML Communication and Time In communication diagrams, ordering of messages is achieved by labelling them with sequence numbers This does not make temporal
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 information3: Modeling Behavior with UML Sequence Diagrams
Outline UML Design Supplement 3: Modeling Behavior with UML Sequence Diagrams Introduction Basic notation Alternating paths Modularity Slide adapted from Eran Toch s lecture series Specification and Analysis
More informationSequence Diagrams. Sequence Diagrams. Version Sequence Diagrams are. History. simple powerful readable used to describe interaction sequences
Sequence Diagrams Version 020913 INF-UIT 2002 / Basic Sequence Diagrams / Slide 1 Sequence Diagrams Sequence Diagrams are simple powerful readable used to describe interaction sequences History Has been
More informationUnified Modeling Language
Unified Modeling Language Software engineering Szoftvertechnológia Dr. Balázs Simon BME, IIT Outline UML Diagrams: Class Diagram Package Diagram Object Diagram Dr. Balázs Simon, BME, IIT 2 Where are we
More informationUML Sequence Diagrams
UML Sequence Diagrams Prof. Dr. Eric Dubuis Berner Fachhochschule, @ Biel Course "UML and Design Patterns" of module "Software Engineering and Design", version October 2008 BFH/TI/Software Engineering
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 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 informationIntroduction to Unified Modelling Language (UML)
IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Introduction to Unified
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 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 informationUML 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 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 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 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 informationLecture Programming in C++ PART 1. By Assistant Professor Dr. Ali Kattan
Lecture 08-1 Programming in C++ PART 1 By Assistant Professor Dr. Ali Kattan 1 The Conditional Operator The conditional operator is similar to the if..else statement but has a shorter format. This is useful
More informationCSE 308. UML Sequence Diagrams. Reading / Reference.
CSE 308 UML Sequence Diagrams Reading Reading / Reference www.ibm.com/developerworks/rational/library/3101.html Reference www.visual-paradigm.com/vpgallery/diagrams/sequence.html 2 1 Interaction Diagrams
More informationSEEM4570 System Design and Implementation Lecture 11 UML
SEEM4570 System Design and Implementation Lecture 11 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 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 informationCS211 Lecture: Modeling Dynamic Behaviors of Systems; Interaction Diagrams and Statecharts Diagrams in UML
CS211 Lecture: Modeling Dynamic Behaviors of Systems; Interaction Diagrams and Statecharts Diagrams in UML Objectives: 1. To introduce the notion of dynamic analysis 2. To show how to create and read Sequence
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 informationUNIT 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 informationCSE 403. UML Sequence Diagrams. Reading: UML Distilled Ch. 4, by M. Fowler
CSE 403 UML Sequence Diagrams Reading: UML Distilled Ch. 4, by M. Fowler These lecture slides are copyright (C) Marty Stepp, 2007. They may not be rehosted, sold, or modified without expressed permission
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 informationRefining UML specifications. - the STAIRS method. Ragnhild Kobro Runde. Joint work with Ketil Stølen and Øystein Haugen. Ragnhild Kobro Runde
Refining UML specifications - the STAIRS method Joint work with Ketil Stølen and Øystein Haugen SARDAS-seminar 21.05.2008 / Refining UML specifications / Slide 1 Outline Introduction to sequence diagrams.
More informationIn this case, the behavior of a single scenario
CPSC 491 UML Sequence s UML Sequence s One of many UML notations for modeling behavior A specific type of interaction diagram In this case, the behavior of a single scenario Usually a single call on an
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 informationObject Orientated Analysis and Design. Benjamin Kenwright
Notation Part 2 Object Orientated Analysis and Design Benjamin Kenwright Outline Review What do we mean by Notation and UML? Types of UML View Continue UML Diagram Types Conclusion and Discussion Summary
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 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 informationSEEM4570 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 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 informationWhat'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 informationPROCESSES AND THREADS
PROCESSES AND THREADS A process is a heavyweight flow that can execute concurrently with other processes. A thread is a lightweight flow that can execute concurrently with other threads within the same
More informationModeling Dynamic Behavior
Dr. Michael Eichberg Software Engineering Department of Computer Science Technische Universität Darmstadt Software Engineering Modeling Dynamic Behavior The following slides use material from: Craig Larman;
More informationUML Behavioral Models
UML Behavioral Models Dept. of Computer Science Baylor University Some slides adapted from materials in the following sources: UMLTutorial by Dr. R. France, Lecture slides by Dr. C. Constantinides Specifying
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 informationUNIT 5 - UML STATE DIAGRAMS AND MODELING
UNIT 5 - UML STATE DIAGRAMS AND MODELING UML state diagrams and modeling - Operation contracts- Mapping design to code UML deployment and component diagrams UML state diagrams: State diagrams are used
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 informationUNIT-IV BASIC BEHAVIORAL MODELING-I
UNIT-IV BASIC BEHAVIORAL MODELING-I CONTENTS 1. Interactions Terms and Concepts Modeling Techniques 2. Interaction Diagrams Terms and Concepts Modeling Techniques Interactions: Terms and Concepts: An interaction
More informationUnit 5: Sequence Diagrams
1 TTM4115 Design of Reactive Systems 1 Spring 2018 Frank lexander Kraemer, kraemer@ntnu.no Unit 5: Sequence Diagrams Why do we need sequence diagrams? State machines are suitable to show the behavior of
More informationSpecifying Precise Use Cases with Use Case Charts
Specifying Precise Use Cases with Use Case Charts Jon Whittle Dept of Information & Software Engineering George Mason University 4400 University Drive Fairfax, VA 22030 jwhittle@ise.gmu.edu Abstract. Use
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 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 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 informationSELECTION. (Chapter 2)
SELECTION (Chapter 2) Selection Very often you will want your programs to make choices among different groups of instructions For example, a program processing requests for airline tickets could have the
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 informationObfuscating Transformations. What is Obfuscator? Obfuscation Library. Obfuscation vs. Deobfuscation. Summary
? Obfuscating Outline? 1? 2 of Obfuscating 3 Motivation: Java Virtual Machine? difference between Java and others? Most programming languages: Java: Source Code Machine Code Predefined Architecture Java
More informationObject-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 information12 Tutorial on UML. TIMe TIMe Electronic Textbook
TIMe TIMe Electronic Textbook 12 Tutorial on UML Introduction......................................................2.................................................3 Diagrams in UML..................................................3
More informationUML behavior models. Kristian Sandahl
UML behavior models Kristian Sandahl 2016-09-13 2 Maintenance Validate Requirements, Verify Specification Requirements System Design (Architecture, High-level Design) Verify System Design Acceptance Test
More information02291: System Integration
02291: System Integration Hubert Baumeister hub@imm.dtu.dk Spring 2011 Contents 1 Recap 1 2 More UML Diagrams 2 2.1 Object Diagrams........................................... 2 2.2 Communication Diagrams......................................
More informationApplying UML & Patterns (3 rd ed.) Chapter 15
Applying UML & Patterns (3 rd ed.) Chapter 15 UML INTERACTION DIAGRAMS This document may not be used or altered without the express permission of the author. Dr. Glenn L. Ray School of Information Sciences
More informationChapter 1: Programming Principles
Chapter 1: Programming Principles Object Oriented Analysis and Design Abstraction and information hiding Object oriented programming principles Unified Modeling Language Software life-cycle models Key
More informationMAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) MODEL ANSWER
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 informationProcess Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics
Process Modelling Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology and Economics Department of Measurement and Information Systems
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 informationthe gamedesigninitiative at cornell university Lecture 13 Architecture Design
Lecture 13 Take Away for Today What should lead programmer do? How do CRC cards aid software design? What goes on each card? How do you lay m out? What properties should y have? How do activity diagrams
More informationObject Oriented Design. Program Design. Analysis Phase. Part 2. Analysis Design Implementation. Functional Specification
Object Oriented Design Part 2 Analysis Design Implementation Program Design Analysis Phase Functional Specification Completely defines tasks to be solved Free from internal contradictions Readable both
More informationUML Diagrams MagicDraw UML Diagrams
In software development, the diagram is the equivalent of a blueprint. To meet the various needs of many parties, we often need several different blueprints of the same system. Furthermore, every system
More informationOral 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 informationthe gamedesigninitiative at cornell university Lecture 12 Architecture Design
Lecture 12 Take Away for Today What should lead programmer do? How do CRC cards aid software design? What goes on each card? How do you lay m out? What properties should y have? How do activity diagrams
More informationOpenAmeos tutorial. Contents. Author: Balázs Simon, BME IIT, 2012.
OpenAmeos tutorial Author: Balázs Simon, BME IIT, 2012. Contents 1 Installing OpenAmeos... 2 2 Using OpenAmeos... 8 2.1 The OpenAmeos project directory... 8 2.2 Creating an OpenAmeos project... 9 2.3 Disabling
More informationToday s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading:
CompSci 280 S2 2107 Introduction to Software Development Today s Agenda Topics: Introduction Activity Diagram Object interaction Sequence Diagram Reading: Booch G.,The Unified Modeling Language User Guide,
More information6/20/2018 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES. Outline for Today. Architecture views C&C Views
1 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES Outline for Today 2 Architecture views C&C Views 1 Components and Connectors (C&C) Styles 3 Elements Relations Properties
More informationPART A : MULTIPLE CHOICE Circle the letter of the best answer (1 mark each)
PART A : MULTIPLE CHOICE Circle the letter of the best answer (1 mark each) 1. An example of a narrowing conversion is a) double to long b) long to integer c) float to long d) integer to long 2. The key
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 information1Z Oracle. Java Platform Enterprise Edition 6 Enterprise JavaBeans Developer Certified Expert
Oracle 1Z0-895 Java Platform Enterprise Edition 6 Enterprise JavaBeans Developer Certified Expert Download Full Version : http://killexams.com/pass4sure/exam-detail/1z0-895 Answer: F QUESTION: 284 Given:
More informationUML- a Brief Look UML and the Process
UML- a Brief Look UML grew out of great variety of ways Design and develop object-oriented models and designs By mid 1990s Number of credible approaches reduced to three Work further developed and refined
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 informationAns 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 informationObject Oriented Analysis and Design - Part2(Design)
Object Oriented Analysis and Design - Part2(Design) Exam A QUESTION 1 Which statement is true about elements within the subsystem and public visibility? A. Only the subset of elements that define the subsystems
More informationThe Unified Modeling Language (UML)
The Unified Modeling Language (UML) A Very Distilled Introduction to The Unified Modeling Language (UML). A quick introduction to UML is given. Thereafter, the surface of class and activity diagrams and
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 informationObject-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 informationPieter van den Hombergh. Fontys Hogeschool voor Techniek en Logistiek. September 9, 2016
Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek September 9, 2016 Contents /FHTenL September 9, 2016 2/35 UML State Uses and application In behaviour is modeled with state charts (diagrams)
More informationProcess Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics
Process Modelling Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology and Economics Department of Measurement and Information Systems
More informationINF 111 / CSE 121: Announcements Quiz #3- Thursday What will it cover?
INF 111 / CSE 121: Software Tools and Methods Lecture Notes for Summer Quarter 2008 Michele Rousseau Lecture Notes 7 - UML Announcements Quiz #3- Thursday What will it cover? All readings assigned since
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 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 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 informationCA314 Object Oriented Analysis & Design - 7. File name: CA314_Section_07_Ver01 Author: L Tuohey No. of pages: 16
CA314 Object Oriented Analysis & Design - 7 File name: CA314_Section_07_Ver01 Author: L Tuohey No. of pages: 16 Table of Contents 7. UML State & Activity Diagrams (see ref 1, Chap. 11, 12)...3 7.1 Introduction...3
More informationWeek 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 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 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 informationKF5008 Program Design & Development. Lecture 3 Sequence Diagrams
KF5008 Program Design & Development Lecture 3 Sequence Diagrams Learning Outcomes At the end of the lecture, you should be able to: Explain the content and purpose of a UML Sequence Diagram Describe the
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 informationHippo 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 informationUSE OF BASELINES. Definition, reasons and examples. RD.11/######.#
USE OF BASELINES Definition, reasons and examples www.ricardo.com 2 Agenda Introduction Principles and reasons for use Examples Advanced features Using Baselines Baseline Views 3 BASELINES Introduction
More information