ONTOSE09.Slides.ppt by annieparksi

VIEWS: 0 PAGES: 17

									DEFINING SPEM 2 PROCESS
CONSTRAINTS
WITH SEMANTIC RULES
USING SWRL
Daniel Rodríguez and Miguel Á. Sicilia
Contents
 Introduction
 SPEM2, OWL and SWRL
 Representing SPEM 2 with OWL Ontologies
 Modelling process constraints with SWRL
 Conclusions and Future Work
Introduction
 Process modelling and evaluation is composed of a
 wide range of:
     Process Standards MIL-STD498, RUP, Open UP, XP, ISO12207,
     etc.
     Quality Standards: ISO9000, SCAMPI, etc.
     Capability standards CMMI, SPICE, etc.
     Guidelines PSP, TSP, Six Sigma, etc.
 SPEM is the first step towards formalising and providing
 tool support for the engineering of processes.
   Semantic Web technologies can further improve such
   automation.
SPEM2
 SPEM (SW & Systems Process Engineering meta-model)
 SPEM is an open OMG specification that allows us to
 use a standardised way of expressing software
 engineering process.
 SPEM is both a meta-model and a UML profile
   As a profile can be used with any UML tool but…
     … it cannot add any semantics (e.g.: there is no way to add that
     the relationship between a task and roles there must exist at least
     a worker (and more optionally).
   As a meta-model:
     It is possible to include semantics
     and specific tools (e.g. Eclipse Process Framework Composer).
SPEM 2: Method Content & Processes
SPEM 2: Method Content and Process




                    With RUP:
SPEM 2 Metamodel
 Basic Elements: External Description, Guidance, …
 Dependencies: Categorizes, Impacts, Import,
 Precedes, RefersTo, Trace, …
 Process Structure: WorkProduct, WorkDefinition,
 Activity, Step, ProcessRole, …
 Process Components: Package, ProcessComponent,
 Process, Discipline, …
 Process Lifecycle: Lifecycle, Phase, Iteration,
 Precondition, Goal, …
SPEM 2 Packages
 Core: Common classes and abstractions.
 Process structure: Static concepts of processes
 with nesting activities and their dependencies
 (Tasks, Roles, and Work Products).
 Process behaviour: Extends the Process Structure
 with behavioural models
 Managed Content: Concepts for managing
 textual description (natural language) and
 documentation capabilities for processes.
 Method Content: Concepts for defining lifecycle
 and process-independent reusable method
 content elements
 Process With-Methods: Structures for integrating
 Process Structure concepts with instances of
 Method Content concepts into the context of a
 lifecycle model
 Method Plug-in: Introduces the concept of
 variability in processes (method configuration).
OWL & WSRL
Ontology Web Language (OWL)
 OWL has become the de-facto standard as ontology
 representation language.
 Good tool support: Protégé, Jena, etc.
Semantic Web Rule Language (SWRL)
 SWRL is the rule language of the Semantic Web.
 SWRL is based on OWL
   all rules are expressed in terms of OWL concepts.
 Good tool support within Protégé and third-part
 reasoning engines such as Jess.
Representing SPEM 2 with OWL
 Most SPEM terms can be directly translated into
 OWL
   However, the translation does not aim at substituting the
   original model
     It serves as a complement for adding reasoning and
     inference support to SPEM based models.
 In addition, ontologies in general allow us to reuse
   common software engineering related knowledge
   and lessons learned.
SPEM2 Method Content Hierarchy
SPEM 2 Process Hierarchy
Executing Processes Constrains in SWRL
                       OWL       Protégé + Jess + other SE Knowledge
     EPF Composer




                           OWL




                    MS Project
What type of constrains?
 Static rules at the same level or between different
 levels in the ontological hierarchy
   SPEM definitions, process definitions or actual processes
 WorkProductUse(?x) ^ isInputParameter(?x, ?a) ^ Activity(?a) 
 → isInOutParameter(?x, ?a)

 During the course of a project, constraint-checking
 behaviour can detect mismatches between
   process definitions and the actual process performed
  WorkProductUse(?x) ^            WorkProductUse(URD) ^ 
  isInputParameter(?x, Review)    reviewed(URD) ^ signed(URD) 
  → reviewed(?x, true)            → modifiable(URD, false)
Conclusios and Future Work
 Ontologies can complement SPEM 2 models to include
 reasoning capabilities
   Translation of SPEM 2 into OWL is feasible although not
   straightforward
   Reasoning capabilities through SWRL and inference engines
   Hard to build a knowledge base of SE rules
 Future (current) work
   Further implementation of the current prototype
   Automatically translate SPEM 2 and OCL into OWL
   Capture “common” rules from specific processes (SCRUM,…)
   OntoSWEBOK: Ontological representation of the Guide to
   the Software Engineering Body of Knowledge
SPEM 2 WBS Hierarchy
 Delivery Process: represents a
 complex processes needed to carry
 out processes.
 Capability Pattern: fragment of a
 process that can be reused
 multiple times in a delivery process.
 Activity: main element to define
 processos. It allows the organisation
 basic element processes (Tasks,
 Roles, and Work Products).
 Task: smallest element unit in SPEM
 processes.

								
To top