4 RELATED WORKS
The process modelling domain has been very ac-
tive during the 90’s. There was a strong separation
between Process Description Languages (PDL) and
process enactment engines. PDL could be classified
into different categories: some of them were based on
programming languages (ProcessWise/PML (Green-
wood et al., 1992) or RHODES/PBOOL (Cr
´
egut and
Coulette, 1997)), others on rules (MARVEL/MSL
(Kaiser et al., 1988), ADELE/TEMPO (Warboys,
1994) or EPOS/SPELL (Warboys, 1994)), others on
petri nets (SPADE/SLANG (Bandinelli et al., 1995)),
and the others are hybrid solutions. Each of these lan-
guages had its own specific tools.
The actual tendancy is to unify PDL. Let us quote
for example SPEM metamodel suggested by the
OMG and XML-based languages like XPDL (XML
Process Description Language) (WfMC, 2005) pro-
posed by the WfMC(Workflow Management Coali-
tion) or BPML (Business Process Management Lan-
guage) (Arkin, 2002) proposed by the BPMI (Busi-
ness Process Management Initiative). All these ap-
proaches define LDP’s concepts (Breton, 2002) by
proposing a syntax in the form of a metamodel for
SPEM or a XML schema for XPDL and BPML. Se-
mantics is only described informally (in natural lan-
guage). Furthermore, process enactment is not for-
mally defined even if there are specific engines for
specific targets (e.g. BPEL4WS & BPEL-J).
5 CONCLUSION
In this article, we have presented our work on the
modelling of software processes. Because the SPEM
metamodel lacks rigorous and formal definition, we
have proposed a restriction of SPEM that remains
compatible with the standard and puts the focus on hi-
erachical decomposition of workdefinitions (the struc-
tural view) and the categorization of process com-
ponents (roles, products and workdefinitions) accord-
ing to disciplines (the descriptive view). Semantics
that are not graphicaly captured are expressed using
OCL constraints either at the metamodel level or at
the process level. Our SPEM specialization has been
used to model a UML based method called MACAO
(Combemale et al., 2006).
Unfortunately, OCL can only capture structural
constraints. Our future work is to define an opera-
tional semantic for SPEM in order to enact a process
model described in SPEM. So we are investigating
several approaches including the ones that describe
operational semantics for metamodel such as Ker-
meta, Xion and xOCL.
REFERENCES
(2002). Meta Object Facility (MOF) 1.4 Specification.
OMG, Inc. Final Adopted Specification.
(2003). Business Process Execution Language for Web Ser-
vices v1.1.
(2003). UML Object Constraint Language (OCL) 2.0 Spec-
ification. OMG, Inc.
(2004). Unified Modeling Language (UML) 1.4.2 Specifi-
cation. OMG, Inc.
(2005). Software Process Engineering Metamodel (SPEM)
1.1. OMG, Inc.
Arkin, A. (2002). Business Process Modeling Language.
Business Process Management Initiative.
Bandinelli, S., Fuggetta, A., Lavazza, L., Loi, M., and
Picco, G. P. (1995). Modeling and improving an in-
dustrial software process. IEEE Transactions on Soft-
ware Engineering, 21(5):440–454.
Bendraou, R., Gervais, M.-P., and Blanc, X. (2005).
Uml4spm : A uml2.0-based metamodel for software
process modelling. In MoDELS’05, volume 3713,
pages 17–38. Springer-Verlag.
Breton, E. (2002). Contribution
`
a la repr
´
esentation de
processus par des techniques de m
´
eta-mod
´
elisation.
PhD thesis, Nantes University.
Breton, E. and B
´
ezivin, J. (2001). Process-centered model
engineering. In 5th IEEE International Enterprise
Distributed Object Computing Conference, Seattle,
Washington, USA. IEEE Computer Society.
B
´
ezivin, J. (2004). In search of a basic principle for
model driven engineering. CEPIS, UPGRADE, The
European Journal for the Informatics Professional,
V(2):21–24.
Combemale, B. (2005). Sp
´
ecification e t v
´
erification d e
mod
`
eles de proc
´
ed
´
es de d
´
eveloppement. Master’s the-
sis, Toulouse II University, Master SLCP.
Combemale, B., Cr
´
egut, X., Caplain, A., and Coulette, B.
(2006). Mod
´
elisation rigoureuse en SPEM de proc
´
ed
´
e
de d
´
eveloppement. In Lavoisier, H. S. ., editor, LMO
2006, pages 135–150.
Cr
´
egut, X. and Coulette, B. (1997). PBOOL: an object-
oriented language for definition and reuse of enactable
processes. Software Concepts & Tools, 18(2).
Greenwood, R. M., Guy, M. R., and Robinson, D. J. K.
(1992). The use of a persistent language in the imple-
mentation of a process support system. ICL Technical
Journal.
IBM and BEA (2004). BPELJ: BPEL for Java.
Kaiser, G. E., Feiler, P. H., and Popovich, S. S. (1988). Intel-
ligent Assistant for Software Development and Main-
tenance. IEEE software, 5(3):40–49.
Miller, J. and Mukerji, J. (2003). Model Driven Architecture
1.0.1 Guide. OMG, Inc.
Warboys, B. C., editor (1994). Proc. of EWSPT’94, volume
772 of LNCS. Springer–Verlag.
WfMC (2005). Process Definition interface – XML Process
Definition Language v2.0.
TOWARDS A RIGOROUS PROCESS MODELING WITH SPEM
533