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