1 Grimstad, June 2005 12th SDL Forum Synthesizing State-machine Behaviour from UML Collaborations and Use Case Maps Humberto Nicolás Castejón Dept. of.

Slides:



Advertisements
Similar presentations
Activity Diagrams in UML. Definition Activity diagrams represent the dynamics of the system. They are flow charts that are used to show the workflow of.
Advertisements

UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Software Engineering COMP 201
Activity Diagrams [Arlow and Neustadt, 2005] CS 425 / 625 Seminar on Software Engineering University of Nevada, Reno Department of Computer Science & Engineering.
Summary Class responsibility cards can be used to help allocate responsibilities between different classes. The use of stereotype classes, such as entity,
Lecture 12: Chapter 22 Topics: UML (Contd.) –Relationship Structural Behavioral –Diagram Structural Behavioral.
CS 425/625 Software Engineering System Models
Business Process Orchestration
1 © Wolfgang Pelz UML2 UML Part Two. 2 © Wolfgang Pelz UML2 Chapters Four & Twelve Interaction Diagrams.
Essentials of interaction diagrams Lecture 23 & 24.
Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case.
COST G9 - Work group 2 Cadastral science meeting Aalborg, Dk Modeling methodology for real estate transactions Radoš Šumrada Faculty.
Essentials of interaction diagrams Lecture Outline Collaborations Interaction on collaboration diagrams Sequence diagrams Messages from an object.
Modeling State-Dependent Objects Using Colored Petri Nets
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
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.
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
UML. Overview of UML Diagrams Structural : element of spec. irrespective of time Class Component Deployment Object Composite structure Package Behavioral.
UML Sequence Diagrams Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
2005/05/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.
CS3773 Software Engineering
Class, Sequence and UML Model.  Has actors and use cases.
State diagrams Interaction diagrams –Sequence diagrams –Collaboration diagrams Object orientation Part 4: Dynamic Modeling.
Formalizing the Asynchronous Evolution of Architecture Patterns Workshop on Self-Organizing Software Architectures (SOAR’09) September 14 th 2009 – Cambrige.
Ch.2 Part C: Message Sequence Charts, UML EECE **** Embedded System Design.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
1 Interaction diagrams and activity diagrams Speaker: 陳 奕 全 Real-time and Embedded System Lab 15 August 2002.
Telecom and Informatics 1 SDL Forum 2005 Grimstad, Norway Service Discovery and Component Reuse with Semantic Interfaces Richard T. Sanders (SINTEF, Trondheim,
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
9-1 © Prentice Hall, 2007 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Sequence diagram in UML Martin Palkovik. Sequence diagram  It is a graphic representation of system operations based on chronology - a time sequence.
The Unified Modeling Language Part II Omar Meqdadi SE 2730 Lecture 9 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Interaction Diagrams Interaction Diagrams allow the designer to show how groups of objects collaborate in some behavior. –Interaction Diagrams will show.
Object-Oriented Analysis and Design 1 Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design Session 3a: Behavioral Modeling - Interactions.
By: David Harel & Eran Grey Presenter: Elizabeth Antony CISC 836.
SWT - Diagrammatics Lecture 4/4 - Diagramming in OO Software Development - partB 4-May-2000.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Ist.psu.edu School of Information Sciences and Technology IST 311 – Object-Oriented Design & Software Steven Haynes IST 311 – Class 7 17 January 2006
Modelling Class T07 Conceptual Modelling – Behaviour References: –Conceptual Modeling of Information Systems (Chapters 11, 12, 13 and 14)
Ontologies Reasoning Components Agents Simulations Architectural Modeling with UML2 Composite Structures and Components Jacques Robin.
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
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.
Science and Technology Norwegian University of NTNU Rolv Bræk, January ActorFrame an introduction Rolv Bræk NTNU Department of Telematics.
1 Getting Service Engineering Right Next Generation Service Engineering Making the most of service models Rolv Bræk, Norwegian University of Science and.
7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Inferring Declarative Requirements Specification from Operational Scenarios IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 24, NO. 12, DECEMBER, 1998.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Communication Diagrams Lecture 8. Introduction  Interaction Diagrams are used to model system dynamics  How do objects change state?  How do objects.
 The Sequence Diagram models the collaboration of objects based on a time sequence.  It shows how the objects interact with others in a particular scenario.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
Introduction to UML.
Analysis Classes Unit 5.
CHAPTER
Instructor: Dr. Hany H. Ammar
UML Diagrams By Daniel Damaris Novarianto S..
Unified Modeling Language
Object-Oriented Systems Analysis and Design Using UML
UML Diagrams Jung Woo.
Business System Development
UML Activity Diagrams & State Charts
From Big Ideas to Lesson Plans
Appendix 3 Object-Oriented Analysis and Design
Behavioral Diagrams P. P. Mahale
Presentation transcript:

1 Grimstad, June th SDL Forum Synthesizing State-machine Behaviour from UML Collaborations and Use Case Maps Humberto Nicolás Castejón Dept. of Telematics Norwegian University of Science and Technology (NTNU) Trondheim, Norway

2 Grimstad, June th SDL Forum The Big Picture Service Collaborations Collaboration Dependencies Component’s State Machine

3 Grimstad, June th SDL Forum Motivation Main Goal: methods for rapid, modular and incremental development of real-time services Challenge: cross-cutting nature of services ◊Services provided as collaborations between system components Two service modeling approaches: Service 1 Service 3 Service 2 Vertical composition (within a sys. comp.) Horizontal composition (within a service) collaboration roles System Components COLLABORATION - ORIENTED FOCUS COMPONENT-ORIENTED FOCUS

4 Grimstad, June th SDL Forum Structural classifiers  structure of collaborating roles Behavioral classifiers  associated sequence, activity,... diagrams Can be bound to specific contexts by means of collaboration uses UML 2.0 Collaborations UserCall calleeB: Callee callerA: Caller sm UserCall inviting connected assert (goal == True) busy role name role type connector BobUA: UserAgent PeterUA: UserAgent MaryUA: UserAgent call1: UserCall call2: UserCall callerA calleeB callerA collaboration use collaboration use role UserCall calleeB: Callee callerA: Caller aAl al:Alert t:Talk bAl talker

5 Grimstad, June th SDL Forum An Example: UserLogon Service s_goal.userLoggedOn = rr1.s_goal:playing AND rr2.s_goal:playing AND ua.s_goal:authenticated AND lo.s_goal:loggedOn s_goal.loggedOn = loTerm.s_goal:loggedOn AND loAgent.s_goal:loggedOn The specification is not complete if collaboration dependencies are not expressed!!! Event goal State goal

6 Grimstad, June th SDL Forum Collaboration Dependencies In the UserLogon collaboration (and in general) we can find... Sequential dependencies ◊Temporal ordering between collaborations First rr1:RoleRequest Then lo:Logon

7 Grimstad, June th SDL Forum Collaboration Dependencies (II) We can also find... Goal dependencies ◊A collaboration may depend on other collaborations to achieve its goal rr2:RoleRequest, ua:UserAuthenticate do also succeed lo:Logon only succeeds if... How can we express collaboration dependencies explicitly?

8 Grimstad, June th SDL Forum A Little Bit on Use Case Maps UCMs order responsibilities (e.g. tasks, actions, etc) along a path and link causes (e.g. pre-conditions or triggering events) to effects (e.g post-conditions) Approach ◊UCMs show dependencies, do not describe collaboration behavior! ◊Individual UCMs describing goal-based progress of collaborations ◊Composite UCM showing dependencies  Service goals as synchronization points between collaborations

9 Grimstad, June th SDL Forum Dependencies with UCMs Stub (sub-collaboration) Waiting Places (new collab. starts, previous one waits)

10 Grimstad, June th SDL Forum Synthesis of State Machines Services ultimately realized by system components ◊Need to describe behavior of system components ◊Build state machines from collaboration sequence diags. and UCMs! PROJECT COMPOSE GUIDE COMPOSITION Sequence diagrams Role Automata UCM showing Dependencies Sys. Comp. State Machine

11 Grimstad, June th SDL Forum Synthesis Process Steps (III) UCM guides composition of role automata

12 Grimstad, June th SDL Forum Conclusion UML 2.0 collaborations are a powerful tool for service modeling ◊Collaborations  High-level view of services ◊Associated Sequence Diagrams  Low-level details ◊All elements annotated with service goals! UCMs nicely complement UML collaborations to show dependencies ◊Individual UCMs describing goal-based progress of collaborations ◊Composite UCM showing dependencies Automatic synthesis of component state machines from collaborations and UCMs possible, based on... ◊Scenario composition  UCMs compose collaborations ◊State information  Goals relate scenarios Thank you!