An Introduction to Rational Rose Real-Time

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

UML (Sequence Diagrams, Collaboration and State Chart Diagrams) Presentation By - SANDEEP REDDY CHEEDEPUDI (Student No: ) - VISHNU CHANDRADAS (Student.
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.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Activity, Collaboration, and Component Diagrams Philip Liew
Slide 10B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Unified Modeling (Part I) Overview of UML & Modeling
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
© Copyright Eliyahu Brutman Programming Techniques Course.
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
SE-565 Software System Requirements More UML Diagrams.
Unified Modeling Language
UML Sequence Diagrams Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Architectural Design NOTES. Architectural Design Notes.
2005/05/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.
Systems Analysis and Design in a Changing World, Fifth Edition
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
Real Time Systems Modeling Structure in UML (Part I)
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
TAL7011 – Lecture 4 UML for Architecture Modeling.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
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.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Introduction to OOAD and the UML
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
OMT Modeling 1. Object Model : presented by the object model and the data dictionary. 2. Dynamic Model: presented by the state diagrams and event flow.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
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.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
1 Unified Modeling Language, Version 2.0 Chapter 2.
UML Review of Use case diagrams. 2 Unified Modeling Language The Unified Modeling Language™ (UML) was developed jointly by Grady Booch, Ivar Jacobson,
Chapter 3: Introducing the UML
Object Oriented Analysis and Design Introduction to Rational Rose.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Basic Characteristics of Object-Oriented Systems
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 April 13, 2005.
1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 November 30, 2004.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Introduction to UML.
UML(Unified Modeling Language)
UML Diagrams By Daniel Damaris Novarianto S..
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
Systems Analysis and Design With UML 2
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
University of Central Florida COP 3330 Object Oriented Programming
UML Diagrams Jung Woo.
UML dynamic Modeling (Behavior Diagram)
Unified Modeling Language
Software Design Lecture : 15.
Copyright 2007 Oxford Consulting, Ltd
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Presentation transcript:

An Introduction to Rational Rose Real-Time Abhishekh Padmanabhan CIS 798 Presentation 2

Overview Rose RealTime is a software development environment tailored to the demands of real-time software. Developers use Rose RealTime to create models of the software system based on the Unified Modeling Language constructs, to generate the implementation code, compile, then run and debug the application.

Rose RealTime Software Development Lifecycle Use Case View What dose user need? Views in Rational Rose Real-Time Logical View How to design system? Component View How to build system? Views in Real World How to deploy the products? Deployment View

UML Views Use-Case View: Logical View: describes system functionality as perceived by external actors which interact with the system (users or other systems) Logical View: describes how system functionality is provided within the system - mostly used by developers describe the static structure and dynamic behavior and other properties such as persistence and concurrency. static structure: described by class (object) diagrams dynamic behavior: described by state, sequence, collaboration and activity diagrams.

UML Views Component View: Deployment View: description of the implementation modules and their dependencies (used mainly by developers) contains component, package diagrams Deployment View: shows the physical deployment of the system (processors, devices) and their interconnections contains deployment diagrams.

Rational Rose Real Time – User Interface

1. Use Case Describe System functionality in horizontal way Actors Use Cases (Services) Relationships

2. Logical View Logical View involves various capsules, classes, and protocols to make up the design solution for the problem Capsules Classes Protocols Notes: In this slide, we only introduce capsules.

Capsules Capsules are the fundamental modeling element of real-time systems. A capsule represents an independent flow of control in a system. Similarities of capsules to classes: Capsule can have attributes. Capsules may also participate in dependency, generalization, and association relationships. Differences between capsules and classes: Capsule structure: represented as a network of collaborating capsules (a specialized UML collaboration diagram). Capsule behavior: triggered by the receipt of a signal event, not by the invocation of an operation.

Real-Time UML Constructs For Modeling Structure capsules (capsule classes) ports connectors For Modeling Behavior protocols state machines time service

Capsules (Cont’d) Two viewpoints on capsules? Structure Diagram The structure diagram captures the interface and internal structure of the capsule in terms of its contained capsules and ports. State Diagram The state diagram captures the high-level behavior of the capsule. (States can be hierarchical and nested).

Capsules: Active Objects Ports

Structure Diagram Three main elements in a structure diagram Capsules Ports Public | Protected Wired | Not-wired Relay | End Connectors

Classification of ports Visibility Public - Public ports are ports that are part of a capsule's interface. These ports may be visible both from outside the capsule and inside, e.g. interface ports Protected - Protected ports are used to connect capsules to contained capsule roles. These ports are not visible from the outside of a capsule since they are not part of the capsule's interface, e.g. Timer Ports. Connector type Wired - Wired ports must be connected via a connector to other ports in order to send messages. Non-wired - Non-wired ports are used to model dynamic communication channels. These ports cannot be connected with connectors to other ports. For example, in client/server models, some ports may be declared but only activated when needed.

Classification of ports (Cont’d) Termination Relay - Relay ports are by nature implicitly public and wired. They are used to model connections that funnel signal events directly to protected capsule components without being processed by the capsule itself. End - End ports can be public or protected, wired or non-wired. Messages sent to an end port can be processed directly by the capsule's behavior (state machine).

Connectors Connectors really capture the key communication relationships between capsule roles.

Capsules: Behavior Optional hierarchical state machine S1 S1 S1 S2 S2 transitionS1toS2: { port2.send(m1); port3.send(m2); … }; message arrival on port1 triggers transition S1 to S2 S1 S1 S1 S2 S2 S3

State Diagram A state diagram shows the sequence of states that an object or an interaction goes through during its life in response to received messages, together with its responses and actions. State diagrams use state machines. A state machine is a graph of states and transitions States Transitions

States A state has the following parts: Name Entry/Exit actions - Actions that are executed on entering and exiting the state.

Transitions A transition has the following parts: Trigger - With the exception of the initial transition all behavior in a state machine is triggered by the arrival of events on one of an object's interfaces. Therefore, a trigger defines which events from which interfaces will cause the transition to be taken. Guard Condition - Each trigger can have a boolean expression associated with it which will be evaluated before the transition is triggered. This is referred to as a guard condition. Actions - The actions in a behavior are where an object does work.

3. Component View A component diagram shows the dependencies among software components. Some components exist at compile time, some exist at link time, some exist at run time, and some exist at more than one time. The run-time component in this case would be an executable program. A component diagram has only a type form, not an instance form.

Component Diagram User.dll Course.dll Professor Student Course Course Billing.exe KATS.exe Billing System User.dll User Course.dll Course Professor Student Course Course Offering

4. Deployment View Nodes may contain component instances, which indicates that the component runs on the node. The deployment diagram provides a basis for understanding the physical distribution of the run-time processes across a set of processing nodes.

Deployment Diagram Notation Nodes are of primary importance on a deployment diagram because they represent processors, sensors, actuators, displays, or any other physical object of importance to the software. Node Task Component Package Connection Task Active Object

A Demo System TomJerry Tom is a cat and Jerry is a mouse. They meet one day on Internet. Tom wants to know whether Jerry is a cat or not by asking him/her some questions. Example from online resource. cpeng@site.uotawa.ca SITE, University of Ottawa

A Demo System TomJerry (Cont’d) The system behaviour is as follows: Initially, Tom sends message RUCat to Jerry Jerry replies with message No to Tom on receiving RUCat. Tom then sends message RUMouse to Jerry having received No. Jerry replies with message Yes to Tom having received RUMouse. Then Tom knows whether or not Jerry is a cat.

A Demo System TomJerry (Cont’d) We consider the simple communication system consisting two entities. Entity 1 is named as Tom. Entity 2 is named as Jerry. The signals used in the common communication protocol between Tom and Jerry are: Tom->Jerry: RUCat and RUMouse Jerry->Tom: Yes and No

A Demo System TomJerry (Cont’d) Top Level Capsule Second Level Capsule Communication Protocol Overall Logical View

A Demo System TomJerry Top level capsule contents TomJerry Structure Diagram

A Demo System TomJerry Tom’s State Diagram Initial: timer.informIn(RTTimespec(2,0)); Tom’s State Diagram

A Demo System TomJerry Jerry’s State Diagram

A Demo System TomJerry Execution Result Running the Model

References CIS721 – Lecture 6 PPT – Dr. Neilsen Example borrowed from SITE, University of Ottawa