Article ID Journal Published Year Pages File Type
567997 Advances in Engineering Software 2014 13 Pages PDF
Abstract

•We present a systematic and iterative process for building a meshing tool software product line.•The process builds a domain model that captures essential domain characteristics.•The domain model is specified using a formal language.•We validate the process by generating a SPL for tree stem deformation meshing tools.•We present 3 meshing tools produced by a code generator built using this process.

Meshing tools are highly complex software for generating and managing geometrical discretizations. Due to their complexity, they have generally been developed by end users – physicists, forest engineers, mechanical engineers – with ad hoc methodologies and not by applying well established software engineering practices. Different meshing tools have been developed over the years, making them a good application domain for Software Product Lines (SPLs). This paper proposes building a domain model that captures the different domain characteristics such as features, goals, scenarios and a lexicon, and the relationships among them. The model is partly specified using a formal language. The domain model captures product commonalities and variabilities as well as the particular characteristics of different SPL products. The paper presents a rigorous process for building the domain model, where specific roles, activities and artifacts are identified. This process also clearly establishes consistency and completeness conditions. The usefulness of the model and the process are validated by using them to generate a software product line of Tree Stem Deformation (TSD) meshing tools. We also present Meshing Tool Generator, a software that follows the SPL approach for generating meshing tools belonging to the TSD SPL. We show how an end user can easily generate three different TSD meshing tools using Meshing Tool Generator.

Related Topics
Physical Sciences and Engineering Computer Science Software
Authors
, , , , ,