Journal of Universal Computer Science (Mar 2020)
Guidelines for Structuring Object-Oriented Product Configuration Models in Standard Configuration Software
Abstract
Read online Read online Read online
Product configuration systems (PCSs) are increasingly being used in various industries to manage product knowledge and create the required specifications of customized products. Companies applying PCS face significant challenges in modelling, structuring and documenting the systems. Some of the main challenges related to PCSs are formalising product knowledge conceptually and structuring the product features. The modelling techniques predominantly used to visualise and structure PCSs are the Unified Modelling Language (UML) notations, Generic Bill of Materials (GBOM) and Product Variant Master (PVM), associated with class collaboration cards (CRC-cards). These methods are used to both analyse and model the products and create a basis for implementation to a PCS by using an object-oriented approach. However, the modelling techniques do not consider that most commercial PCSs are not fully object-oriented, but rather, they are expert systems with an inference engine and a knowledge base; therefore, the constructed product models require modifications before implementation in the configuration software. The consequences are that what is supposedly a feasible structure of the product model is not always appropriate for the implementation in standard PCS software. To address this challenge, this paper investigates the best practice in modelling and implementation techniques for PCSs in standard software and alternative structuring methods used in object-oriented software design. The paper proposes a method for a modular design of a PCS in not fully object-oriented standard PCS software using design patterns. The proposed method was tested in a case company that suffered from a poorly structured product model in a not fully object-oriented PCS. The results show that its maintainability can be improved by using design patterns in combination with an agile documentation approach.
Keywords