Real Time Systems Modeling Structure in UML (Part I)

Slides:



Advertisements
Similar presentations
UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
Advertisements

A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
Sucha Smanchat  Steps in OOAD using UML  Use Case Diagram  Sequence Diagram / Communication Diagram  Class Diagram  State.
Object-Oriented Analysis and Design
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Lecture 12: Chapter 22 Topics: UML (Contd.) –Relationship Structural Behavioral –Diagram Structural Behavioral.
1 © Wolfgang Pelz UML3 UML 3 Notations describe how to use reusable software. Package Component Deployment Node.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Lecturer: Dr. AJ Bieszczad Chapter 66-1 Object-Oriented analysis and design Special nature of OO development Use cases Design with UML OO system design.
HAS. Patterns The use of patterns is essentially the reuse of well established good ideas. A pattern is a named well understood good solution to a common.
1 CS/CPE 426 Senior Projects Chapter 21: State Machines Chapter 22:Advanced State Machines [Arlow and Neustadt 2005] March 24, 2009.
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
SE-565 Software System Requirements More UML Diagrams.
Designing with Interaction and Design Class Diagrams Chapters 15 & 16 Applying UML and Patterns Craig Larman With some ideas from students in George Blank’s.
An Introduction to Rational Rose Real-Time
Unified Modeling Language
The Unified Modeling Language (UML) Class Diagrams.
UML Sequence Diagrams Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
The Design Discipline.
CSE301 University of Sunderland Harry R Erwin, PhD
Introduction to UML 1 Quick Tour Why do we model? What is the UML? Foundation elements Unifying concepts Language architecture Relation to other OMG technologies.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Slide 1 UML Review Chapter 2: Introduction to Object-Oriented Systems Analysis and Design with the Unified Modeling Language, Version 2.0 Alan Dennis,
Unified Modeling Language, Version 2.0
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 15 System Modeling with the UML.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Chapter 16 Applying UML and Patterns Craig Larman
NJIT UML Class Diagrams Chapter 16 Applying UML and Patterns Craig Larman.
TAL7011 – Lecture 4 UML for Architecture Modeling.
Design Jon Walker. More UML ● What is UML again?
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Design Model Lecture p6 T120B pavasario sem.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Introduction to OOAD and the UML
Lab 5 CPIT 250 System Analysis and Design.
UML / UML 2.0 Diagrams (Part I) 1. Overview of the 13 diagrams of UML Structure diagrams 1.Class diagram 2.Composite structure diagram (*) 3.Component.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
1 Unified Modeling Language, Version 2.0 Chapter 2.
CS212: Object Oriented Analysis and Design Lecture 33: Class and Sequence Diagram.
Class diagrams Terézia Mézešová.
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
Chapter 3: Introducing the UML
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
UML Fundamental Elements. Structural Elements Represent abstractions in our system. Elements that encapsulate the system's set of behaviors. Structural.
Basic Characteristics of Object-Oriented Systems
UML (Unified Modeling Language)
UML AN OVERVIEW. Topics covered in this Session 1. Introducing UML. 2. What constitutes the UML. 3. Concepts of UML.
1 Chapter 13: Class Diagram Chapter 19 in Applying UML and Patterns Book.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
UML Diagrams By Daniel Damaris Novarianto S..
Chapter 1: Introduction to Systems Analysis and Design
Object-Oriented Analysis and Design
Systems Analysis and Design With UML 2
UML Diagrams Jung Woo.
The Object Oriented Approach to Design
ניתוח מערכות מידע א' הרצאה 3
Chapter 16 Class Diagrams.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Chapter 1: Introduction to Systems Analysis and Design
Introduction to OOAD and the UML
Presentation transcript:

Real Time Systems Modeling Structure in UML (Part I)

Structure (part1) - 2 Outline  Quick Review of UML  Modeling real-time systems with UML  Basic Structural Elements  Capsules  Ports  Protocols  The Capsule Structure Diagram

Structure (part1) - 3 Quick Review of UML  logical view diagrams  class diagram  collaboration diagram  sequence charts  state diagrams  logical view modeling elements  classes  relationships  packages

Structure (part1) - 4 Quick Review of UML (cont’d)  other views  use-case view  implementation (component) view  deployment view  concept of stereotyping  allows for domain specific semantics without “bastardizing” UML > ClassA or

Structure (part1) - 5 Modeling RTS in UML - Overview  A system will be modeled as multiple communicating active objects (capsules)  system behavior will be modeled through the state machines of the capsules  capsules can only communicate by sending messages through their ports  communication between ports is defined by a protocol  messages control (trigger) the transitions in the receiving capsule’s state machine

Structure (part1) - 6 Capsule  based upon a common pattern found in RTS: active object  ultra light weight concurrency  run to completion  executable  fundamental modeling element  a stereotype of a UML class  has attributes  has operations  has a state machine  has ports > CapsuleA > CapsuleA

Structure (part1) - 7  Capsule  contain only protected or private operations and attributes ClassA CapsuleA Capsule vs Class (1) “strong encapsulation”  Class  contain public, protected or private attributes and operations

Structure (part1) - 8  Capsule  communicate by sending messages (signals) through contained ports ClassA CapsuleA Capsule vs Class (2)  Class  communicate by calling operations on other classes PortA

Structure (part1) - 9  Capsule  elemental behavior is specified by a capsule’s state machine ClassA doThisMethod( ) CapsuleA Capsule vs Class (3)  Class  elemental behavior is specified by operations S1 S2

 Class  system behavior is expressed as a group of collaborating objects 2: howHigh():int Structure (part1) - 10  Capsule  system behavior is expressed as a sequence of inter-capsule messages Capsule vs Class (4) A:CapsuleAB:CapsuleB how high jump number A:ClassA B:ClassB 1: jump( )

Structure (part1) - 11 Capsule Role  An instance of a capsule class  changes to the role only affect the role not the class  has cardinality  strongly owned by the containing capsule  composition - fixed role (norm)  aggregation - optional or plug-in CapsuleACapsuleBCapsuleC roleCroleB

Structure (part1) - 12 Port (1)  isolates a capsule’s implementation  the means by which capsules communicate  send and receive messages  are owned by the capsule instance  created and destroyed with the capsule CapsuleACapsuleB > ProtocolP

Structure (part1) - 13 Port (2)  defines a capsule interface  is a protocol role  an instance of a protocol  only compatible ports may communicate  all ports have a “send” operation  port1.myMessage().send() CapsuleACapsuleB > ProtocolP myMessage()

Structure (part1) - 14 Protocol (1)  contract between capsules  a specification of a set of messages received (in) and sent (out) from the port  defines the port type  recall port compatibility  a stereotype of a UML collaboration ProtocolP CapsuleACapsuleB how high jump OK number messageOut( ) messageIn( )

Structure (part1) - 15 Protocol (2)  Each capsule role typically has an associated protocol for every other capsule role with which it associates  defines the services one capsule role provides another  a set of signals (and associated data) required to perform the capsule role’s job CapsuleBCapsuleC > ProtocolP CapsuleA

Structure (part1) - 16 Capsule Structure Diagrams  visually defines the structure of a capsule  internal structure specified by capsule roles  capsule roles communicate via ports  stereotype of a UML collaboration diagram  protocols not visible (only their instances - ports)  provides the support necessary to add “code generation” Containing capsule

Structure (part1) - 17 Summary Overview of real-time UML modeling  A system will be modeled as multiple communicating capsules  system behavior will be modeled through the state machines of the capsules  capsules can only communicate by sending messages through their ports  communication between ports is defined by a protocol  messages control (trigger) the transitions in the receiving capsule’s state machine