Title: Computing product configurations via UML and integer linear programming
Authors: Andreas Falkner, Ingo Feinerer, Gernot Salzer, Gottfried Schenner
Addresses: Siemens AG Osterreich, Corporate Technology Central Eastern Europe, Siemensstrasse 90, A-1210 Vienna, Austria. ' Technische Universitat Wien, Institut fur Informationssysteme, Karlsplatz 13/E184, A-1040 Vienna, Austria. ' Technische Universitat Wien, Institut fur Computersprachen, Karlsplatz 13/E185, A-1040 Vienna, Austria. ' Siemens AG Osterreich, Corporate Technology Central Eastern Europe, Siemensstrasse 90, A-1210 Vienna, Austria
Abstract: The Unified Modelling Language (UML) can be used to specify complex systems: component types are modelled as classes, interdependencies as associations with multiplicities and labels. This paper describes how to handle constraints on associations and multiplicities declaratively by translating them to inequalities over integers without adding complexity. This method provides well-defined semantics and allows for efficient algorithms for reasoning tasks like detecting inconsistencies. We identify some challenges arising from the use of class diagrams for product configuration, and propose solutions for some of them. The paper concludes with the discussion of an example derived from a real-world configuration problem in the railway domain.
Keywords: product configuration; consistency; inconsistency detection; Unified Modeling Language; UML; class diagrams; integer inequalities; integer linear programming; ILP; lightweight formal methods; optimal configurations; minimal configurations; associations; multiplicities; railways; railway signalling systems.
DOI: 10.1504/IJMASSC.2010.037650
International Journal of Mass Customisation, 2010 Vol.3 No.4, pp.351 - 367
Published online: 20 Dec 2010 *
Full-text access for editors Full-text access for subscribers Purchase this article Comment on this article