Full Program »
Localizing Inconsistencies into Software Process Models at a Conceptual Level
Software process modeling aims to provide an abstract description of roles, activities, and artifacts used to lead the development and maintenance of software projects. The designed process models must be correct syntactically and consistent semantically in order to improve teams' productivity and enable developers to achieve product quality goals. To address those challenges, we introduce an approach to ensure the correctness and consistency of designed process models at a conceptual level. The proposed approach is based on: (1) a syntactic verification of correctness at the meta-model level and (2) a semantic validation based on a rules' engine seeking consistency at the operational level. Using this approach, software development teams can define new validation rules to constrain the semantic of their software processes. We implemented the approach and evaluate its effectiveness through two case studies. The results have shown that we are able to support process modelers identifying inconsistencies at a conceptual level. Most importantly, we further discuss the reusability of semantic validation rules produced by experts for an effective analysis of process models.