Generating product configuration knowledge bases from precise domain extended UML models

The Unified Modeling Language (UML) is an emerging standard conceptual modeling language in Software Engineering processes. UML provides extension mechanisms (stereotypes) to adapt the general modeling language to specific application domains. In addition, UML comprises the standardized expression language Object Constraint Language (OCL) to model additional invariants. In this paper we show how UML can be extended using the standardized extension mechanisms to fit the needs of the domain of knowledge-based product configuration. Starting from a conceptual product model, we define the semantics of the employed extensions based upon a logic theory of configuration in a way that the resulting knowledge bases can be processed by a specialized inference engine. We show especially how the built-in expression language OCL can be employed to enhance the expressiveness of the conceptual models and how such expressions can be translated to the logical model. Finally, we describe a prototype implementation of the presented ideas based on commercial tools.

[1]  John P. McDermott,et al.  R1: A Rule-Based Configurer of Computer Systems , 1982, Artif. Intell..

[2]  Markus Stumptner,et al.  Configuring Large Systems Using Generative Constraint Satisfaction , 1998, IEEE Intell. Syst..

[3]  Martin Gogolla,et al.  A Metamodel for OCL , 1999, UML.

[4]  Daniel Mailharro,et al.  A classification and constraint-based framework for configuration , 1998, Artificial Intelligence for Engineering Design, Analysis and Manufacturing.

[5]  Markus Stumptner,et al.  Consistency-Based Configuration , 1999 .

[6]  Anneke Kleppe,et al.  The object constraint language: precise modeling with UML , 1998 .

[7]  Kendall Scott,et al.  UML distilled - applying the standard object modeling language , 1997 .

[8]  Michael R. Lowry,et al.  A formal approach to domain-oriented software design environments , 1994, Proceedings KBSE '94. Ninth Knowledge-Based Software Engineering Conference.

[9]  Bernhard Rumpe,et al.  Towards a Formalization of the Unified Modeling Language , 1997, ECOOP.

[10]  Gerhard Friedrich,et al.  Uml as Domain Specific Language for the Construction of Knowledge-Based Configuration Systems , 1999, Int. J. Softw. Eng. Knowl. Eng..

[11]  Reijo Sulonen,et al.  Product Configurations - An Application for Prototype Object Approach , 1994, ECOOP.

[12]  Sanjay Mittal,et al.  Towards a Generic Model of Configuraton Tasks , 1989, IJCAI.

[13]  Guus Schreiber,et al.  Knowledge Engineering and Management: The CommonKADS Methodology , 1999 .

[14]  Betty H. C. Cheng,et al.  A Formal Semantics for Object Model Diagrams , 1995, IEEE Trans. Software Eng..

[15]  Letizia Tanca,et al.  Logic Programming and Databases , 1990, Surveys in Computer Science.

[16]  Reijo Sulonen,et al.  Concepts for Modelling Configurable Products , 1998 .

[17]  Heinrich Hußmann,et al.  Using UML/OCL Constraints for Relational Database Design , 1999, UML.

[18]  Andy Evans,et al.  Core Meta-Modelling Semantics of UML: The pUML Approach , 1999, UML.

[19]  Markus Stumptner,et al.  An Overview of Knowledge-Based Configuration , 1997, AI Commun..

[20]  Letizia Tanca,et al.  Logic Programming and Databases: An Overview , 1990 .

[21]  Markus Stumptner,et al.  An overview of knowledgedbased configuration , 1997 .