Meltem Özturan

Size: px
Start display at page:

Download "Meltem Özturan"

Transcription

1 Meltem Özturan 1

2 2

3 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. OO analysis involves two steps: 1. Defining the set of objects that will make up the system and describing the interactions or communications among the various objects. 2. Describing the internal processes that go on within each object to respond to messages from other objects, and to initiate messages to other objects UML notation is used for modeling system requirements in OOA Class diagrams, Use case diagrams, Interaction diagrams and statechart diagrams are the diagrams used in OO analysis 3

4 4

5 Modeling System Requirements Class diagram identifies and classifies the objects that will make up the new system along with their properties (or attributes) Use case diagram is a diagram to show the various user roles and how they will use the system. It is an extension of the event table. It is a convenient way to document the function that the system must support. Interaction diagrams The collaborative diagram shows which object should collaborate to realize a given business function. It shows also the interaction or messages, that are sent between the objects to carry out this function. The sequence diagram shows sequence of messages between objects during a use case. It is another view of the same information contained in the collaboration diagram. Statechart diagram describes the states and behavior of each object The following formula helps so remember the relation of these diagrams: OO Requirements = Event Table + Class Diagram + Use Case Diagrams + Interaction Diagrams (collaboration and/or sequence diagrams) + Statechart Diagram 5

6 Class Diagram 6

7 Class Diagram Class diagram provides definition of structural components of the system The classes identified in the class diagram provide the structure for the database As far as the OO programming also consists of object classes, the class diagram defines the structure of the computer program that will be eventually created Class diagram specifies not only problem domain related classes but also implementation classes - additional classes in a class diagram needed for physical implementation (e.g. user interface classes which include such classes as windows for input screens and output report classes) 7

8 Use Case Diagram 8

9 Use Case Diagram The Use Cases and Actors In the OOA, use case is a single use or function performed by the system for those who use the system; it describes the activity the system carries out in response to an event (or a situation where the system is used for some purpose) There are two concepts in the OOA: (1) A person is involved, and (2) The person uses the system In UML, the person involved is called an actor (always outside of the automation boundaries of the system) 9

10 Use Case Diagram The Use Case Diagram A use case diagram is a graphical model that summarizes the information about the actors and use cases During the use case analysis all of the uses of the system should be identified The uses derive from the events in the event table A use case diagram can be defined as a functional description of the entire system, which identifies functions to be supported by the new system 10

11 Use Case Diagram Automation Boundary and Organization The boundary line drawn around the entire set of use cases is the automated system boundary or the automation boundary (it denotes the boundary between the environment, where the actors reside, and the internal functions of the automated system. Two ways to organize the use cases: By subsystems By including all use cases that involve a specific actor Includes Relationships Very often, one use case can use the services of another case The relationship between these cases is denoted by the connecting line with the arrow. 11

12 Use Case Diagram Scenarios A use case only shows that an actor interacts with the system to carry out a business activity There may be a whole series of individual steps to accomplish the use case (these steps are described with a narrative called a flow of activities) The flow of activities is a general description of the steps within a use case. In most cases, we need to extend the description to even more detail A use case may have several alternative sequences of internal activities. A particular sequence of activities within a use case is called scenario. It represents a unique path through the use case. 12

13 Use Case Diagram The Use Case Diagram Compared to Structured Techniques Similarities Objective of the use case diagram, like context diagram, is to provide an overview of the system (including actors and the functions they perform) and defines the scope of the system and individual use cases appear more like a DFD fragment in that they identify an individual function that the system must support Differences The use case diagram begins by defining the automation boundary while in DFD development this boundary is often not defined until the entire process has been detailed In a DFD an external agent is always the original source or destination of the information and may not necessarily be the one interacting with the system; In a use case diagram, an actor is the one who actually interacts with the system whether or not that actor is the original source of information 13

14 Use Case Diagram Development of a Use Case Diagram First approach: start with an event table and analyze each event to determine: How the system is used to support the event The actors who initiate the event Other use cases that will need to be invoked Generally, each event will become a use case Second approach: start by identifying all the actors who use the system Build a list of actors based on the event table by looking at the Trigger and Source columns Instead of listing the actors by their names, it is better to identify the specific roles that these people play (e.g. clerk, doctor etc.). The same person may play various role; it is important to identify every possible role that will use the system. Once the actors and use cases are identified next step is to develop a flow of activities as the starting point for identifying the various scenarios. 14

15 Interaction Diagrams Sequence & Collaboration Diagrams Two types of diagrams describe flow of information and interactions between objects, but each has a slightly different focus: A sequence diagram focuses more on the details of the messages A collaboration diagram emphasizes the objects that interact together to support a use case During system development, both types or either type of diagram may be used Those who prefer a bottom-up approach develop a sequence diagram first (a sequence diagram shows information flow within a single use case or a single scenario) Those who prefer a top-down approach develop a collaboration diagram first to get an overview of the objects that collaborate to carry out the use case 15

16 Interaction Diagrams - Sequence Diagram 16

17 Interaction Diagram - Sequence Diagram Sequence Diagram To develop a sequence diagram we use both the class diagram and the flow of events for each scenario Sequence Diagrams shows the sequence of interactions between objects that occur during the flow of events in a single scenario or use case Four basic symbols are used on a sequence diagram: The actor symbol (a stickman) The object symbol (a rectangle with the name underlined) The lifeline symbol (a dashed line or a narrow vertical rectangle) The message symbol (a directional arrow with a message descriptor) 17

18 Interaction Diagrams - Sequence Diagram Actors and Objects The stick figures represent the actor of the use case being described The objects are the internal things involved in the use case and are depicted with the rectangles Objects in the OOA create a hierarchy: object class particular object (unidentified or anonymous) - specific (identified) object Objects in the Sequence Diagram: Object class (i.e. a set of objects that have the same characteristics) is represented by a rectangle with the name of the class inside A particular object (i.e. a particular instance of an object) is also represented by a rectangle, but the text inside is underlined with the name of the class inside The same thing may play a role of both actor and an object. 18

19 Interaction Diagrams - Sequence Diagram Lifelines During the period that a scenario is active, the actors and objects are also active. The time period of this active life is represented by a dash line (the lifeline) beneath each actor and object. Lifeline is the vertical line under an object or an actor on a sequence diagram to show the duration of the actor or object within the scenario (time flows from top to bottom, i.e. the messages higher up on the lifeline occur before those below). But creation and destruction of the actor or object is not important for the scenario If it is important to note the creation or destruction of an object, then the long narrow rectangle (called activation lifeline) can be used Activation lifeline is the narrow vertical rectangle to emphasize that an object is active only during part of a scenario 19

20 Interaction Diagrams - Sequence Diagram Messages In the OOA the internal events occur as a response to the messages sent between objects and actors or other objects. A message is a request from one actor or object to another to do some action (in a sequence diagram, actors are like objects because they also perform some function when they receive a message) Messages invoke particular methods Receiving object responds by executing methods Message names are just simple description of the action A message symbol on the diagram includes two parts (1) The directional arrow (2) Message descriptor The syntax for the message description is : [true/false condition] return-value := message-name (parameter list) The true/false condition is a test of whether the message can be sent In some cases, the extended name of the message is used which includes a possible return value from the method and the list of input variables needed by the method. 20

21 Interaction Diagrams - Sequence Diagram Steps in creating a sequence diagram 1. Identify all the objects and actors that are involved in the scenario (they are only actors have been identified in the use case diagram and objects from the classes that are identified in the class diagram) 2. Based on the flow of activities, identify each message that will be required to carry out the scenario along with both source object (or actor) for the message and the destination object (or actor) 3. Determine whether each message is always sent or sent only under certain conditions 4. Sequence the messages correctly and attach them to the appropriate lifelines of actors and objects 5. Add the formal syntax on the messages for conditions, message names and passed parameters 6. Add response messages and communications 21

22 Interaction Diagrams - Collaboration Diagram 22

23 Interaction Diagrams - Collaboration Diagram Collaboration Diagram Objective is to quickly get an overview of all the objects that collaborate to support a given scenario Uses similar symbols as in a sequence diagram (actor, object and message) but there is no lifeline Instead of lifeline, each message is numbered (to indicate the order of the messages) Syntax of the message descriptor in a collaborative diagram is: [true/false condition] sequence-number: return-value := message-name (parameter list) Link is connecting line between two objects or actors (shows that two items share a message one sends, another receives) 23

24 Interaction Diagrams - Collaboration Diagram Notes on Collaboration Diagrams A collaboration diagram can t easily describe information about concurrent messages (or messages that are initiated at the same time) Does not indicate information about creation or deletion of objects within the scenario Often drawn without messages simply to identify the collaborating actors and objects (in this case, another sequence diagram is developed to show the detailed information about the interactions and messages within the scenario) 24

25 Statechart Diagram 25

26 Statechart Diagram The final information needs to be specified is internal logic for each object (it is a description of the actions that the objects perform themselves) In the OOA how an object performs its action is called object behaviour Sequence diagrams give external view of object behavior shows messages passed around but they do not show, what an object does when it gets a message The purpose of a statechart diagram is to describe the internal workings of the object. Each class in the class diagram for a system has its own unique statechart diagram. Relationship between the sequence diagrams and the statecharts can be tabulated; -each column is labelled with the name of a class -each row is for one sequence diagram -X s in the cells show which classes are involved in which sequence diagram -A statechart diagram for a class is based on the entire column for that class. -Every cell with X provides information about the messages to and from the class 26

27 Statechart Diagram Life cycle of an object Each object is an instance of a class, and comes into existence in some manner During its existence it is in certain states and makes transitions from state to state These states and the changes an object makes from state to state are shown in a statechart diagram (two main symbols on the statechart diagram include states and transitions) 27

28 Statechart Diagram Object States A state for an object is a condition during its lifetime when it Satisfies some criteria Performs some action Waits for an event Each unique state has a unique name States are described as semipermanent conditions because external events can interrupt them An object stays in a state until some event causes it to move to another state Quiescent (i.e. Nothing happening) Active (i.e. Performing some action) Action is an activity performed by an object in a particular state Objects in the real world behave in more complex way than being in one state at a time concurrent states 28

29 Statechart Diagram States A state is represented by a rectangle with rounded corners (with the name of the state inside) Any actions that must be performed during the period of the state are placed below the state name in the rectangle In the diagram, the beginning and ending of the statechart are indicated by two darkened circles where the initial state is called a pseudostate (the entry point maybe prior to the creation of the object itself) and the final state indicates the exit from the statechart (frequently denotes the removal of the object from the system) Composite states thus lower-level statecharts can be used for concurrent states 29

30 Statechart Diagram Object Transitions A transition is a component of a statechart that shows the movement from one state to the next one States are semipermanent conditions (transitions interrupt them and cause them to end) Transitions are considered to be short in duration and cannot be interrupted. Once started, a transition runs to completion by taking the object to the new state (called destination state) Internal transition is a special kind of transition that occurs within a state and does not cause the object to leave the state. 30

31 Statechart Diagram Object Transitions A transition is represented by an arrow from an origin state (i.e. the state before transition) to a destination state and is labeled with a string to describe the components of the transition The transition label consists of three components: transition-name (parameters, ) [guard-condition] / action-expression -The transition-name is the name of a message event that triggers the transition and causes the object to leave the origin state. -The parameter list identifies any parameters that the message is to pass to the object -Guard-condition is a true/false test to see whether a transition can be taken (first the trigger must occur and then the guard must also be true!). The guard-condition is on the receiving side of the message (it can be received, but transition takes place only if the guard-condition is true) -Action-expression is the statement on a transition to describe the action to be performed (executes when the transition fires; can be a compound series of steps) 31

32 Statechart Diagram Messages, Transitions, and Actions Sequence diagrams and statecharts are related because both show messages Transition names in statechart correspond to message names in the sequence diagram (usually both of them use same name and parameter list) Objects in statecharts receive and send messages (messages are normally sent as a part of action statement which, in turn, is a part of transition or state) To represent the messages, dot notation is used: first object or class is named, then dot is added and then the name of the message Two statements within the action expression are separated by a semicolon Usually, same name and parameter list for a message and a transition is used 32

33 Statechart Diagram Messages, Transitions, and Actions Completion transition : A transition with no trigger event so that it is taken when the origin state completes its actions Decision pseudostate : A diamond on a statechart to represent a decision point on a path Path : A valid sequence of transitions and states through a statechart Concurrent behavior : Object can do multiple things in parallel and statechart diagram represents concurrent behavior with multiple paths Thread : Each separate path of concurrent behavior Synchronization pseudostate : A vertical bar denoting a point where transition can split into multiple threads Two types of output transitions : - OR condition (one or another path may be taken, but not both!) - AND condition (both paths are taken simultaneously) 33

34 Statechart Diagram Statechart Diagram Development 1.Review the class diagram and select classes that will require the statecharts 2.Identify all the input messages across all sequence diagrams for the selected class (the use cases and scenarios provide the basis for identifying messages into and out of a class). Assume that each message will be the trigger for a transition. 3.For each selected class, make a list of all the states you can identify. Note that each transition requires at least one origin and one destination state. 4.Build statechart fragments (a portion of the path in a statechart) and sequence the fragments in the correct order. Each statechart fragment consists of either a state-transition-state sequence or a transition-state-transition sequence. 34

35 Statechart Diagram Statechart Diagram Development 5. Review the paths and look for independent, concurrent paths. When an item can be in two states, there are two possibilities: either the two states are on independent paths, or one state should be a composite state and the two states should be nested. 6. Expand each transition with the appropriate message event, guard-condition, and action-expression Include with each state appropriate internal transitions and action-expressions. Ensure that every output message identified from the sequence diagram is somewhere within an action-expression for a state or transition. 35

36 Statechart Diagram Statechart Diagram Development 7. Review and test each statechart Make sure your states are states of being Follow the life cycle of an object from creation to deletion Be sure your diagram covers all normal and exception conditions Make sure you ve included all relevant transitions Review all possible messages and make sure they are handled somewhere in the statechart Review all possible actions and activities (processes) and make sure they are included correctly in the statechart Look again for concurrent behavior (multiple threads) and possibility of nested paths (complex states) 36

Interactions A link message

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

UNIT-4 Behavioral Diagrams

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

State Machine Diagrams

State Machine Diagrams State Machine Diagrams Introduction A state machine diagram, models the dynamic aspects of the system by showing the flow of control from state to state for a particular class. 2 Introduction Whereas an

More information

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

Objects in OOAD. Input Process 1. Process 2. Data Entity. Output Process 3. Messages. Messages. Object. Data Belonging to the object

Objects in OOAD. Input Process 1. Process 2. Data Entity. Output Process 3. Messages. Messages. Object. Data Belonging to the object Objects in OOAD Things are objects that indirect in the system. An object in object oriented approach is often similar to a data entity in the traditional approach. The main difference is that object do

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

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

UML Essentials Dynamic Modeling

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

UML- a Brief Look UML and the Process

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

13/11/2017. Meltem Özturan misprivate.boun.edu.tr/ozturan/mis515

13/11/2017. Meltem Özturan misprivate.boun.edu.tr/ozturan/mis515 Meltem Özturan misprivate.boun.edu.tr/ozturan/mis515 2 1 Traditional Approach to Requirements Data Flow Diagram (DFD) A graphical system model that shows all of the main requirements for an information

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

Object-Interaction Diagrams: Sequence Diagrams UML

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

Sequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c

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

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

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

Class diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch

Class diagrams. Modeling with UML Chapter 2, part 2. 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 information

BASICS OF UML (PART-2)

BASICS OF UML (PART-2) BASICS OF UML (PART-2) 1 USE CASE DIAGRAMS 2 USE CASE DIAGRAMS Use Case Model: a view of a system that emphasizes the behavior as it appears to outside users. A use case model partitions system functionality

More information

In This Lecture You Will Learn: Specifying Control. Statechart. Event, State and Transition

In This Lecture You Will Learn: Specifying Control. Statechart. Event, State and Transition In This Lecture You Will Learn: Specifying Control Lecture 11 How to identify requirements for control in an application How to model object life cycles using statecharts How to develop statechart diagrams

More information

STATE MACHINES. Figure 1: State Machines

STATE MACHINES. Figure 1: State Machines STATE MACHINES Figure 1: State Machines state machine A state machine is a behavior that specifies the sequences of states an object goes through during its lifetime in response to events. Graphically,

More information

Enterprise Architect. User Guide Series. UML Models. Author: Sparx Systems. Date: 30/06/2017. Version: 1.0 CREATED WITH

Enterprise Architect. User Guide Series. UML Models. Author: Sparx Systems. Date: 30/06/2017. Version: 1.0 CREATED WITH Enterprise Architect User Guide Series UML Models Author: Sparx Systems Date: 30/06/2017 Version: 1.0 CREATED WITH Table of Contents UML Models UML Diagrams UML Structural Models Class Diagram Composite

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

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

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

Chapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee

Chapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee Chapter 4 Capturing the Requirements Shari L. Pfleeger Joanne M. Atlee 4th Edition It is important to have standard notations for modeling, documenting, and communicating decisions Modeling helps us to

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 8: Modelling Interactions and Behaviour

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 8: Modelling Interactions and Behaviour Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour 8.1 Interaction Diagrams Interaction diagrams are used to model the

More information

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

Ingegneria del Software Corso di Laurea in Informatica per il Management

Ingegneria del Software Corso di Laurea in Informatica per il Management Ingegneria del Software Corso di Laurea in Informatica per il Management UML: State machine diagram Davide Rossi Dipartimento di Informatica Università di Bologna State machine A behavioral state machine

More information

UNIT-IV BASIC BEHAVIORAL MODELING-I

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

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop detailed sequence diagrams

More information

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop interaction diagrams based on the principles of object responsibility and use case controllers

More information

APPENDIX M INTRODUCTION TO THE UML

APPENDIX M INTRODUCTION TO THE UML M INTRODUCTION TO THE UML This appendix, written only for those readers not familiar with the topic, provides a brief introduction, which cannot be considered as exhaustive, to the UML. The UML is a general-purpose

More information

Question Sheet There are a number of criticisms to UML. List a number of these criticisms.

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

Activity Diagram Written Date : September 02, 2016

Activity Diagram Written Date : September 02, 2016 Written Date : September 02, 2016 s describe how activities are coordinated to provide a service which can be at different levels of abstraction. Typically, an event needs to be achieved by some operation,

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

CS 451 Software Engineering

CS 451 Software Engineering CS 451 Software Engineering Yuanfang Cai Room 104, University Crossings 215.895.0298 yfcai@cs.drexel.edu 1 Elaboration 2 Elaboration: Building the Analysis Model An analysis model provides a description

More information

visualstate Reference Guide

visualstate Reference Guide COPYRIGHT NOTICE Copyright 2000 2014 IAR Systems AB. No part of this document may be reproduced without the prior written consent of IAR Systems. The software described in this document is furnished under

More information

Unified Modeling Language (UML) Object Diagram and Interaction Diagrams

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

Interaction Modelling: Sequence Diagrams

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

Object Oriented Design. Program Design. Analysis Phase. Part 2. Analysis Design Implementation. Functional Specification

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

The learning objectives of this chapter are the followings. At the end of this chapter, you shall

The 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 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

Chapter 2, lecture 2 Modeling with UML

Chapter 2, lecture 2 Modeling with UML Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 2, lecture 2 Modeling with UML Overview: More detail on modeling with UML Use case diagrams Class diagrams Sequence diagrams Activity

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

CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam

CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam MIDTERM EXAMINATION 2010 Question No: 1 ( Marks: 1 ) - Please choose one By following modern system engineering

More information

Advanced Software Engineering

Advanced Software Engineering Dev Bhoomi Institute Of Technology LABORATORY MANUAL PRACTICAL INSTRUCTION SHEET EXPERIMENT NO. ISSUE NO. : ISSUE DATE: REV. NO. : REV. DATE : PAGE: 1 LABORATORY Name & Code: Advanced Software Engineering

More information

Object Oriented Methods with UML. Lecture -4

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

Object Mentor, Inc. Or How Uncle Bob uses UML. Copyright by Object Mentor, Inc All Rights Reserved

Object Mentor, Inc. Or How Uncle Bob uses UML.  Copyright by Object Mentor, Inc All Rights Reserved Object Mentor, Inc. Or How Uncle Bob uses UML. www.objectmentor.com fitnesse.org www.xprogramming.com www.junit.org Copyright 1998-2001 by Object Mentor, Inc All Rights Reserved The three modes of UML

More information

Enterprise Architect - UML Dictionary

Enterprise Architect - UML Dictionary Enterprise Architect is an intuitive, flexible and powerful UML analysis and design tool for building robust and maintainable software. This dictionary explains the way in which Enterprise Architect represents

More information

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system)

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system) Topics Overview- The UML Functional Model Use Case Diagram (essential and system) Structural Model Class/object, Component and Deployment Diagram Behavioral Models Activity, State chart, sequence /collaboration

More information

UML Diagrams MagicDraw UML Diagrams

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

Chapter : Analysis Modeling

Chapter : Analysis Modeling Chapter : Analysis Modeling Requirements Analysis Requirements analysis Specifies software s operational characteristics Indicates software's interface with other system elements Establishes constraints

More information

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization 2016 Software Engineering 2 (Zoom-Into Design) Requirement Requirement Specification (Functional & Non- Functional) analysis Requirement

More information

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered Object-oriented development Object-oriented Design Object-oriented analysis, design and programming are related but distinct. OOA is concerned with developing an object model of the application domain.

More information

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

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

System Analysis and Design. Statecharts

System Analysis and Design. Statecharts System Analysis and Design Statecharts Salahaddin University College of Engineering Software Engineering Department 2011-2012 Amanj Sherwany http://www.amanj.me/wiki/doku.php?id=teaching:su:system_analysis_and_design

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

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

Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS

Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS Previously Key features of programming languages Software Development Lifecycle Using tools to demonstrate

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

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

Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts 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

More information

Introduction to Software Engineering. 6. Modeling Behaviour

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

Ali Khan < Project Name > Design Document. Version 1.0. Group Id: S1. Supervisor Name: Sir.

Ali Khan < Project Name > Design Document. Version 1.0. Group Id: S1. Supervisor Name: Sir. < Project Name > Design Document Version 1.0 Group Id: S1. Supervisor Name: Sir. Revision History Date Version Description Author Table of Contents 1. Introduction of Design Document 2. Entity Relationship

More information

System Sequence Diagrams. Based on Craig Larman, Chapter 10 and Anuradha Dharani s notes

System Sequence Diagrams. Based on Craig Larman, Chapter 10 and Anuradha Dharani s notes System Sequence Diagrams Based on Craig Larman, Chapter 10 and Anuradha Dharani s notes Dynamic behaviors Class diagrams represent static relationships. Why? What about modeling dynamic behavior? Interaction

More 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

Developing Shlaer-Mellor Models Using UML

Developing Shlaer-Mellor Models Using UML Developing Shlaer-Mellor Models Using UML Stephen J. Mellor Neil Lang Project Technology, Inc. 10940 Bigge Street San Leandro, California 94577 (510) 567-0255 http://www.projtech.com This position paper

More information

Object-Oriented Design and Modeling Using the UML

Object-Oriented Design and Modeling Using the UML Design Classes Object-Oriented Design and Modeling Using the UML Based on Chapter 18 of Whitten, Bentley, and Dittman: Systems Analysis and Design for the Global Enterprise (7th Ed). McGraw Hill. 2007

More information

UML Component Diagrams A.Y 2018/2019

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

Lesson 11. W.C.Udwela Department of Mathematics & Computer Science

Lesson 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 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

Lecture 17: (Architecture V)

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

Pieter 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 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 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

UNIT 5 - UML STATE DIAGRAMS AND MODELING

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

Statecharts 1.- INTRODUCTION 1.- INTRODUCTION

Statecharts 1.- INTRODUCTION 1.- INTRODUCTION Statecharts INDEX 1.- Introduction 2.- When to use Statecharts 3.- Basic components 4.- Connectors and compound transitions Mª Ángeles Martínez Ibáñez University of Bergen Selected topics in programming

More information

Combined Modeling and Programming with State Machines

Combined Modeling and Programming with State Machines Combined Modeling and Programming with State Machines Kjetil Andresen Master s Thesis Spring 2014 Combined Modeling and Programming with State Machines Kjetil Andresen 1st May 2014 ii Abstract As part

More information

Activity Nets: A UML profile for modeling workflow and business processes

Activity Nets: A UML profile for modeling workflow and business processes Activity Nets: A UML profile for modeling workflow and business processes Author: Gregor v. Bochmann, SITE, University of Ottawa (August 27, 2000) 1. Introduction 1.1. Purpose of this document Workflow

More information

Software Engineering. Page 1. Objectives. Object-Behavioural Modelling. Analysis = Process + Models. Case Study: Event Identification

Software Engineering. Page 1. Objectives. Object-Behavioural Modelling. Analysis = Process + Models. Case Study: Event Identification Software Engineering Object-Oriented Analysis (State and Interaction Diagrams) James Gain (jgain@cs.uct.ac.za) http://people.cs.uct.ac.za/~jgain 1. Show the object-behaviour design process Objectives 2.

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

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

7. UML Sequence Diagrams Page 1 of 1

7. UML Sequence Diagrams Page 1 of 1 7. UML Sequence Diagrams Page 1 of 1 Sequence Diagram in UML In the last article, we saw Activity diagrams, the notations to be used in Activity diagrams, their significance, and how to build an Activity

More information

Case Management Model and Notation - CMMN

Case Management Model and Notation - CMMN Case Management Model and Notation - CMMN Knut Hinkelmann Case Management and Case Modeling Any individual Case may be resolved in a completely ad-hoc manner But as experience grows in resolving similar

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

Interaction Modelling: Use Cases

Interaction Modelling: Use Cases Interaction Modelling: Use Cases Fabrizio Maria Maggi Institute of Computer Science (these slides are derived from the book Object-oriented modeling and design with UML ) Interaction Modelling: INPUT 1

More information

Topics. Kinds of UML models. Use case modeling. Actors. Actor. Assignment of reqs to actors and use cases

Topics. Kinds of UML models. Use case modeling. Actors. Actor. Assignment of reqs to actors and use cases MACIASZEK, L.A. (2005): Requirements Analysis and System Design, 2 nd ed. Addison Wesley, Harlow England, 504p. ISBN 0 32 20464 6 Chapter 3.2 Objects and Object Modeling Fundamentals of object modeling

More information

SE Assignment III. 1. List and explain primitive symbols used for constructing DFDs. Illustrate the use of these symbols with the help of an example.

SE Assignment III. 1. List and explain primitive symbols used for constructing DFDs. Illustrate the use of these symbols with the help of an example. SE Assignment III 1. List and explain primitive symbols used for constructing DFDs. Illustrate the use of these symbols with the help of an example. There are essentially 5 different types of symbols used

More information

LABORATORY 1 REVISION

LABORATORY 1 REVISION UTCN Computer Science Department Software Design 2012/2013 LABORATORY 1 REVISION ================================================================== I. UML Revision This section focuses on reviewing the

More information

Unified Modeling Language (UML)

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

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

Introduction to Unified Modelling Language (UML)

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

Object-Oriented Modeling. Sequence Diagram. Slides accompanying Version 1.0

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

Introduction To UML PART II State Diagrams

Introduction To UML PART II State Diagrams Introduction To UML PART II State Diagrams The behavioral elements show how parts of a UML model change over time. As the system interacts with users and possibly with other systems, the objects that make

More information

Structured and Object Oriented Analysis and Design

Structured and Object Oriented Analysis and Design RAMRAO ADIK INSTITUTE OF TECHNOLOGY, NERUL Department of Computer Engineering Lab Manual Structured and Object Oriented Analysis and Design 2015-2016 List of Experiments Subject: Structured and object

More 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