Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Software product-line engineering: a family-based software development process
Software product-line engineering: a family-based software development process
Design and use of software architectures: adopting and evolving a product-line approach
Design and use of software architectures: adopting and evolving a product-line approach
Software product lines: practices and patterns
Software product lines: practices and patterns
Semi-formal design of reliable mesh generation systems
Advances in Engineering Software
CGAL: the Computational Geometry Algorithms Library
Proceedings of the 17th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems
A component-oriented software toolkit for patient-specific finite element model generation
Advances in Engineering Software
Hi-index | 0.00 |
Applying software engineering concepts can improve the quality of any software development, and this is even more dramatic for complex, large and sophisticated software, such as meshing tools. Software product families are series of related products that make intensive reuse of already developed components. Object-oriented design promotes reusability, so it is specially suited for designing the structure of product families. In this paper we present an object-oriented design of a product family of meshing tools, where all family members share the software structure. By instantiating the structure with particular algorithms and parameters, we can easily produce different tools of the family. A good family design allows us not only to combine existing algorithms but also to easily incorporate new ones, improving software family evolution. We show how the family design is used for the generation of finite element and finite volume meshing tools, as well as a new tool for image processing.