View to Product Configuration Knowledge Modelling and Evolution

From: AAAI Technical Report FS-96-03. Compilation copyright © 1996, AAAI (www.aaai.org). All rights reserved.
View to Product Configuration Knowledge
Modelling and Evolution
Tomi M/innis~,
Hannu Peltonen and Reijo Sulonen
Helsinki University of Technology
HAResearchCentre and Laboratoryof InformationProcessing Science
Otakaari 1, FIN--02150Espoo, FINLAND
{Tomi.Mannisto,
Hannu.Peltonen,Reijo.Sulonen}@hut.fi
Abstract
Knowledgemanagementhas been a major problem
in the implemented
configurationsystems. Onereason for the difficulties is the complexityof the
product descriptions in these systems. Theproduct
experts can no longer understandproductthe wayit
is described.Theproblemis addressedin the objectoriented spirit by looking for waysof makingthe
configuration product structure modelsmorecomprehensible. A data modelfor describing generic
productstructures is defined. It formsa basis for
modellingthe evolution of both product configuration knowledge
and deliveredproducts.
Introduction
Manyknowledgeintensive systems have had problems
with knowledgemaintenance. Product configuration
systems are no exception in this respect, e.g., XCON
(Barker & O’Connor1989, McDermott1993). There
no universal agreement on the knowledgeneeded in
productconfigurators,let alone on the representationof
this knowledge.Wetherefore find it impossibleto discuss configuration knowledgemanagement
without reference to whatkind of knowledgeis being managed.
The basic issue in configuration modelling is a
mechanism
for describingstructures of multiple product
variants within a single data model. Manydifferent
methodshavebeenused for modellingthis generality in
product descriptions (Scht~nsleben& Oldenkott 1992,
van Veen 1991, Cunis et al. 1989, Mittal & Frayman
1989and Heinrich & Jungst 1991). Weidentify two basic product structure modellingmethodsin these approaches, whichwe refer to as explicit and implicit
methods. Wethen define a data modelwhichuses both
these methodsin combination.
There is no single wayof looking at products of a
company.
Productscan be classified accordingto various
criteria. Aclassification criterion suitable for onepurpose mayturn out to be awkwardin another context. We
try specifically to avoid this kind of problemby constructing our modelexplicitly for productconfiguration
purposes.
After definition of the modelwediscuss the configuration knowledgemanagementproblemin the environmentwherethe modelwouldbe used. Finally weoutline
our vision for a researchagendafor the evolutionof configuration models.
This paper reports ongoingworkof the Product Data
Management
Groupat Helsinki University of Technology.
Short Definitions of Basic Terms
A physical product is manufacturedaccording to a specific productstructure. A specific productstructure is a
collection of component
descriptionsorganisedin a partof hierarchy. Eachcomponentdescription contains the
necessary information for makingor ordering a component. Aspecific productstructure is sometimescalled a
bill-of-materials (BOM)
or configuration.
In manycompaniesa product can be varied according
to customerrequirementsandtherefore actually refers to
a set of similar products.This set can be describedwith a
generic productstructure, whichcorrespondsto a number of different specific productstructures. In a generic
productstructure a genericcomponent
referencerefers to
a set of alternative components.
A configurationprocess starts with a generic product
structure and customerrequirements.Customerrequirements are mappedto a technical specification, which
describes the customerneeds in the languageunderstood
in the configurationprocess. Thegoal of the configuration process is to fred a suitable (valid, completeand
possibly optimal) specific product structure that is
amongthe alternatives described by the generic product
structure. Wedo not assumeany particular kind of configuration process, it maybe fully automatic or rely
partly or entirely on decisionsmadeby a human.
A product can be described from many different
points of view, each potentially defining a different
product structure. In this paper, the generic product
structure, or configuration modelas it is sometimes
called, describes only those aspects of the productthat
are relevant duringa configurationprocess.
iii
Modelling Generic Product Structures
Thereare several possible waysof modellinggenerality
in product structures. Wedivide themhere roughly in
explicit and implicit productstructure descriptionmethods. Thetermsexplicit andimplicit indicate howdirectly
the generic product smactureidentifies the components
used. Weuse terms explicit or implicit modelfor a data
modelthat is based on an explicit or implicit product
structure description method,respectively. A single genetic product structure can also employboth -kinds of
methods.
Weuse the term ’productstructure’ here, althoughall
implicit methodsdo not aim at describingthe organisafion of the components
in a part-of hierarchy. Theymay
connect the componentsin someother way than in a
part-of hierarchy or perhapsdescribe only the component
set andassumethe structure to be well knownor fixed.
In an explicit methodthe generic productstructure is
describedby stating the components,their organisation
in the part-of hierarchy and possible choices for them.
For example, a MountainBikeX
has part frame which is
either MBFrameX
or MBFrameY.
In an implicit method,the description consists of
knowledgeabout the compatibility of components,connectivity of components
or other constraints. For example, in description of a display unit, the component
’monitor’maystate that it needsa high resolution video
signal, anda particular graphicscard maystate that it
providesexactly that kind of signal. AT-connectormay
state that it takes onevideoinput signal andprovidestwo
outputs of the samesignal. Thereis no explicit description of the components
of a workingdisplay unit. If two
monitorsare neededfor a certain system, one graphics
card and a T-connectorwith two monitors will do the
job.
It is also possible to use both explicit and implicit
methodsin a single model.For example,on the explicit
side one maystate that a product P has componentsa
and b, wherea is either A1or A2and b is either B1or
B2. Implicit knowledge
in B2maythen say that it is incompatiblewith A1and they should, therefore, not be
usedin the sameproduct.
In explicit modelsit is typically straightforwardto
enumerateall possible specific productstructures. Finding the desired structure maystill take too muchtime if
all the possibilitiesneedto be investigated.
In a purelyexplicit modela selection betweenalternative componentscan be madewithout considering other
component
selections. In practice, however,the alternafives in somecomponentsdependon each other. Sometimes these dependenciescan be solved with a global
context, whichis establishedat the beginningof the configurationprocess.
For example, suppose a product has component
’motor’ with alternatives ’220V’and ’ 110V’,and component’powerswitch’ with analogousalternatives. The
global context for this product could include attribute
112
’operating voltage’. After the context has been established, the motorand the switch can be chosenwith explicit rules. Alternatively one could use implicit rules
such as:/f the producthas a llOV (220V)motor, it must
have a 110V (220V) switch, or alternatively a 110V
(220V) motor cannot be combinedwith a 220V(110V)
switch.
Explicit modelthus more directly tells what components must be chosen for a valid configuration whereas
implicit modeldefines conditionsthat mustbe satisfied
by valid configurations.
Webelievethat explicit productstructures are in many
cases easier to construct and understandthan implicit
ones. Nevertheless, manyproducts include validity conditions that require implicit methods.Thedata model
that is outlinedlater in the paperthereforehas an explicit
basis that is extendedwith implicit constraints.
In the following we give someexamplesof both explicit andimplicit productstructure descriptionmethods.
Sample Explicit
Methods
Set of BOMs.
This is a trivial case andnot actually a real
generic product structure model. The methodis, however, widely used in the industry for modelling even
large numbersof variants.
Generic, Variant and ParametricBOMs.These define
alternatives for certain components
of a BOM
and possibly global variables for determining the choice.
(Sch~nsleben& Oldenkott 1992, van Veen1991)
AND-OR
Graphs. At each level of an AND-OR
graph a
node breaks downto either its components(AND)or
one selection between choices (OR). The ANDand
levels alternate, so that an AND
level is followedby an
ORlevel and vice versa.
Combined
Classification and Component
Hierarchies.
This is a sophisticated version of an AND-OR
graph as a
combinationof component
and classification hierarchies.
There each non-leavenodecan be either divided into its
components
(just like AND)
or it can be specialisedto its
subclass (a kind of an OR).This approachis used in SAP
Configurator(SAP1994) and is a close relative of the
PLAKON
model (Cunis et al. 1989).
Composite
InstanceVariable.Compositeinstance variables are usedin object-orientedmodelsfor representing
components(Kim, Bertino, & Garza1989). Such a variable representsactually a set of components
ff its domain
is a class that has subclasses;anyof its subclassbeingan
eligible component.
Sample Implicit Methods
If-then Rules. In manyexpert systemsif-then rules can
be used for implicitly describing productstructure. For
example, IF component A OR B is in configuration
THENcomponentX must be included, too.
"7
/
t
c-classification]
,
N
1
.........
!
!
........
\
[Configuration-[
componentdescriptions /
t
compm< { S }
compn -< {Y, Z}
ResSum(ResX~
prtrauct .
data base ,
main
,. ¯
,
, J
, ,
,
/
I
I
!
¯
",
mS{Sl} nS {Y, Z2}
n_<{Y,Zl}
-"
"’
¯ "\
compI < {A}
’ : /\,"
I
I
ResX:int
I
I
"--’~
--
[
~
//////II
..
..
,’
I
/
~’/
mediator
I .
I related
I c°mp°nent
data
/,//
/ I
/ 1
I
~ l
I< {A2!.
" /
~’"
I "11
ResJ(:=-160~F~_7
I
~
Rosx:=-18o
Resx:=-no
ResX:= 200 ResX:= 150
Figure 1. Examplegeneric product structure in the model.
out the invalid cases. In the following we ftrst give an
example of a generic product structure using the model
and then explain the conceptsin detail.
Incompatibility and Compatibility Constraints. One
wayof stating the possible uses of componentsis to state
which components can or cannot be with other components in a configuration. These facts can be recorded as
n-ary tuples.
Interfaces,
Ports and Connectors. These provide
deeper modelling for compatibility of components. The
basic idea is that in a configuration certain components
need, can or cannot be connected. This is modelled, for
example, by ports and connectors that must fit together
in a valid configuration (Mittal &Frayman1989).
Resource-based Modelling. In resource based generic
product structure modelling the idea is that somecomponents consumesomething, such as, power, fuel, ventilation, etc., while certain components supply these resources. In a valid specific product structure all resources
need to be in balance. For example, the total produced
net power must be more than maximumconsumption.
(Heinrich & Jungst 1991)
Generic
Product
Structure
An Example of a Generic Product Structure in
the Model
Generic product structure description of P in Figure 1
declares that P has two componentsm and n. Component
mshould be an S, while n should be either Y or Z. This
is an explicit product structure description. Thesedefinitions are refined in subclasses P1 and P2. ComponentS
is a generic product structure of its own;it has one component I. Finally, Y and subclasses of A and Z have no
components.In the figure, solid line represents is-a relationship; componentrelationships are not represented
graphically.
As an exampleof implicit constraints we use here resources. In Figure 1 there is an exampleresource ResX.
It is a resource that is supplied by A1 and A2and consumed by Y, Z1 and Z2. Suppliers and consumers are
linked to the resource by dashedlines. These classes may
assign a value to ResX; a negative value meaningconsumption. A balance constraint for the resource is defined in product P; it states that the componentsof P
cannot consumeresource ResXmore than they supply.
The explicit product structure limits the possible component combinations, no other components but the declared ones are allowed. Therefore, one can enumerate
Model
This section gives an overview description of the properties of a data model. It is based on our earlier work
(Peltonen et ai. 1994). The modelincludes both implicit
and explicit product structure description methods. The
explicit description defines a superset of all valid specific
product structures and implicit methodsare used to prune
113
all the possible components
for the tuple (m, n, l) in P2
accordingto the explicit productstructure:
(S1, Y, A1),(S1, Y, A2),(S1, Y,
(SI, Z2, A1),(S1, Z2, A2), (S1, Z2,
(S2, Y, A2),
($2, Z2, A2).
Theimplicit resourceconstraint then prunesout the ones
whereResXconsumptionis greater than production. We
assumethat ResSumin P returns zero if ResXis not
found in a component.The only valid combinationsin
P2 for the component
3-tuple (m, n,/) are:
(S1, Y, A1),
($1, Z2, A1),(S1, Z2, A2),
(S2, Z2, A2).
After enumeration,each possible specific productstructure of a configuration modelcan be checkedagainst
applicableconstraints, includingtechnicalspecification.
This providesa trivial methodfor finding a solution for
particular customerrequirements.Theexistence of the
trivial methodonly showsthat a solu~on,if one exists,
can be found;the methodis hardlyuseful for a real con.figuration process.Moreefficient heuristics is neededin
a practicalapplication.
Main Concepts of Data Model
Classification Hierarchy. Our model is based on
classes. Theyare organisedinto a classification hierarchy. Theproperties of a class are inherited along the
classificationhierarchy.
A large set of componentscannot be managedwithout
organisingit somehow.
Classification is a useful tool in
productmodelling;it providesmeansfor organising, but
one mustdecide on the classification criteria. Components can be classified, for example,according to the
functionsthey performor the types of the manufacturing
processes producingthem.
Wetherefore require that a classification of component descriptionsis createdspecificallyfor configuration
modelling. Wecall this classification hierarchy cclassification.
Although,wehere discuss only one c-classification, a
company
mayrequire different c-classifications for different product families. This meansthat same components mayhavedifferent classification and evendifferent
properties in different product families. Thesecomponents should perhaps be somehow
related or shared betweenthe classifications. This is, however,an issue we
will not addressin this paper.
Thec-classification has oneparticular propertythat we
call componentsubtyping. Component
subtyping states
that subclassesof a class C mayalwaysbe used in place
of C in componentdescriptions of a generic product
structure. For example,if class MBFrame
has subclasses
MBFrameX
and MBFrameY,
a generic componentreference ’MountalnBikeXhas part MBFrame’
meansthat a
MountainBikeX may have either MBFrameXor
MBFrameY
as its frame.
114
Generic ComponentReferences. In basic objectoriented product modelscomponentsare represented by
instance variables, whichare used for referring to the
components.The domainof an instance variable is a
class. If the class has subclasses, the instancevariable
mayalso take as its valuean instanceof any of the subclasses (Banerjeeet al. 1987). This is a propertyknown
as subtyping.
Subtyping is a generic concept and, as such, has
nothing to do with components.For example,if A1and
A2are subtypesof A, this alone doesnot implythat they
are valid as componentrepresentations in place of A.
Thereforewehavea morespecific subtypingconceptfor
a classification whereclasses represent components.
That
is what wecall componentsubtyping. Component
subtypingis not a propertyof anyclassification by accident.
Aclassification hierarchy, the c-classification in this
case, mustbe specifically constructed, with the help of
productexperts, so that it is valid withrespect to component subtyping.
Component
subtypingdefines a one formof generality
for componentdescriptions--a componentis not necessarily fromthe domainclass, since also the subclasses
providevalid choices. Genericproductstructure descriptions, however,also needa moregeneral mechanism
for
defining component
alternatives. For example,assumea
class Athat has three subclassesA1, .4.2 andA3.For one
product A1and A2 are valid componentalternatives,
while for another A2and A3are the ones. There are no
classes that could directly be usedas component
domains
for these products, nor is there a simplewayof defining
them.
In our modela generic componentreference is described as an instance variable and its domainas a nonemptyset of classes. This meansthat the value of the
variable mustbe a referenceto oneof the listed classes
or their descendants.If an ancestorof a class is also in
the domain,the class itself is redundantandcan therefore
be removed.For these domainswe use a special notation: c ~ {A,B}.This is a short for a constraint{c ~Av c
B}, wherec ~ Ameansthat c is a component
instance
fromclass Aor its decsendant.
Oneparticular property wewant to have for generic
component
references is refinement. A subclass can refine a componentattribute by makingits domainmore
specific than in the superclass.Moreprecisely, there are
two operations: 1) domainset maybe replaced by its
propersubset and2) in place of a class onecan write its
subclasses. Both operations maybe applied multiple
times. This allows definition of an abstract component
reference whichmaybe refined in subclasses into more
concretedescriptions.
For example,component
c in class C mayhave set {A,
B} as its componentdomain.This meansthat c must be
either an A or a B. If A has subclasses A1, A2and A3,
the possible refinementsfor the domainof c in the subclasses of C include {A}and {A1, A2, B }. Refinement
of generic component
references is present in only some
generic product structure models, e.g., in PLAKON
In the balanceconstraint sumof resourcesin the com(Cuniset al. 1989).
ponentsof a particular specific productstructure is used.
The sumis calculated by a special function ResSum,
Other Component Data
whichgoes through all the components
starting fromthe
one
for
which
the
balance
constraint
is
defined. For each
Thec-classification is not be suitable for modellingall
component
it
checks
whether
the
resource
is visible in
the properties neededin configuration.Twoclasses that
the
component
and
a
value
is
assigned
to
it.
If so, it adds
share common
properties maybe placed far apart from
the assignedvalue to the sumand otherwisenothing.
each other and cannot therefore inherit the common
Evaluationof a balance constraint involves recursive
properties along the c-classification. This is a consetransversal of all componentsof a specific product
quenceof strictly enforcingcomponent
subtypingin the
structure. Evaluationas such is easy for a known
specific
constructionof the c-classification. Thereis also another,
perhaps even moreimportant, reason whyall component product structure. Computationalproblemsmay, howthat tries to fred an appropridata cannotbe definedin the c-classification. Component ever, arise for a mechanism
ate
structure
with
a
given
initial
constraints,i.e., a techdata is usedwidelyin a company,
andin this picture connical specification. Wedo not address here the problem
figuration is only one player. Onecannotassumethat all
of satisfying a balance constraint or fixing it wereit
component
data neededin a configuration process would
false. In fact we assume the same as for the whole
also be primarily modelledand maintained in the cmodel;
the modelonly describes a set of valid specific
classification.
product
structures, not howto find a particular one in a
For these reasons weinclude in the modeltwo other
configuration
process.
sources for component
data: mainproductdata base and
additionalconfigurationrelated data.
Amainproductdata base represents here all the comEvolution in Generic ProductStructuresn
igonentdata that is maintainedelsewherein a company.
It
A Research Agenda
neednot be a single data baseandits detailedstructure is
not of great importancehere. Themainissue is that cerThis section gives someguidelines for our future work
tain data items can be importedfrom the mainproduct
on configuration knowledgemanagement.
data baseto the c-classification. In Figure1 importingof
Ourspecial interest is to understandconceptsneeded
propertiesfromthe mainproductdata base is illustrated
to describe the evolution of products and related combydottedlines.
puter representations. In principle, wecan distinguish
For coupling the mainproduct data base and the cbetweentwo different kinds of changeprocess. Onone
classification a mediatoris introducedbetweenthe two.
hand,duringtheir life-time the physical productsas real
Thismediatorprovidespropertiesfor the classes in the cworldobjects are modifiedfor a numberof reasons: they
classification;a class mayrefer to a propertythat is visiare being serviced, their functionality maybe upgraded,
ble in the mediator. Suchreference is effectively the
faulty componentsare being replaced by correct ones,
sameas if the property wasdeclared in the class. As a
etc.
difference, however,the relation to the origin of the
Modificationsare in manycases madenot by the orpropertyin the mainproductdata base is maintained.
ganisation that madethe products but by the customer
Additionalconfigurationrelated data defines properitself or by somemoreor less independentservice or
ties that are tightly connectedwith the c-classification,
maintenancecompany.Dueto the increasing importance
but do not have a single place there. As an examplea
of after sales activities andlong life-cyclesof productsit
resource is an implicit product structure modelling
has becomeincreasingly more important to maintain
methodthat cannotalwaysbe easily expressedas a propconsistent representationof productsomewhere.
erty of a single class in the c-classification. Thisis beOnthe other hand, the generic productstructures have
causesuppliers andconsumers
of a resourceare not typilife of their own. The ownercompanyintroduces new
cally subclasses of the same parent class in the cproducts, enhances existing models, replaces compoclassification; for instance,components
that either supply
nents with newerones clue to the numberof different
or consume
electric current maybe quite different.
reasons. Onsomeindustries, such as electronics andinResourcesserve here only as an exampleof additional
formationtechnology,these renewalprocesses are quite
configurationrelated data that cannotbe nicely inherited
hectic.
in the c-classification, they shouldnot be takenas a key
Boththese changeprocessesare difficult as such. We
characteristic of the model.Resourcesmaybe modelled
have seen only few examples of systems capable of
on top of the explicit productstructure as additionaldata
maintainingaccurate representationsof deliveredone-ofitems that can be importedin the c-classification. This
a-kind products. Themaintenanceof the generic product
waya resource can be defined in single place and then
structures without exploding their complexity needs
related to arbitrary component
descriptions in the cpowerfultools and policies whichguarantee that they
classification. In Figure1 this is shownbydashedlines.
remainmanageable
duringtheir life-cycle. Unfortunately
these two processesare not, at least in theory, always
115
!
I
It1
prod I
I .st.~cture
21
I prod II
I structgre
nI
I[structure
P 2’ {I
/
{ProductII
m’rJ
I
~c~p~o~
phy~
Of~
~1
f
/ ~
~
l
~
rodu~s
lP
\v ~~
("<"2<._
) di:ciplined"--~~
/
/
/_maintenance
independentmaintenance
~
modernisation
upgrade
~ rad~oTf~ration
~ .......
Figure2. Evolutionof GenericProductStructureandPhysical Products.
independent.A product designed and manufacturedlong
time ago under the presumptionsof the generic product
structure effective at that time maybe broughtbackto
the factory years later for functional upgrade. Howto
relate the old productstructures, i.e., physicaland generic, to the currently used generic productstructure?
Wewouldlike to look for conceptual frameworkwhich
mightcopewith problemsof this nature at least in certain conditions.
Evolution of Physical Products
Byphysical products we meanthe products that have
beenmanufactured
and deliveredto the customers.In the
following wediscuss different kinds of modification
operationson physicalproducts.
Figure 2 showsgeneric product structure, i.e., a cclassification, at times T and T’. At the bottomof the
figure there is a roundedboxfor descriptionsof physical
products. Therea dot in a roughlyshapedcircle represents a physical product delivered to a customer.Each
"circle" encloses descriptions of physical productsrelated to onespecific productstructure. Modifications
that
changethe structure of a physicalproductare illustrated
by arrowswhichmovea description awayfromits original specific product structure, Somemodifieddescriptions are still close to a "circle". Thissuggestssimilarity,
116
e.g., functional equivalence,to the productsof the related specific productstructure.
Independent Maintenance. These include typical onfield operations. Onemodifiesthe product accordingto
the need without considering the relation to generic
productstructure or other information.It is very difficult
for a product management
systemto support this kind of
operations in any other waythan by recordingmodifications andcurrent state of physicalproducts.At anyrate,
the description of a physical product shouldbe updated
to reflect the modifiedphysicalproduct.
Disciplined Maintenance. A company may define
service kits that do not modifythe functionality of the
productsbut replace, for example,certain parts that may
suffer from ageing. If individual components are
changed, a companymay, for example,have the policy
that each new componentversion must be compatible
with older ones, i.e., any old component
version can be
replaced by a newerversion. Theresulting newspecific
product structure is close to the original with a known
difference.
Upgrade
or Modernisation.
These are true reconfiguration operations,wherethe functionality of the productis
changed. Anupgrade enhances the functionality of a
product, for example, by increasing certain maximum
capacity. A modernisationbrings an old physical product
to the level of functionality of a newerproductgeneration. One problem is that upgraded and modernised
products are different from the newconfigured ones,
evenif they havethe samefunctionality. Thatis because
the modifiedproducts consist of a mixture of old and
new components, while new products are madefrom
new componentsonly. An upgraded product becomes
typically close to anotherproductthat offers higher capacity and a modernisedproducthas the fimctionality of
a productof a later generation,typically the currentgeneration at the timeof the modernisation.
AdvancedReconfiguration. A configuration process
creates a specific productstructure for a customerspecification. Similarly, an advancedreconflgurationprocess
can producea newspecific product structure starting
froman old physical product. In general, advancedreconfigurationcan producean entirely different product
from any previouslydesignedone.
Evolution of Generic Product Structures
Wedistinguish betweenthree maturity levels for configuration managementenvironments on the road towards a dreamenvironment. A ftrst level environment
has the capability of describingconfigurationknowledge
in a waythat it can be maintained.Asecondlevel environmentstores, in addition, the full history of both generic product structures and descriptions of physical
products. Then,a third level environment,i.e., a dream
environment,also includes knowledgeabout the nature
of modifications. Onewould knowin detail howtwo
generic productstructures differ andbe able to operate
with productstructures of different times, e.g., upgrade
old physical products using newcomponents.
Currently most configuration systems struggle with
the problemsrelated to the first level. Knowledge
managementis still a real problemin configurationsystems.
Muchof the problemstems from the complexityof the
configuration models--they are "programmed"by computer specialists and not understoodby the product experts. Oneof the goals wehopeto achieveis a structured
and understandablemethodfor describing configuration
knowledge.
Modificationsto the generic product structure result
from various sources. These include market situation,
customer demands,different regulations in different
marketareas, advancesin technology,corrections of old
designs, just to mention few. A companymust have a
clear policy howthese changesare incorporated to the
configurationknowledge.Definition of goodpractices is
a panof the overall solution.
Management
of changes is essentially based on decisions, typically madeby humans.Thesedecisions need
to be recorded and they can be used for describing the
relevant history of the wholemodel.
It is not clear whichconceptsare neededfor storing
the evolutionof generic productstructures. Astraightforwardwayis to create a copyof the wholeconfiguration modelafter each modification.In this muchof the
informationon changesis lost. For a better modellingof
the evolution one should record the changesof smaller
pieces of information. Classes, for example,could be
changedby creating newversions of them. Theproblems
arise thenhowclass versionsrelate in classificationhierarchy and howto incorporateversions in generic product
structures.
In addition, the history of changesto the descriptions
of physical productsneedsto be retained. Thereal challenge is to incorporate the evolution of generic and
physicalproductstructures in a useful manner.
For example,imaginethe followingscenario. A customer has two products fromthe company:one three and
the other five years old. Last year a capacity upgrade
wasmadefor the newerone. Nowthe customerwantsto
knowwhether a similar upgradewouldbe possible for
the olderoneas well.
Giventhe full historical data, one can find out the
product configuration environment,e.g., configuration
modeland components,at the time the upgrade of the
newerproduct took place, and naturally the current
situation. In addition, there wouldalso be a full history
of service modifications.
Typically, the answerto the customerinquiry would
be positive, but usuallyan engineeris requiredto design
the neededmodifications almost fromscratch. Withan
ideal environmentthe engineermightfind the following
possibility: There is an modernisationpackagefor the
old productto the level X and fromthere a modernisation packageto the current level wherethe requested
capacity upgradeis directly possible with newestcomponents. These two modernisationscan be combined,but
one mustmanuallycheckthe versions of components
q, s
andI for compatibility.
Conclusions
Productconfigurationmodellingis essentially based on
description of generality in productstructures. Wedivided the used methodstwocategories: explicit and implicit and discussed briefly howprevious approaches
relate to these. Our ownapproachuses both methods:a
generic product structure description has an explicit
structure as basis andimplicit rules are usedfor pruning
out invalid structures. Webelieve that this wouldmake
the generic productdescriptions moreclearer andtherefore easier to constructandmaintain.
Themanagement
of evolution of configuration knowledgeis a critical longtermgoal for a configurationmodelling environment.Weapproachedthe problemby describing the keyelementsin the state of the practice and
then painteda vision for the future work.This is an area
117
with plenty of open questions; manyof themfundamentally difficult. Wetry to emphasisthe needsof the industry as criterion for selecting the courseof future research in the field of product data modellingand management.
Acknowledgements
This research has beenpartly funded by the Academy
of
Finland.
References
Banerjee, J.; Kim,W.; Kim, H.-J.; and Henry, F. K.
1987. Semantics and implementationof schemaevolution in object-oriented databases.In Proceedingsof the
International Conference on Managementof Data
(SIGMOD).
Barker, V. E., and O’Connor,D.E. 1989. Expert systems for configuration at Digital: XCON
and beyond.
Communications
of the ACM32(3):298-318.
Curtis, R.; Gtinter, A.; Syska,I.; Peters, H.; andBode,
H. 1989. PLAKON--an approach to domainindependentconstruction. In Proceedingsof the Second
International Conferenceon Industrial & Engineering
Applicationsof Artificial Intelligence &ExpertSystems
IEA/AIE-89.
Heinrich, M., and Jungst, E. W. 1991. A resourcebasedparadigmfor the configuringof technical systems
from modularcomponents.In Proceedingsof the seventh
~I~.Econferenceon Artificial IntelligenceApplications.
Kim,W.; Bertino, E.; and Garza, J. F. 1989.Composite objects revisited. In Proceedings
of the International
Conference on Managementof Data (SIGMOD).
McDermott,J. 1993. R1("XCON")
at age 12: Lessons
floman elementaryschoolachiever. Artificial Intelligence, 59(1-2):241-247.
Mittal, S., and Frayman,F. 1989. Towardsa generic
modelof configuration tasks. In Proceedingsof IJCAI
89.
Peltonen,H.; Mannistt~,T.; Alho,K.; and Sulonen,R.
1994. Productconfiguration--anapplication for prototype object approach. In MarioTokoroand RemoPareschi, editors, Object Oriented Programming,
8th European Conference,ECOOP’94.
Springer-Verlag.
SAP1994. Der SAPKonfigurator (Reference Manual).
Sch0nsleben,P., and Oldenkott, H. 1992. Enlarging
CADand interfaces between PPCand CADto respond
to productconfigurationrequirements.In Pels H. L, and
Wortmann,
J. C., eds., Integration in ProductionManagementSystems.:Elsevier SciencePublishersB.V.
van Veen,E. A., 1991. ModellingProduct Structures
by generic Bills-of-Material. Ph.D. diss., Technische
Universiteit Eindhoven.
118