2010/11/17 OKABE, Masao 1
Comments on WG2_N1421_5th_SP_of_CD2_19763-5
OKABE, Masao
Expert Contribution
2010.11.17
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_19763-5,
and not on WG2_N1467_ 6th_SP_of_CD2_19763-5. But I guess most of the comments, and I believe at least some, can
be also applicable to WG2_N1467_ 6th_SP_of_CD2_19763-5.
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 4.1.1 Process at WG2_N1421_5th_SP_of_CD2_19763-5
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)
Service4.2.1 Service at WG2-N1201-WD_19763-7
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 19763 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_19763-5.pdfThe 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 20100131 3rd_SP_19763-5.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 AProcess A
Service BService B Service CService C Service EService EService DService D ・・・・・・
realized byrealized by
achievesachieves
in SOPin SOP in RESTin REST in JAVAin JAVA in Railsin Rails
2010/11/17 OKABE, Masao 7
Changes from CD1
In WG2_N1421_5th_SP_of_CD2_19763-5.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 20100131 3rd_SP_19763-5.doc
References hasPrecondition: Precondition[0..*]” and hasPostcondition: Postcondition[0..*]“ of Process, which exist in 20100131 3rd_SP_19763-5.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..*
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 andWhat 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
CB
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_19763-5, 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/2009-01-03Let 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/2009-01-03
If we see Figure A.2.3 of an example of UML activity diagram at WG2_N1421_ 5th_SP_of_CD2_19763-5,
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, 0-321-19368-7 This is just a famous text book. MFI Part5 is based on the official UML
documents.
Table refers to ISO/IEC 19501 Information technology – Open Distributed Processing – Unified Modeling Language (UML) Version 1.4.2.
Should MFI Part5 should uniformly refers to ISO/IEC DPAS 19505-2 Information technology -- OMG Unified Modeling Language (OMG UML) Version 2.1.2 -- 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_19763-5 saysNow 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 Logicontology repository
ontology B
・・・
RM-ODP process model
repository
processmodel C
PSL process model
repository
process model D
Part8 Role &Goal registry
entries ofprocessmodel E
entries ofprocessmodel D・・・
Part5 Process model registry
entries ofprocessmodel C
entries ofprocessmodel D ・・・
entries ofontology A
entries ofontology B ・・・
Part3 Ontology registration registry
Role &Goal E
Role &Goal F
KAOS role & goal repository
i* role & goal repository
・・・ ・・・
<MFI>
<Outside MFI>
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(?).