Go home now Header Background Image
Submission Procedure
share: |
Follow us
Volume 20 / Issue 5

available in:   PDF (298 kB) PS (607 kB)
Similar Docs BibTeX   Write a comment
Links into Future
DOI:   10.3217/jucs-020-05-0720


Verification of Software Product Line Artefacts: A Checklist to Support Feature Model Inspections

Rafael Maiani de Mello (COPPE-Federal University of Rio de Janeiro, Brazil)

Eldanae Nogueira Teixeira (COPPE-Federal University of Rio de Janeiro, Brazil)

Marcelo Schots (COPPE-Federal University of Rio de Janeiro, Brazil)

Cláudia Maria Lima Werner (COPPE-Federal University of Rio de Janeiro, Brazil)

Guilherme Horta Travassos (COPPE-Federal University of Rio de Janeiro, Brazil)

Abstract: Software Product Line Engineering (SPL) should ensure the correctness, completeness and consistenc y of its artefacts and related domain to prevent the propagation of defects in derived products. Software inspection techniques are effective in detecting defects in software artefacts and avoiding their propagation throughout the software development process. However, the results of a quasi-systematic review of the technical literature reported in this paper pointed to a lack of such techniques to support the inspection of SPL artefacts, including techniques to support the inspection of feature models (FMs) that are largely used in domain modelling. Therefore, a checklist-based inspection technique (FMCheck) has been developed to support the detection of defects on FMs. FMCheck is configurable and can be applied to the original feature model notation (the F ODA approach) and its extensions, including the Odyssey-FEX notation. The inspection technique was empirically evaluated, having indicated its feasibility and effectiveness. It is possible to see that inspectors applying FMCheck to inspect F-s can be more effective than those applying ad-hoc techniques, regarding four distinct domains.

Keywords: domain engineering, experimental software engineering, feature model, software inspection, software product line, software reuse

Categories: D.2.1, D.2.13, D.2.2, D.2.4