Sign up & Download
Sign in

DEFINING SOFTWARE PROCESS MODEL CONSTRAINTS WITH RULES USING OWL AND SWRL

by D Rodríguez, E García, S Sánchez
Int J Soft Eng Knowl (2010)
  • ISSN: 02181940

Abstract

The Software & Systems Process Engineering meta-model (SPEM) allows the modelling of software processes using OMG (Object Management Group) standards such as the MOF (Meta-Object Facility) and UML (Unified Modelling Language) making it possible to represent software processes using tools compliant with UML. Process definition encompasses both the static and dynamic structure of roles, tasks and work products together with imposed constraints on those elements. However, the latter requires support for constraint enforcement that is not always directly available in SPEM. Such constraint-checking behaviour could be used to detect possible mismatches between process definitions and the actual processes being carried out in the course of a project. This paper approaches the modelling of such constraints using the SWRL (Semantic Web Rule Language), which is a W3C recommendation. To do so, we need to first represent generic processes modelled with SPEM using an underlying ontology based on the OWL (Ontology Web Language) representation together with data derived from actual projects. 2010 World Scientific Publishing Company.

Cite this document (BETA)

Available from www.cc.uah.es
Page 1
hidden

DEFINING SOFTWARE PROCESS MODEL CONSTRAINTS WITH RULES USING OWL AND SWRL

1st Reading
August 23, 2010 19:53 WSPC/117-IJSEKE - SPI-J111 0218-1940 00487
International Journal of Software Engineering1
and Knowledge Engineering2
Vol. 20, No. 4 (2010) 1–163
c
© World Scientific Publishing Company4
DOI: 10.1142/S02181940100048765
DEFINING SOFTWARE PROCESS MODEL CONSTRAINTS6
WITH RULES USING OWL AND SWRL7
DANIEL RODRI´GUEZ∗, ELENA GARCI´A†, SALVADOR SA´NCHEZ‡8
and CARLOS RODR´ıGUEZ-SOLANO NUZZI§9
Department of Computer Science, University of Alcala10
Ctra. Barcelona km. 33.6, 28871 Alcala de Henares11
Madrid, Spain12
∗daniel.rodriguezg@uah.es13
†elena.garciab@uah.es14
‡salvador.sanchez@uah.es15
§carlos.solano@uah.es16
The Software & Systems Process Engineering meta-model (SPEM) allows the modelling17
of software processes using OMG (Object Management Group) standards such as the18
MOF (Meta-Object Facility) and UML (Unified Modelling Language) making it possi-19
ble to represent software processes using tools compliant with UML. Process definition20
encompasses both the static and dynamic structure of roles, tasks and work products21
together with imposed constraints on those elements. However, the latter requires sup-22
port for constraint enforcement that is not always directly available in SPEM. Such23
constraint-checking behaviour could be used to detect possible mismatches between pro-24
cess definitions and the actual processes being carried out in the course of a project.25
This paper approaches the modelling of such constraints using the SWRL (Semantic26
Web Rule Language), which is a W3C recommendation. To do so, we need to first repre-27
sent generic processes modelled with SPEM using an underlying ontology based on the28
OWL (Ontology Web Language) representation together with data derived from actual29
projects.30
Keywords: SPEM; Ontologies; OWL; rules; SRWL.31
1. Introduction32
Process modelling in general concerns the representation of resources, artifacts and33
dynamic behaviour of activities. As highlighted by Curtis [11] process modelling34
supports the following objectives: (i) facilitating human understanding and com-35
munication; (ii) supporting process improvement; (iii) supporting process manage-36
ment; (iv) providing automated guidance in performing processes, and (v) provid-37
ing automated execution support. Process modelling is of paramount importance to38
improve the quality of organisation’s processes, and in turn, the quality of products39
they generate. There are several well established standards used to describe process
1
Page 2
hidden
1st Reading
August 23, 2010 19:53 WSPC/117-IJSEKE - SPI-J111 0218-1940
00487
2 D. Rodr´ıguez et al.
in descriptive view such as the ISO 12207 [20] as well as improvement frameworks1
such as the CMMI (Capability Maturity Model Integration) [10] or ISO/IEC 155042
standard [21]. More recently, the OMG (Object Management Group)a has devel-3
oped a meta-model to represent software processes, called SPEM (Software & Sys-4
tems Process Engineering Meta-model) [26]. SPEM, currently in version 2, allow5
us to formalise all the relevant aspects (roles, products, deliverables, guides, life-6
cycle, phases, milestones, etc.) of generic software processes. SPEM is supported7
by different modelling tools such as the Eclipse Process Framework (EPF) Com-8
poserb aiming at better management and monitoring of projects. Although SPEM9
is increasingly gaining popularity as it is based on the same standards as UML, it10
is not the only possibility to represent process. For example, Gru¨ninge and Menzel11
[15] describe the Process Specification Language (PSL) designed to exchange pro-12
cess information among systems.13
In another direction, ontologies [14, 36] are explicit representations of domain14
concepts and their relationships. More formally, an ontology defines the vocabulary15
of a problem domain and a set of constraints on how terms can be combined to16
model the domain. Common uses of ontologies include communication between17
people and organizations and interoperability between systems, i.e., translation of18
modelling methods, paradigms, languages and software tools. Desirable qualities19
provided by ontologies include reusability thanks to formal representations, search-20
ability providing meta-data to information, and reliability performing consistency21
checking. In software engineering, ontologies can be used by applications require a22
higher level of formality of definition. For example, cataloguing resources or mapping23
of vocabularies from different information sources requiring precise definitions, or24
at least significant characterizations that help in deciding which terms to use in25
practical situations. Ontologies allow us to add semantics to data so that different26
software components can share information in a homogeneous way. For example,27
Sicilia et al. [32] review of use of ontologies in the engineering domain and how28
upper ontologies can be of assistance. Furthermore, formal logic can be used in29
conjunction with such formal representations for reasoning about the information30
and facts represented as ontologies.31
In this paper, we show how processes modelled using the SPEM framework can32
be translated into ontologies. Such representation together with actual data from33
current projects (also translated into ontologies) can provide reasoning capabilities34
for consistency checking, model validation, project and resource analysis, business35
rule analysis, etc.36
The rest of this paper is structured as follows. Section 2 covers the background.37
Sec. 3 summarizes the processes of creating ontologies from SPEM, followed by how38
constrains can be modelled and executed in Sec. 4. Finally, Sec. 5 concludes the39
paper and outlines future work.40
ahttp://www.omg.org/
bhttp://www.eclipse.org/epf

Sign up today - FREE

Mendeley saves you time finding and organizing research. Learn more

  • All your research in one place
  • Add and import papers easily
  • Access it anywhere, anytime

Start using Mendeley in seconds!

Already have an account? Sign in

Readership Statistics

4 Readers on Mendeley
by Discipline
 
by Academic Status
 
50% Ph.D. Student
 
25% Student (Master)
 
25% Doctoral Student
by Country
 
50% Portugal
 
25% Austria
 
25% Spain