2010/11/17 OKABE, Masao 1 Comments on WG2_N1421_5th_SP_of_CD2_19763-5 OKABE, Masao Expert Contribution 2010.11.17.

Slides:



Advertisements
Similar presentations
Design by Contract.
Advertisements

SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Database Systems: Design, Implementation, and Management Tenth Edition
Introduction to Rational Rose 2000 v6.5 Copyright © 1999 Rational Software, all rights reserved 1 Rational Rose 2000 Interaction Diagrams.
Chapter 3 Data Modeling Copyright © 2014 McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
OASIS Reference Model for Service Oriented Architecture 1.0
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Use-case Modeling.
Software Testing and Quality Assurance
Systems Analysis and Design in a Changing World, Fourth Edition
Study Period Report: Metamodel for On Demand Model Selection (ODMS) Wang Jian, He Keqing, He Yangfan, Wang Chong State Key Lab of Software Engineering,
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Use cases and requirement specification - 1 Use case diagrams 3 use cases System boundaries Remember: Use case diagramming is a tool, not the requirements.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Dr. Muhammed Al-Mulhem 1ICS ICS 535 Design and Implementation of Programming Languages Part 1 Fundamentals (Chapter 4) Axiomatic Semantics ICS 535.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
Chapter 7: The Object-Oriented Approach to Requirements
Final Report on MFI & MDR Harmonization Hajime Horiuchi May 2010 SC32WG2 N1425.
MFI-5: Metamodel for process model registration Chong Wang, Keqing He and Baba Piprani.
CSCI-383 Object-Oriented Programming & Design Lecture 9.
Analyzing the Requirements with Formal Specifications Vienna Development Method Specification Language (VDM-SL) Book: Formal Software Development From.
1 MFI-5: Metamodel for Process models registration HE Keqing, WANG Chong State Key Lab. Of Software Engineering, Wuhan University
2010/11/16 OKABE, Masao 1 Issues to be discussed on MFI-Part10 Core model and basic mapping and transformation OKABE, Masao Editor MFI Part
Low-Level Detailed Design SAD (Soft Arch Design) Mid-level Detailed Design Low-Level Detailed Design Design Finalization Design Document.
Conceptual Modelling – Behaviour
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
A Use Case Primer 1. The Benefits of Use Cases  Compared to traditional methods, use cases are easy to write and to read.  Use cases force the developers.
UML 2 Models for ODP Engineering/Technology Viewpoints – An Experiment - Daisuke Hashimoto Hiroshi.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
Comments on 32N1791 WD (expert contribution) OKABE, Masao
MFI-5: Metamodel for process model registration WANG Chong, HE Keqing, HE Yangfan, WANG Jian State Key Lab of Software Engineering (SKLSE) Wuhan University,
MFI-8: Metamodel for Role & Goal Registration Peng Liang, Keqing He, Jian Wang Huafeng Chen, Chong Wang, Yangfan He SKLSE, Wuhan University, P.R. China.
The Unified Modeling Language (UML)
ECSE Software Engineering 1I HO 4 © HY 2012 Lecture 4 Formal Methods A Library System Specification (Continued) From Specification to Design.
OKABE, Masao 2010/05/24 1 Clarification on Process, Process model and Service Expert contribution OKABE, Masao
OKABE, Masao /8/21 Relations between MFI Registry and Repositories outside of MFI 1 First, registration and authorization Second, periodical crawling.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
Systems Analysis and Design in a Changing World, Fourth Edition
Discussion about MFI-8: Metamodel for Role and Goal Registration
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
MFI-7: Metamodel for Service Registration 1 Zaiwen Feng, Keqing He, Chong Wang, Jian Wang Peng Liang, Jianxiao Liu, Yangfan He SKLSE, Wuhan University,
Discussion about MFI-7: Metamodel for Service Registration Wang Jian, He Keqing, He Yangfan, Wang Chong SKLSE, Wuhan University, China
Issues for Discussion on MFI-9 Wang Jian, He Keqing, Wang Chong, Feng Zaiwen, Fie He Wuhan University, China ISO/IEC JTC1/SC32/WG2 N1526.
1 CEN 4020 Software Engineering PPT4: Requirement analysis.
Object-Oriented Software Engineering Practical Software Development using UML and Java Modelling with Classes.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
WELCOME TO OUR PRESENTATION UNIFIED MODELING LANGUAGE (UML)
UML Diagrams and Software Testing Instructor: Scott Kristjanson CMPT 135 SFU Surrey, Spring 2016.
Cliquez pour modifier le style du titre Cliquez pour modifier les styles du texte du masque Deuxième niveau Troisième niveau Quatrième niveau Cinquième.
Language = Syntax + Semantics + Vocabulary
Here is my personal thought about the key JP comments to MFI-5 CD5.
Systems Analysis and Design in a Changing World, Fourth Edition
Software Testing.
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
SysML v2 Formalism: Requirements & Benefits
Unified Modeling Language
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Issues to be discussed on MFI-New-Part2
Requirements for MFI Part6: Registration procedure
“Registered_Item” for MFI Registration (Recommendation)
MFI-5: Metamodel for process model registration
Presentation transcript:

2010/11/17 OKABE, Masao 1 Comments on WG2_N1421_5th_SP_of_CD2_ OKABE, Masao Expert Contribution

2010/11/17 OKABE, Masao 2 1.Relation between Part5 Process model and Part7 Service model 2.How can the process models created with a specific modeling language be registered in MFI Part5 ? 3.What should be the common semantics ( or essential subset) of process models ? Note Unfortunately, all the comments are on WG2_N1421_5th_SP_of_CD2_ , and not on WG2_N1467_ 6th_SP_of_CD2_ But I guess most of the comments, and I believe at least some, can be also applicable to WG2_N1467_ 6th_SP_of_CD2_

2010/11/17 OKABE, Masao 3 Issues that need be discussed on MFI-Part5 1.Relation between Part5 Process model and Part7 Service model

2010/11/17 OKABE, Masao 4 Relation between Part5 Process model and Part7 Service model Process Process at WG2_N1421_5th_SP_of_CD2_  a set of activities and resources, organized by a dependency construct, which all participate in fulfilling a given purpose. SE VOCAB definition 7--- our preferred definition at Wuhan project meeting in August  system of activities, which use resources to transform inputs into outputs (ISO/IEC 25000:2005 Guide to SQuaRE, 4.41) Service Service at WG2-N1201-WD_  a kind of Web based application, which encapsulates certain computing module and can be accessed by certain interface. A question is whether a service is a kind of process or not?

2010/11/17 OKABE, Masao 5 Original understanding of a process and a service My original understanding of a process and a service is that a process intends to represent capability (see WG2N1441a- MFI 5 Proposed Standard Terms) or common semantics of a service, independent of its implementation, based on; This part of ISO/IEC specifies the metamodel that provides a facility to register administrative structural information and meaningful semantics of process models, including workflows, business processes, Web services, etc.  at 1 Scope of 32N1819-text_for_ballot-CD_ pdf The relationship between MFI PMR and MFI Service means that a process can be realized by zero to many instances of Service and a service can achieve only one Process.  at 5.2 Relationship between MFI PMR and some parts in MFI of rd_SP_ doc

2010/11/17 OKABE, Masao 6 Original understanding of a process and a service All of the services B, C, D, E have the same capability. Since a service has only one capability(totally), ideally, the multiplicities between Process and Service are as follows; Unfortunately, this is almost impossible because in MFI Part5 registry it is almost impossible to ensure that one fact (capability) is one place is almost impossible. Process Service 0..* 0..1 Process A Service BService CService EService D ・・・ realized by achieves in SOP in RESTin JAVAin Rails

2010/11/17 OKABE, Masao 7 Changes from CD1 In WG2_N1421_5th_SP_of_CD2_ doc “only one” was relaxed to “zero to many” at “The relationship between MFI PMR and MFI Service means that a process can be realized by zero to many instances of Service and a service can also achieve zero to many Process.”  at 5.2 Relationship between MFI PMR and other parts in MFI of rd_SP_ doc References hasPrecondition: Precondition[0..*]” and hasPostcondition: Postcondition[0..*]“ of Process, which exist in rd_SP_ doc, are removed. although, at Introduction, there still exists a sentence “On the other hand, a process expresses the semantics of a service to support semantic discovery of a service.” Process Service 0..*

2010/11/17 OKABE, Masao 8 About Changes from CD1 Now, I am confused on these changes; 1.In what senseis the multiplicity constraint is relaxed and What many-to-many relations between processes and services mean? For example, in the case that a process can be realized by three instances of Service, this means each instance can realize the process or all the three instances as a whole can realize the process? in the case that a service can also achieve three instances of Process, it means that this service achieves the three different Processes, or this service achieves one of the three processes and the other two Processes must be equivalent to the one? 2.How MFI Part5 represent semantics of a process without pre- and post- conditins? What is the common semantics of processes which are necessary from the point of RGPS? Do we really need a process (model) which dose not have a precondition nor postcondition?

2010/11/17 OKABE, Masao 9 2.How can the process models created with a specific modeling language be registered in MFI Part5 ?

2010/11/17 OKABE, Masao 10 MFI Part5 Process Model Example Let us think about this very simple process model on the left, MFI Part 5 models this as follows; A C B yes no conditional process B&C conditional process A event: yes event: no process process A process B & C process B process C dependency construct process

2010/11/17 OKABE, Masao 11 MFI Part5 Process Model Example It is unnecessarily complex and confusing. A simpler and easy-to-understand model is desired.

2010/11/17 OKABE, Masao 12 Table C.2 – Mapping table of Process_ Modeling_ Languages If we look at Table C.2 – Mapping table of Process_ Modeling_Languages at Annex C of WG2_N1421_ 5th_SP_of_CD2_ , there are many problems to register process models created with the languages.

2010/11/17 OKABE, Masao 13 Treatment of Initial and Final All of BPMN, UML activity diagram and UML state machine have a initial and a final event (or node or state). All of them have almost the same semantics. But, MFI Part5 treats them differently. In BPMN, they are mapped to Events, if we look at Table C.2. In UML activity diagram, they are ignored if we look at Figure A.2.1. In UML state machine, they are mapped to the attribute of resource, if we look at Table C.2. They should be treated uniformly in MFI Part5.

2010/11/17 OKABE, Masao 14 About BPMN at Table C.2 In some cases, an Event of BPMN has to be mapped to a Process of MFI Part5, instead of a Process of MFI Part5. See an example below.

2010/11/17 OKABE, Masao 15 Example from Business Process Model and Notation (BPMN) Version 1.2 formal/ Let us focus on gateway “Conference Call in Discussion Week?” and event “wait until Thursday,9 am”.

2010/11/17 OKABE, Masao 16 Example from Business Process Model and Notation (BPMN) Version 1.2 formal/ If we see Figure A.2.3 of an example of UML activity diagram at WG2_N1421_ 5th_SP_of_CD2_ , Gateway “Conference Call in Discussion Week?” should be mapped to a XOR_Split_Process and a XOR_Split_Construct, which creates a conditional process as a node set, which has event “Yes” as a guard condition and has a process as a resultProcess. But, in this case, this result process is not a a process but an event, because event “wait until Thursday,9 am” is not a process but an event.

2010/11/17 OKABE, Masao 17 About IDEF0 at Table C.2(1 of 2) In IDEF0, a arrow has roles of Input, Output, Control, Mechanism and Call. Except a Call arrow, it does not necessarily a Depebdency_Construct, which designates the order in which processes (Boxes) are executed. For example, A Forking Arrow (from Output to Input) only represents that Output of a Box becomes Inputs of different Boxes.

2010/11/17 OKABE, Masao 18 About IDEF0 at Table C.2(2 of 2) Input and Output are roles of an arrow and are not resources or objects themselves. For example, in the case, Box A outputs some chemical, which is an input of Box B, there are two roles, one is chemical as an output and the other is chemical as input. But, there is only one resource as chemical. Input and Output of IDEF0 should be mapped to attribute: consumes and creates of Process in MFI Part5,respectively Control, Mechanism and Call may be mapped to attribute: refersTo of Process in MFI Part5. An important elements of IDEF0 cannot be mapped to MFI Part5.

2010/11/17 OKABE, Masao 19 About IDEF3 at Table C.2 In IDEF3, an object can have many states which translate from one to others. But, a Recourse in MFI Part5 can have at most one status. An important element of IDEF3 cannot be mapped to MFI Part5.

2010/11/17 OKABE, Masao 20 About UML Activity Diagram at Table C.2 From UML 1.x to UML 2.x, Activity Diagram was changed fundamentally in some sense. That is, an activity in UML 1.x is an activity state and a kind of state, but an activity in UML 2.x is not a kind of state. But, practically, they are similar. If we look at Table C.2, an activity (of UML 2.x) is mapped to a Process. But an activity in UML 1.x is mapped to an Attribute of Resource:state since it is a state. This is not good. So, MFI Part5 should map a state in UML state machine to a Process, like UML 1.x. And, MFI Part5 need to introduce a mechanism to handle an object (or a resource) uniformly.

2010/11/17 OKABE, Masao 21 About UML State Diagram at Table C.2 It should be UML State Machine. There is no state diagram in UML. It is a state machine diagram. State machine at least in UML 2.3 (current version) does not have any of Action. Object, Event, Condition. Where do they come from? Bibliography refers to Martin Fowler, UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition,  This is just a famous text book. MFI Part5 is based on the official UML documents. Table refers to ISO/IEC Information technology – Open Distributed Processing – Unified Modeling Language (UML) Version Should MFI Part5 should uniformly refers to ISO/IEC DPAS Information technology -- OMG Unified Modeling Language (OMG UML) Version Part 2: Superstructure ?

2010/11/17 OKABE, Masao 22 About PSL at Table C.2 (1 of 3) In PSL, type (or class) and occurrence (or instance, individual) are strictly distinguished. For example, an Activity is (an instance of ) a type, and an Activity occurrence is (an instance of ) an occurrence. MFI Part5 does handles no occurrence (or instance, individual). So, Activity occurrence in PSL should not be mapped to Process in MFI Part5 and should be ignored in MFI Part5.

2010/11/17 OKABE, Masao 23 About PSL at Table C.2 (2 of 3) An object in PSL is almost anything in UoD, except an activity or an activity occurrence. This is not necessarily a resource in MFI Part5. In MFI Part5, a resource is only a resource participating in a process. What is a meaning of “participating in a process”?

2010/11/17 OKABE, Masao 24 About PSL at Table C.2 (3 of 3) PSL Part13 has Subactivity occurrence ordering core Theory. This should be mapped to Dependency_Construct. They need to be mapped properly to Dependency_Constructs in MFI Part5. Strictly speaking, they are not about Activities but Activity occurrences, while Dependency_Constructs are about Activities. But, when mapped to MFI Part5, this difference may be ignored.

2010/11/17 OKABE, Masao 25 About UML Interaction (Sequence Diagram) Could you add UML Interaction to Table C.2 and provide an example? Because to represent interactions (concurrency) of processes is an important issue and a Sequence Diagram can provide a simple and godd example.

2010/11/17 OKABE, Masao 26 3.What should be the common semantics ( or essential subset) of process models ?

2010/11/17 OKABE, Masao 27 Clear Scope and Objectives are necessary To resolve these problems and chose a common semantics of process modeles, we need an agreement of the position of MFI Part5 in RGPS and also in MFI family. WG2_N1436_Scope_of_ says Now we are thinking…… MFI ‐ 5 is for RGPS  Process is one kind of service ‐ related model MFI ‐ 5 should provide semantics of services, rather than a general metamodel for various process models  Support semantic discover of a service  Help orchestration of Web services

2010/11/17 OKABE, Masao 28 Clear Scope and Objectives are necessary The statement above “rather than a general metamodel for various process models” is inconsistent with MFI basic policy (or structure). We do not need to develop new RM-ODP or IE. In spite of the statement above “MFI ‐ 5 should provide semantics of services”, MFI Part5 seems drifting from “representing semantics of services” to “representing flow of processes”, since Pre- and Post-conditions are removed. What is it (Now we are now thinking……) now?

2010/11/17 OKABE, Masao 29 Basic Structure of MFI OWL ontology repository ontology A Common Logic ontology repository ontology B ・・・ RM-ODP process model repository process model C PSL process model repository process model D Part8 Role &Goal registry entries of process model E entries of process model D ・・・ Part5 Process model registry entries of process model C entries of process model D ・・・ entries of ontology A entries of ontology B ・・・ Part3 Ontology registration registry Role & Goal E Role & Goal F KAOS role & goal repository i* role & goal repository ・・・ Only common semantics (essential subsets) are registered in MFI registry with some additional information. Part10 Core model (and basic mapping) MFI presupposes the existence of complete repositories of models outside MFI. All the parts (except Part1 and 6) inherit Part10. Part10 is not necessarily abstract (meta)classes. ・・・

2010/11/17 OKABE, Masao 30 Other comments 1 If we look at slide 21 nad 22 of WG2_N1433_RMODP- RGPS_Registration_Example at Kunming, most of MFI Part5 processes are human processes except “Validate loan:Loan validation”. But, if I remember correctly, at Kunming meeting, we tentatively agreed that MFI Part5 only targets on “computerized” processes. So, what should they now?

2010/11/17 OKABE, Masao 31 Other comments 2 From the point of RGPS, a more scenario-based approach is necessary. For example, who creates (or are responsible for creating) links between Processes in Part5 and Services in Part7? If this is out of the scope of MFI Part5 and Part 7 (that is, some one can do that somehow), it is better that Part5 has pre- and post- conditions in accordance with the principle that one (unfortunately in this case, almost imposiible) fact (capability) is one place. If to support this (creating links between Processes and Services) is within the scope of MFI Part5 and Part7, both Part5 and Part7 need to have pre- and post- conditions.

2010/11/17 OKABE, Masao 32 Other comments 3 I guess that the devision of MFI Part5 and Part7 are based on OWL-S, which I do not know whether is appropriate or not. It would be a good idea to model “BravoAir reservation service example” using both MFI Part5 and Part7. “BravoAir reservation service” is an OWL-S example. MFI Part5 already provides it but MFI Part7 does not yet(?).

2010/11/17 OKABE, Masao 33 Other comments 4 I do not have any objection to forwarded WG2_N1467_ 6th_SP_of_CD2_ to CD2 ballot. In that case, most of (at least, some of) the comments here will be Japanese comments and be discussed at BRM of CD2.