Professional Documents
Culture Documents
Authorized licensed use limited to: TH Brandenburg. Downloaded on October 22,2022 at 17:17:14 UTC from IEEE Xplore. Restrictions apply.
II. RELATED WORK BPMN models to allow clear and understandable modeling for
A DSL allows the semantic representation of a particular the various participants, whether being engineers, technicians,
field of activity, which allows more precise and meaningful managers or tradesmen. To create our DSL we started with the
business process models. Several works try to create a DSL metamodeling of our language. In a previous work [15] we
for business process. In [11], the authors propose to build a presented a metamodel for collaborative processes called
DSBPMS which is a BPMS Based on a DSL (Domain BPMNForCollaboration, in this work we have improved it
Specific Language), instead of using BPMN. The goal of the and create the metamodel of our DSL, hence the metamodel
approach is to simplify the development of a specific business Figure1. We focused on the extension of two elements of
process. So, they propose a platform called «GraDe3 » BPMN, which are essential for the construction of our
composed of a Configurator for easy definition of a graphical language (Activity and DataObject). In addition to basic
editor for the chosen DSL and a new simple mapping language element of BPMN named on the metamodel
for defining a transformation. In [12], author create a graphical <<BPMNElement>>, the metamodel consists of our
domain specific language which can be easily understood by stereotypes named <<ExtensionElement>>.
non-IT professionals called PromodDSL, the DSL is based on The "CollabortaiveActivity" stereotype extends the
BPMN and keeps his more frequently symbol and is designed BPMN class "Activity". It is characterized by the attributes
to specify the area of social insurance. This paper [13] presents "type", "isMonitoring", "isTreacable" and
a generic framework for process modeling language called "isMultiparticipant", it is associated with the stereotype
DSLs4BPM, it provides elements common to process "Actor" thanks to the association Class "Role", it means that a
modeling and a basic transformation to the generic BPMN. collaborative activity is performed by an actor that have two
The DSL is created by adding types to the framework types: either a simple participant or a manager. Then,
language and rules to the transformation at predefined "CollaborativeActicvity" is associated with the class
extension points. Finally, the author implemented his "StateOfProgress" which defines three state of progress
approach based on the Eclipse Modeling Framework. In the "InProgress, OnBreak, Completed" and finally we define
field of Web 2.0 [14], the author propose a DSL based on another activity that is a generalization of the class
extension of the BPMN standard to model social elements of "CollaborativeActivity", it is "DeadlinedActivity"
social business process, he add new notation to BPMN like characterized by two attributes: a due date and a relaunch date.
communication, collaboration activities.
The stereotype "CollaborativeData" extends the BPMN
Among these works, there are certain approaches, which class "DataObject", it is associated with "Actor" thanks to two
are similar to ours, except that our DSL deals with associations "send and receive", in fact, collaborative
collaborative environments in general, and not a specific document must have one and only one sender and one or more
collaborative domain. Moreover, our DSL gives more recipients. Then a "collaborativeData" can be in two forms: a
importance and specification to the dataObject that plays a "Mail" characterized by a creation date and a
very important role during the communication between the "CollaborativeDocument" associated with the class
partners of the collaboration. "DocumentState" which allows defining two document states,
either "Locked" or "validate".
III. DSL FOR COLLABORATIVE BUSSINESS PROCESS
In this section, we have been content to give a general
A. DSL Metamodeling explanation of the stereotypes because an explicit
Creating business process collaboration DSLs is a specification of these elements will be described thereafter in
challenge because collaborative business processes require table 1.
different collaboration semantics. Our DSL is based on
Authorized licensed use limited to: TH Brandenburg. Downloaded on October 22,2022 at 17:17:14 UTC from IEEE Xplore. Restrictions apply.
Fig. 1. The metamodeling of our DSL
Authorized licensed use limited to: TH Brandenburg. Downloaded on October 22,2022 at 17:17:14 UTC from IEEE Xplore. Restrictions apply.
TABLE I. SEMANTIC AND GRAPHICAL REPRESENTATION OF OUR DSL
CollaborativeActivity
Description identifies whether the Activity is private or can be shared with a third party, Private
activity can be seen only by the participant to which it belongs
constraint It must be associated at least to one external actor and one internal actor
Context CollaborativeActivity inv:
self.actor->select(a | a. oclIsKindOf (Intern)).size()=1 and self.actors->select(a | a.
oclIsKindOf (Extern)).size()=1
CollaborativeActivity
Description Identifies whether if we can trace the activity or not.
Constraint A traceable activity is always linked to a document that keeps track of its execution
Context CollaborativeActivity inv:
Self.isTraceable= true implies self.CollaborativeDocument-> size() 1
CollaborativeActivity
Description A private activity can’t be seen by an external Actor
Constraint An Activity is said private if it has no external actor.
Context CollaborativeActivity inv:
self.actor-> select(a | a. oclIsKindOf (Extern)).isEmpty()
CollaborativeActivity
Description This attribute means that the status of this task is monitored by a responsible
CollaborativeActivity
Description A multi participant activity is made by several participant of the process
Constraint This activity must have at least one role.
Context CollaborativeActivity inv: self.actor.role-> size() = 1
State of progress
Description It’s a specialization of the ActivityState which specifies that Activity is in progress,
onBreak or completed
Constraint A notification is sent to the activity manager when the activity status changes.
DeadlinedActivity
Description This activity is characterized by : a due date and a frequency of relaunch.
Constraint This activity must have a responsible and be attached to an event.
Context DeadlinedActivity inv:
self.actor.role -> select (r | r.type == RoleType:Responsible) -> size() > =1
Shared Data
Description A type that identifies whether the DataObject is private or can be shared with a third
party, Private DataObject can be seen only by the participant to which it belongs
Constraint It must be associated at least to one external actor and one internal actor
Context CollaborativeData inv:
Self.type=ArtificatType:Shared implies self.actor->select(a |
a.oclIsKindOf(Extern)->size()=1 and self.actor->select(a |
a.oclIsKindOf(Intern)->size()=1
PrivateData
Description A private Data can’t be seen by an external Actor
Constraint A Data is said private if it has no external actor.
Context CollaborativeData inv:
Self.type=ArtificatType:Private implies self.actor->select(a |
a.oclIsKindOf(Extern)->isEmpty()
Document Version
Authorized licensed use limited to: TH Brandenburg. Downloaded on October 22,2022 at 17:17:14 UTC from IEEE Xplore. Restrictions apply.
Description This attribute specifies the version of the document. A document has at least a first
version.
Constraint It have at least an initial version
Locked
Description It’s a specialization of the DocumentState that means the CollaborativeDocument
cannot be modified.
Constraint Only the person responsible for the document can Locked it.
Validate
Description It’s a specialization of the DocumentState that means the CollaborativeDocument is
validate by a responsible.
Constraint A validated document cannot be modified
Authorized licensed use limited to: TH Brandenburg. Downloaded on October 22,2022 at 17:17:14 UTC from IEEE Xplore. Restrictions apply.
successful modeling of collaborative work, such as the [6] H. Liu, Y. Lembaret, D. Clin, et J.-P. Bourey, « Comparison between
exchange of resources, confidentiality, task monitoring, Collaborative Business Process tools », in 2011 FIFTH
INTERNATIONAL CONFERENCE ON RESEARCH CHALLENGES
traceability, and document viewing. Etc. Therefore, our work IN INFORMATION SCIENCE, Gosier, France, mai 2011, p. 1-6, doi:
consists of creating a DSL that allows the modeling 10.1109/RCIS.2011.6006864.
collaborative work environments. The construction of the [7] J. M. Perez, F. Ruiz, et M. Piattini, « MDE for BPM: A Systematic
DSL is done according to three stages: the first, being the Review », in Software and Data Technologies, vol. 10, J. Filipe, B.
metamodelling of our language, it is the abstraction part where Shishkov, et M. Helfert, Éd. Berlin, Heidelberg: Springer Berlin
we describe the different types of model elements and how Heidelberg, 2008, p. 127-135.
they are arranged, connected and constrained. It helps to better [8] P. D. Villarr, « A MDA-based Development Process for Collaborative
Business Processes », p. 16.
understand the concept of language. The second is the
[9] J. Touzi, F. Benaben, H. Pingaud, et J. P. Lorré, « A model-driven
semantics that make sense of our language. The third, being approach for collaborative service-oriented architecture
the concrete syntax of language, which has a graphic design », International Journal of Production Economics, vol. 121,
formalism to easily manipulate the concepts of our language. o
n 1, p. 5-20, sept. 2009, doi: 10.1016/j.ijpe.2008.09.019
[10] Miller, J., Mukerji, J.: MDA Guide Version 1.0.1, OMG (2003)
To make the process models operational, at the
implementation level you must choose an adequate tool to [11] A. Kalnins, L. Lace, E. Kalnina, et A. Sostaks, « DSL Based Platform
for Business Process Management », in SOFSEM 2014: Theory and
define these models and then execute them by a process Practice of Computer Science, vol. 8327, V. Geffert, B. Preneel, B.
engine. As in the process-modeling phase, in this phase, the Rovan, J. Štuller, et A. M. Tjoa, Éd. Cham: Springer International
implementation of these executable models requires Publishing, 2014, p. 351-362.
manipulation data. A standard emerges for definition and [12] J. Bicevskis, J. Cerina-Berzina, G. Karnitis, L. Lace, I. Medvedis, et S.
implementation is the Business Process Execution Language Nesterovs, « Domain Specific Business Process Modeling in
(BPEL), which is a target language of BPMN. Therefore, the Practice », in Proceedings of the 9th International Baltic Conference
on Databases and Information Systems, January 2010, p. 14.
goal of our next work will be to make our DSL operational.
[13] H.Heitkotter and Al. « A Framework for Creating Domain-specific
Through a written transformation by a set of rules that Process Modeling Languages »:, in Proceedings of the 7th
describe the transition from the BPMN process model to the International Conference on Software Paradigm Trends, Rome, Italy,
BPEL process model. 2012, p. 127-136, doi: 10.5220/0004024201270136.
[14] F. Yahya, K. boukadi, Z. Maamar, et H. Ben Abdallah, « Enhancing
REFERENCES Business Processes with Web 2.0 Features »:, in Proceedings of the
12th International Conference on e-Business, Colmar, Alsace, France,
2015, p. 183-190, doi: 10.5220/0005526501830190.
[1] Object Management Group. “Business Process Model and Notation,
version 2.0.2”, 2013. [15] L. Amdah et A. Anwar, « BPMN4 Collaboration: An Extension for
collaborative Business Process », Adv. sci. technol. eng. syst. j., vol. 4,
[2] D. C. Schmidt, « Guest Editor’s Introduction: Model-Driven no 6, p. 297-305, 2019, doi: 10.25046/aj040638.
Engineering », Computer, vol. 39, no 2, p. 25-31, févr. 2006, doi:
10.1109/MC.2006.58. [16] Object Management Group. “Object Constraint Language, version
2.4”, 2014.
[3] Jbpm User Guide.
[4] BonitaSoft. BOS V5.3-User & Reference Guide.Oct 19 2010
[5] BizAgi. Functional Descriptionv9.2009.
Authorized licensed use limited to: TH Brandenburg. Downloaded on October 22,2022 at 17:17:14 UTC from IEEE Xplore. Restrictions apply.