Object Behaviours UML Statecharts

Size: px
Start display at page:

Download "Object Behaviours UML Statecharts"

Transcription

1 Object Behaviours UML Statecharts Software Requirements and Design CITS 4401 Lecture 5 Based on Ch 5 Lecture Notes by Bruegge & Dutoit

2 Finite state machine flip switch on light off light on flip switch off

3 Finite state machine State flip switch on Transition light off light on flip switch off Event

4 Ex 1. Interaction with my PC (1) ctrl-alt-del logged off login screen confirm-logout username-passwd logout screen request-logout active desktop

5 Interaction with my PC (2) ctrl-alt-del bad user-passwd logged off login screen confirm-logout crash good user-passwd logout screen change-mind active desktop do-work request-logout

6 UML Statechart Diagram Notation State1 do/action event/action entry/action exit/action Event1(attr) [condition]/action Event trigger With parameters Also: internal transitions Guard condition State2 UML notation based on statecharts by Harel in 1987 Added are a few object-oriented modifications A UML statechart diagram (or UML state machine) can be mapped into a finite state machine (FSM)

7 Statechart Diagrams Graphs whose nodes are states and whose directed arcs are transitions labelled by events. States capture conditions which hold for a period of time e.g. light is on, light is off Events change the state (except internal) e.g. turning the light on, turning the light off Statechart diagrams represent behaviour from the perspective of a single object only An object model with a set of objects must be represented by a set of state diagrams

8 State An abstraction of the attributes of a class State is the aggregation of several attributes of a class Basically an equivalence class of all those attribute values and links that do not need to be distinguished as far as the control structure of the system is concerned Example: State of a user interface screen logged in, logged out, active, idle active is an abstraction of all the user s logged in activity State has duration

9 Event Something that happens at a point in time (e.g. button press, mouse click) Triggers a transition Internal transition (no state change) External transition (change to different state) May result in an action being executed

10 Example 2: vending machine Idle coins_in(amount) / set balance cancel / refund coins Collect Money coins_in(amount) / add to balance [item empty] [select(item)] [change<0] do: test item and compute change [change=0] [change>0] do: dispense item do: make change

11 Another example incidentdocumented incidenthandled incidentarchived States of the Incident object of FRIEND

12 Exercise Draw a state diagram for the book class: A book can be borrowed from the library on a short term or long term loan and then must be returned. A long term loan can only be taken if there is no one on the waiting list. A short term loan can be extended to a long term loan

13 Problem Statement: Direction Control for a Toy Car Power is turned on Car moves forward and car headlight shines Power is turned off Car stops and headlight goes out. Power is turned on Headlight shines Power is turned off Headlight goes out. Power is turned on Car runs backward with its headlight shining. Power is turned off Car stops and headlight goes out. Power is turned on Headlight shines Power is turned off Headlight goes out. Power is turned on Car runs forward with its headlight shining.

14 Headlight off Off on Toy Car: Dynamic Model Wheel Stationary off on Forward off Stationary on On Stationary Stationary on off Stationary off Backward on Stationary

15 Practical Tips for Dynamic Modeling Construct dynamic models only for classes with significant dynamic behavior Avoid analysis paralysis Consider only relevant attributes Use abstraction if necessary Look at the granularity of the application when deciding on actions and activities Reduce notational clutter

16 Exercise Consider the operation of the CITS4401 discussion page: Model the dynamic behavior of a controller object for someone reading and posting to the forum.

Page 1. Dynamic Modeling. How do you find classes? Dynamic Modeling with UML. UML Interaction Diagrams. UML State Chart Diagram.

Page 1. Dynamic Modeling. How do you find classes? Dynamic Modeling with UML. UML Interaction Diagrams. UML State Chart Diagram. Dynamic Modeling How do you find classes? We have already established several sources for class identification: Application domain analysis: We find classes by talking to the client and identify abstractions

More information

Chapter 5, Analysis: Dynamic Modeling

Chapter 5, Analysis: Dynamic Modeling Chapter 5, Analysis: Dynamic Modeling Using UML, Patterns, and Java Object-Oriented Software Engineering Dynamic Modeling with UML Diagrams for dynamic modeling Interaction diagrams describe the dynamic

More information

Chapter 5, Analysis: Dynamic Modeling

Chapter 5, Analysis: Dynamic Modeling Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 5, Analysis: Dynamic Modeling ü Requirements Elicitation (Ch.4) ü Introduction (Ch 1-3) OOSE- Galaxy ü Nonfunctional Requirements

More information

System Modeling III: Dynamic Modeling

System Modeling III: Dynamic Modeling System Modeling III: Dynamic Modeling Introduction into Software Engineering Lecture 7 9 May 2007 Bernd Bruegge Applied Software Engineering Technische Universitaet Muenchen 1 Reverse Engineering Challenge

More information

Chapter 5, Analysis: Dynamic Modeling

Chapter 5, Analysis: Dynamic Modeling Object-Oriented Software Engineering Conquering Complex and Changing Systems Chapter 5, Analysis: Dynamic Modeling Bernd Brügge Allen H. Dutoit Technische Universität München Applied Software Engineering

More information

Course "Softwaretechnik" Book Chapter 5 Analysis: Dynamic Modeling

Course Softwaretechnik Book Chapter 5 Analysis: Dynamic Modeling Course "Softwaretechnik" Book Chapter 5 Analysis: Dynamic Modeling Lutz Prechelt, Bernd Bruegge, Allen H. Dutoit Freie Universität Berlin, Institut für Informatik http://www.inf.fu-berlin.de/inst/ag-se/

More information

Slides copyright 1996, 2001, 2005, 2009 by Roger S. Pressman

Slides copyright 1996, 2001, 2005, 2009 by Roger S. Pressman Chapter 7 Requirements Modeling: Flow, Behavior, Patterns, and WebApps Slides in this presentation were taken from two sources: Software Engineering: A Practitioner s Approach, 7/e by Roger S. Pressman

More information

Advanced State Modeling

Advanced State Modeling Advanced State Modeling Or: Derek Zoolander Strikes Back Jonathan Sprinkle 1 University of Arizona Department of Electrical and Computer Engineering PO Box 210104, Tucson, AZ 85721, USA Jonathan Sprinkle

More information

Chapter 5, Analysis: Dynamic Modeling

Chapter 5, Analysis: Dynamic Modeling Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 5, Analysis: Dynamic Modeling ü Requirements Elicitation (Ch.4) ü Introduction (Ch 1-3) OOSE- Galaxy ü Nonfunctional Requirements

More information

Finite State Machines and Statecharts

Finite State Machines and Statecharts Finite State Machines and Statecharts Hassan Gomaa Dept of Information & Software Engineering George Mason University Reference: H. Gomaa, Chapter 10 - Designing Concurrent, Distributed, and Real-Time

More information

Steps in Using COMET/UML

Steps in Using COMET/UML SWE 621: Software Modeling and Architectural Design Lecture Notes on Software Design Lecture 5- Finite State Machines and Statecharts Hassan Gomaa Dept of Computer Science George Mason University it Fairfax,

More information

Dynamic Modeling - Finite State Machines

Dynamic Modeling - Finite State Machines Dynamic Modeling - Finite State Machines SWE 321 Fall 2014 Rob Pettit 1 Finite State Machines Finite number of states Only in one state at a time Transition Change of state Caused by event Transition to

More information

Introduction Events States Transition State Diagrams State Diagram Behavior Advanced State Modeling In-Class Exercises.

Introduction Events States Transition State Diagrams State Diagram Behavior Advanced State Modeling In-Class Exercises. State Models Or: Frenemies of the state: BYOB.... Jonathan Sprinkle 1 University of Arizona Department of Electrical and Computer Engineering PO Box 210104, Tucson, AZ 85721, USA August 27, 2012 Jonathan

More information

Chapter 2, Modeling with UML, Part 2

Chapter 2, Modeling with UML, Part 2 Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 2, Modeling with UML, Part 2 Outline of this Class What is UML? A more detailed view on ü Use case diagrams ü Class diagrams ü

More information

Chapter 5, Analysis: Dynamic Modeling

Chapter 5, Analysis: Dynamic Modeling Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 5, Analysis: Dynamic Modeling An overview of OOSE development activities and their products Problem Statement Requirements Elicitation

More information

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

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

More information

Ch t 8 Chapter 8. System Models

Ch t 8 Chapter 8. System Models Ch t 8 Chapter 8. System Models Objectives To explain why the context t of a system should be modelled d as a part of requirements engineering process To describe behavioural modelling, data modelling

More information

Computer Science for Engineers

Computer Science for Engineers Computer Science for Engineers Lecture 5 Object Orientation part 3 Prof. Dr. Dr.-Ing. Jivka Ovtcharova Dipl. Wi.-Ing. Dan Gutu 27 th of November 2009 Aggregation and Composition (1) A special case of an

More 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

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

Informatics 1 - Computation & Logic: Tutorial 5

Informatics 1 - Computation & Logic: Tutorial 5 Informatics - Computation & Logic: Tutorial 5 Computation: Introduction to Finite State Machines Week 7: 3 October - 4 November 206 Please attempt the entire worksheet in advance of the tutorial, and bring

More information

Specification-based Testing 2

Specification-based Testing 2 Specification-based Testing 2 Conrad Hughes School of Informatics Slides thanks to Stuart Anderson 26 January 2010 Software Testing: Lecture 5 1 Overview We consider issues in the generation of test cases

More information

Software Engineering I: Software Technology WS 2008/09. Analysis

Software Engineering I: Software Technology WS 2008/09. Analysis Software Engineering I: Software Technology WS 2008/09 Analysis Bernd Bruegge Applied Software Engineering Technische Universitaet Muenchen 1 Outline Recall: System modeling = Functional modeling + Object

More information

Lecture 16: Hierarchical State Machines II

Lecture 16: Hierarchical State Machines II Software Design, Modelling and Analysis in UML Lecture 6: Hierarchical State Machines II 206-0-9 6 206-0-9 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany

More information

System models Abstract descriptions of systems whose requirements are being analysed. System modelling. Structured methods

System models Abstract descriptions of systems whose requirements are being analysed. System modelling. Structured methods System models Abstract descriptions of systems whose requirements are being analysed Ian Sommerville 995/2000 (Modified by Spiros Mancoridis 999) Software Engineering, 6th edition. Chapter 7 Slide System

More information

UML Is Not a Methodology

UML Is Not a Methodology UML COSC 4354 1 UML Is Not a Methodology UML is an acronym for Unified Modeling Language UML is a language A language is simply a tool for communication and exchanging ideas UML is a notation, not a methodology

More information

YEAR 12 FURTHER MATHS UNIT 4 MODULE 2 NETWORKS AND DECISION MATHEMATICS CRITICAL PATH ANALYSIS

YEAR 12 FURTHER MATHS UNIT 4 MODULE 2 NETWORKS AND DECISION MATHEMATICS CRITICAL PATH ANALYSIS YEAR 12 FURTHER MATHS UNIT 4 MODULE 2 NETWORKS AND DECISION MATHEMATICS CRITICAL PATH ANALYSIS Directed graphs or digraphs can be used to model situations where an order or direction is implied. For example,

More information

Chapter 2, Modeling with UML, Part 2

Chapter 2, Modeling with UML, Part 2 Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 2, Modeling with UML, Part 2 Outline of this Class What is UML? A more detailed view on ü Use case diagrams ü Class diagrams ü

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

Setting Yourself Up as a User

Setting Yourself Up as a User Contents Setting Yourself Up as a User... 2 Register on the system... 2 1. Search for an available room... 3 2. Room Information... 5 3. Booking Confirmation... 5 4. Managing your Bookings... 5 How to

More information

Practical UML - A Hands-On Introduction for Developers

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

Creating a Wireflow Diagram

Creating a Wireflow Diagram In Visual Paradigm, a wireflow is created in a Wireflow Diagram. You can create as many Wireflow Diagrams as you need to support your UX design needs. A Wireflow Diagram is composed of scenes, which are

More information

Fault, Error, and Failure

Fault, Error, and Failure Fault, Error, and Failure Testing, Quality Assurance, and Maintenance Winter 2018 Prof. Arie Gurfinkel based on slides by Prof. Lin Tan and others Terminology, IEEE 610.12-1990 Fault -- often referred

More information

Chapter 5, Analysis: Object Modeling

Chapter 5, Analysis: Object Modeling Chapter 5, Analysis: Object Modeling Résumé Maintenant: Modélisation des objets du domaine La partie statique (diagramme de classe) Les activités durant la modélisation des objets L identification des

More information

One and a half hours. Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE

One and a half hours. Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE COMP 12111 One and a half hours Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE Fundamentals of Computer Engineering Date: Monday 23rd January 2017 Time: 09:45-11:15 Answer

More information

Hardware and Software minimum specifications

Hardware and Software minimum specifications Introduction Unreal Engine 4 is the latest version of the Unreal games development software produced by Epic Games. This software is responsible for titles such as Unreal Tournament, Gears of War and Deus

More information

Software Engineering I (02161)

Software Engineering I (02161) Software Engineering I (02161) Week 8 Assoc. Prof. Hubert Baumeister DTU Compute Technical University of Denmark Spring 2017 Recap I Last week I Sequence diagrams I Centralized vs. Decentralized Control

More information

MatDeck tips. Basic. :=- assignment of variable values; assign value to variable a with code a := value

MatDeck tips. Basic. :=- assignment of variable values; assign value to variable a with code a := value MatDeck tips Basic :=- assignment of variable values; assign value to variable a with code a := value = - displaying variable value; display value stored in the variable a with code a = Alt continue with

More information

Input: Implementing Interaction Techniques as Finite State Machines

Input: Implementing Interaction Techniques as Finite State Machines Input: Implementing Interaction Techniques as Finite State Machines Administration HW4a due today HW5 set today 2 Interaction Techniques A method for carrying out a specific interactive task Example: enter

More information

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

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

More information

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

1. Launch your web browser. 2. Go to < Enter your address and Password as requested. Click on login.

1. Launch your web browser. 2. Go to <  Enter your  address and Password as requested. Click on login. 1. Launch your web browser. 2. Go to Enter your Email address and Password as requested. Click on login. 1. Enter your complete email address; i.e. johnsmith@

More information

Microsoft Dynamics Nav 2016 User Manual

Microsoft Dynamics Nav 2016 User Manual Microsoft Dynamics Nav 2016 User Manual If you are searched for the book Microsoft dynamics nav 2016 user manual in pdf format, then you've come to the correct website. We presented the full version of

More information

Introduction for using UML

Introduction for using UML Introduction for using UML Edition 2, 2006 Mikael Åkerholm, Ivica Crnković, Goran Mustapić, Mikael Davidsson Mälardalen University, Västerås, Sweden, 2006 Abstract The purpose with this document is to

More information

Laboratory Exercise 3 Davide Rossi DEI University of Bologna AA

Laboratory Exercise 3 Davide Rossi DEI University of Bologna AA Laboratory Exercise 3 Davide Rossi DEI University of Bologna AA 2017-2018 Objectives Summary of finite state machines (Mealy, Moore) Description of FSMs in System Verilog Design of control blocks based

More information

Practical UML : A Hands-On Introduction for Developers

Practical UML : A Hands-On Introduction for Developers Borland.com Borland Developer Network Borland Support Center Borland University Worldwide Sites Login My Account Help Search Practical UML : A Hands-On Introduction for Developers - by Randy Miller Rating:

More information

Modeling. Slides by: Ms. Shree Jaswal. Slides by:ms. Shree Jaswal 1

Modeling. Slides by: Ms. Shree Jaswal. Slides by:ms. Shree Jaswal 1 Modeling Slides by: Ms. Shree Jaswal Slides by:ms. Shree Jaswal 1 Model What is a model? a model is a simplification of reality Why do we model? we build models so that we can better understand the system

More information

Chapter 5 System modeling

Chapter 5 System modeling Chapter 5 System Modeling Lecture 1 1 Topics covered Context models Interaction models Structural models Behavioral models Model-driven driven engineering 2 System modeling System modeling is the process

More information

State Machines and Statecharts Part III: Advanced Topics Bruce Powel Douglass, Ph.D. Chief Evangelist, i-logix

State Machines and Statecharts Part III: Advanced Topics Bruce Powel Douglass, Ph.D. Chief Evangelist, i-logix State Machines and Statecharts Part III: Advanced Topics Bruce Powel Douglass, Ph.D. Chief Evangelist, i-logix Bruce Powel Douglass, Ph.D. i-logix Page 1 One man s Of Course! is another man s Huh? Book

More information

Chapter12 Collaboration 1

Chapter12 Collaboration 1 Chapter12 Collaboration 1 Chapter 12 Collaboration... 2 12.1 Access to Shared Spaces... 4 12.1.1 Login... 4 12.1.2 Chat Panel... 4 12.1.3 Portals... 8 12.1.4 Avatars... 8 12.1.5 Chat... 9 12.1.6 Basics

More information

Solution: It may be helpful to list out exactly what is in each of these events:

Solution: It may be helpful to list out exactly what is in each of these events: MATH 5010(002) Fall 2017 Homework 1 Solutions Please inform your instructor if you find any errors in the solutions. 1. You ask a friend to choose an integer N between 0 and 9. Let A = {N 5}, B = {3 N

More information

Review of Basic Software Design Concepts. Fethi Rabhi SENG 2021

Review of Basic Software Design Concepts. Fethi Rabhi SENG 2021 Review of Basic Software Design Concepts Fethi Rabhi SENG 2021 1 Topics The development process Planning Designing Implementing 2 1. The development process How to organise activities related to the creation,

More information

Installing Nagios Log Server with VMware Workstation Player

Installing Nagios Log Server with VMware Workstation Player LS Installing Nagios Log Server with VMware Workstation Player This document is intended to outline the steps required to install Nagios Log Server within VMware Workstation Player. Still need installation

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

Excel has a powerful automation feature that lets you automate processes that you need to do repeatedly.

Excel has a powerful automation feature that lets you automate processes that you need to do repeatedly. Professor Shoemaker There are times in Excel when you have a process that requires several or many steps and that you need to do repeatedly. Excel has a powerful automation feature that lets you automate

More information

JUN / 04 VERSION 7.1 FOUNDATION

JUN / 04 VERSION 7.1 FOUNDATION JUN / 04 VERSION 7.1 FOUNDATION PVI EWSDTME www.smar.com Specifications and information are subject to change without notice. Up-to-date address information is available on our website. web: www.smar.com/contactus.asp

More information

Today s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading:

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

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc.

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc. UML Modeling UML diagrams UML (Unified Modeling Language) is a general purpose visual modeling language that provides different types of diagrammatic techniques and notations to specify, visualize, analyze,

More information

Software Design Models, Tools & Processes. Lecture 2: Inception Phase Cecilia Mascolo

Software Design Models, Tools & Processes. Lecture 2: Inception Phase Cecilia Mascolo Software Design Models, Tools & Processes Lecture 2: Inception Phase Cecilia Mascolo Inception Phase This is the phase when most of the system requirements are identified. Discover and reach agreement

More information

Software Engineering I (02161)

Software Engineering I (02161) Software Engineering I (02161) Week 7 Assoc. Prof. Hubert Baumeister DTU Compute Technical University of Denmark Spring 2016 Contents State machines Library Application and GUI Layered Architecture: Persistence

More information

LOGIN TO YOUR ACCOUNT

LOGIN TO YOUR ACCOUNT Student Printing at RPCC LOGIN TO YOUR ACCOUNT Using a web browser, go to RPCC Web Pay Home, to access your Pcounter account. You may create a new account, but it is not required; you have an account that

More information

Finite State Machine Modeling for Software Product Lines. Finite State Machines and Statecharts

Finite State Machine Modeling for Software Product Lines. Finite State Machines and Statecharts SWE 721 / IT 821 Advanced Software Design: Reusable Software Architectures Finite State Machine Modeling for Software Product Lines Hassan Gomaa Department of Information and Software Engineering George

More information

Modelling with Classes. CITS1220 Software Engineering

Modelling with Classes. CITS1220 Software Engineering Modelling with Classes CITS1220 Software Engineering Lecture Overview Classes and UML Associations between classes Special types of association: is-a, has-a, is-part-of Modelling Example Implementing associations

More information

Software Specification 2IX20

Software Specification 2IX20 Software Specification 2IX20 Julien Schmaltz (slides from A. Serebrenik and M. Mousavi) Lecture 04: Structural specification / Class diagrams UML diagram types Classes: Chapter 11.4 of the UML standard.

More information

Composition of State Machines

Composition of State Machines Chapter 5 Composition of State Machines Hongwei Zhang http://www.cs.wayne.edu/~hzhang/ Ack.: this lecture is prepared in part based on slides of Lee, Sangiovanni-Vincentelli, Seshia. Outline Concurrent

More information

Finite State Machines: Finite State Transducers; Specifying Control Logic

Finite State Machines: Finite State Transducers; Specifying Control Logic Finite State Machines: Finite State Transducers; Specifying Control Logic Greg Plaxton Theory in Programming Practice, Fall 2005 Department of Computer Science University of Texas at Austin Finite State

More information

02291: System Integration

02291: 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 information

One and a half hours. Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE

One and a half hours. Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE One and a half hours Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE Fundamentals of Computer Engineering Date: Thursday 21st January 2016 Time: 14:00-15:30 Answer BOTH Questions

More information

CSE 127: Computer Security. Security Concepts. Kirill Levchenko

CSE 127: Computer Security. Security Concepts. Kirill Levchenko CSE 127: Computer Security Security Concepts Kirill Levchenko October 3, 2014 Computer Security Protection of systems against an adversary Secrecy: Can t view protected information Integrity: Can t modify

More information

Course Introduction to Matlab and Simulink - Stateflow

Course Introduction to Matlab and Simulink - Stateflow Course Introduction to Matlab and Simulink - Stateflow Emanuele Ruffaldi June 08, 2017 http://www.eruffaldi.com/wp/introduction-to-matlab-and-simulink/ Scuola Superiore Sant Anna, Pisa Event-driven Systems

More information

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

EE 231 Fall EE 231 Homework 8 Due October 20, 2010

EE 231 Fall EE 231 Homework 8 Due October 20, 2010 EE 231 Homework 8 Due October 20, 20 1. Consider the circuit below. It has three inputs (x and clock), and one output (z). At reset, the circuit starts with the outputs of all flip-flops at 0. x z J Q

More information

Lecture 8: Use Case -Driven Design. Where UML fits in

Lecture 8: Use Case -Driven Design. Where UML fits in Lecture 8: Use Case -Driven Design The Role of UML in the Software Process E.g. ICONIX Domain Models Use Cases 2008 Steve Easterbrook. This presentation is available free for non-commercial use with attribution

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

Software component interactions and sequence diagrams

Software component interactions and sequence diagrams Software component interactions and sequence diagrams Paul Jackson School of Informatics University of Edinburgh What do we need to know? Recap Recall that this is an overview of software engineering,

More information

Internet Banking. Getting Started Guide New Zealand

Internet Banking. Getting Started Guide New Zealand Internet Banking Getting Started Guide New Zealand 2 Rabobank Internet Banking Welcome to Rabobank Internet Banking Access with peace of mind With Rabobank Internet Banking, you can control your money

More information

MS Office 2016 Excel Pivot Tables - notes

MS Office 2016 Excel Pivot Tables - notes Introduction Why You Should Use a Pivot Table: Organize your data by aggregating the rows into interesting and useful views. Calculate and sum data quickly. Great for finding typos. Create a Pivot Table

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Introduction to Embedded Systems Sanjit A. Seshia UC Berkeley EECS 149/249A Fall 2015 2008-2015: E. A. Lee, A. L. Sangiovanni-Vincentelli, S. A. Seshia. All rights reserved. Chapter 3: Discrete Dynamics,

More information

Lab 1: Accessing the Linux Operating System Spring 2009

Lab 1: Accessing the Linux Operating System Spring 2009 CIS 90 Linux Lab Exercise Lab 1: Accessing the Linux Operating System Spring 2009 Lab 1: Accessing the Linux Operating System This lab takes a look at UNIX through an online experience on an Ubuntu Linux

More information

(a) What is the denary equivalent of the hexadecimal number A7?

(a) What is the denary equivalent of the hexadecimal number A7? 1 What is the denary equivalent of the hexadecimal number A7? You may use the space below for rough working. You may get some marks for your working, even if your answer is incorrect. Represent the denary

More information

Finite State Machines

Finite State Machines Lab Workbook Introduction (FSM) are sequential circuit used in many digital systems to control the behavior of systems and dataflow paths. Examples of FSM include control units and sequencers. This lab

More information

Zimbra User Guide Rev

Zimbra User Guide Rev Zimbra User Guide Rev. 2.12.2013 Using Zimbra Email To access Zimbra email, go to: https://email.outlookmail.com and enter your current network username and password. Supported browsers include: Windows

More information

Internet Banking. Getting Started Guide Australia

Internet Banking. Getting Started Guide Australia Internet Banking Getting Started Guide Australia 2 Rabobank Internet Banking Welcome to Rabobank Internet Banking Access with peace of mind With Rabobank Internet Banking, you can control your money anywhere,

More information

VISHNU INSTITUTE OF TECHNOLOGY Vishnupur, BHIMAVARAM

VISHNU INSTITUTE OF TECHNOLOGY Vishnupur, BHIMAVARAM VISHNU INSTITUTE OF TECHNOLOGY Vishnupur, BHIMAVARAM 534 202 LABORATORY MANUAL IV B.Tech I Sem CSE Unified Modeling Language & Design Patterns Lab DEPARTMENT OF CSE OUR MISSION LEARN TO EXCEL Regd.No

More information

Community Mobile Patrol Officer User Guide v13.4

Community Mobile Patrol Officer User Guide v13.4 Community Mobile Patrol Officer User Guide v13.4 To download the PatrolLIVE App for the iphone: 1. On the iphone, go to the App Store and search for Guard Tour (Please note: The App is not supported on

More information

PROGRAM MODELING CONCEPTS UNIT IV

PROGRAM MODELING CONCEPTS UNIT IV PROGRAM MODELING CONCEPTS UNIT IV Introduction Modelling processes are used for software analysis and design before software implementation. A software analysis and design helps A description of the system

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

IV. State Diagrams. State Diagrams (Statecharts)

IV. State Diagrams. State Diagrams (Statecharts) IV. State Diagrams State Diagrams Events and States Superstates 2004 John Mylopoulos State Diagrams -- 1 State Diagrams (Statecharts) State diagrams model processes (business processes, machine processes,

More information

Requirements Engineering

Requirements Engineering Chapter 3: Requirements Modeling Requirements Engineering Objectives In this chapter, you will learn about: Functional requirements Modeling requirements Overview of basic modeling paradigms Gus Requirements

More information

Object-Oriented and Classical Software Engineering

Object-Oriented and Classical Software Engineering Slide 16.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 16 Slide 16.2 MORE ON UML 1 Chapter Overview Slide

More information

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

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

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

More information

OO System Models Static Views

OO System Models Static Views OO System Models Static Views UML Class & Object Diagrams Software Engineering OO Models Class Diagram Slide 1 Objective Introduces the evolutionary approach for building classes Explain how to identify

More information

KCCU Online Banking - For Members Use

KCCU Online Banking - For Members Use KCCU Online Banking - For Members Use KCCU s online financial services facility allows members to access their current financial data and perform a limited transaction set in the comfort of their home

More information

Last Lecture: Divide by 3 FSM

Last Lecture: Divide by 3 FSM Last Lecture: Divide by 3 FSM Output should be 1 every 3 clock cycles S2 S0 S1 The double circle indicates the reset state Slide derived from slides by Harris & Harris from their book 1 Finite State Machines

More information

Lecture 10: State Machines Overview

Lecture 10: State Machines Overview Software Design, Modelling and Analysis in UML Lecture 10: State Machines Overview 2015-12-03 10 2015-12-03 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany

More information

Software Life-Cycle Models

Software Life-Cycle Models Software Life-Cycle Models CMPSC 487 Lecture 03 Topics: UML Class Diagram Rosenburg Chap 2. Domain Modeling A. UML: Unified Modeling Language UML is a general-purpose, developmental, modeling language

More information

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa SOFTWARE MODELING AND DESIGN UML, Use Cases, Patterns, and Software Architectures Hassan Gomaa George Mason University, Fairfax, Virginia Ki Cambridge UNIVERSITY PRESS Contents Preface P"U

More information

CHSM. A language system for extending C++ or Java for implementing reactive systems.

CHSM. A language system for extending C++ or Java for implementing reactive systems. A language system for extending C++ or Java for implementing reactive systems. Paul J. Lucas paul@lucasmail.org Fabio Riccardi fabio.riccardi@mac.com These slides are available at: http://chsm.sourceforge.net/chsm-slides.pdf

More information

Animating Layers with Timelines

Animating Layers with Timelines Animating Layers with Timelines Dynamic HTML, or DHTML, refers to the combination of HTML with a scripting language that allows you to change style or positioning properties of HTML elements. Timelines,

More information