Object-Role Modeling as a Domain Modeling Approach
- 格式:pdf
- 大小:140.95 KB
- 文档页数:11
Object-RoleModelingasaDomainModelingApproach
H.A.Proper1,A.I.Bleeker2,andS.J.B.A.Hoppenbrouwers1
1UniversityofNijmegen,Sub-facultyofInformatics,IRISGroup,Toernooiveld1,6525EDNijmegen,TheNetherlands,EUe.proper@acm.org,stijnh@cs.kun.nl2Luminis,IJsselburcht3,6825BSArnhem,TheNetherlands,EUaraminte.bleeker@luminis.nl
Publishedas:
H.A.Proper,A.I.Bleeker,andS.J.B.A.Hoppenbrouwers.Object-rolemodellingasado-
mainmodellingapproach.InJ.GrundspenkisandM.Kirikova,editors,Proceedingsof
theWorkshoponEvaluatingModelingMethodsforSystemsAnalysisandDesign(EMM-
SAD’04),heldinconjunctiunwiththe16thConferenceonAdvancedInformationSystems
2004(CAiSE2004),volume3,pages317–328,Riga,Latvia,EU,June2004.Facultyof
ComputerScienceandInformationTechnology.
Abstract.ThispaperfocusesonthepotentialroleoftheObject-RoleModeling(ORM)approachtoinformationmodelingforthetaskofdomainmodeling.Domainmodelingcon-cernsobtainingandmodelingthelanguage(concepts,terminologies,ontologies)usedbystakeholderstotalkaboutadomain.Achievingconceptualclarityandconsensusamongstakeholdersisanimportantyetoftenneglectedpartofsystemdevelopment,andrequire-mentsengineeringinparticular.Thispaperstartsoutwithabriefdiscussionontheimportanceofdomainmodelinginsystemdevelopment.Thisisfollowedbyanoutlineoftheactivitiesinvolvedinproperdomainmodeling.WewillthendiscusswhytheORMapproachis,inprinciple,agoodcandidateforthetasksinvolvedindomainmodeling.Thisisfurthersubstantiatedbyamoredetailedevaluation,bothfromatheoreticalandapracticalperspective.
1Introduction
Intoday’sbusiness,softwareprojectsstilloftenfail,and/ortheircoststendtoturnouttobehigher
thaninitiallyestimated[1].Variousdifferentreasonsmayunderliethisproblem,betheypolitical,
organizational,economic(budgets)orprocess-oriented.Webelievethatoneofthekeyfactors
contributingtowardsfailureisalackofclarityregardingthelanguageandconceptsusedinthe
communicationamongthestakeholdersinvolvedinthedevelopmentproject.Thesestakeholders
typicallyrangefromproblemowners,contractauthorities,perspectiveusers,domainexperts,to
softwareengineersandsystemadministrators.
Achievingconceptualclarityandconsensusamongstakeholdersisanimportantyetoften
neglectedpartofmodelingactivitiesinsystemdevelopment.Duringsystemdevelopment,amyriad
ofmodelsmaybeproduced,rangingfromhighlevelsketchesoftheproblem,viainformal/formal
requirements,todesignsatseverallevelsoftechnicaldetail.Underlyingeachofthesemodelsa
setofdomainspecificconceptscanbediscerned,suchasclient,order,stock,etc.Theprocessof
obtainingandmodelingtheseconcepts,essentiallymodelingthelanguage(concepts,terminologies;
ontologies)usedbystakeholderstotalkaboutadomain,iswhatwerefertoasdomainmodeling.
Theabsenceofexplicitandwellmanageddomainmodelsplaysanimportantpartinthe
failureofasignificantnumberofsystemdevelopmentprojects[2].Achievingclarityandconsensus
ThispaperresultsfromtheArchiMateproject(http://archimate.telin.nl),aresearchconsortiumthataimstoprovideconceptsandtechniquestosupportenterprisearchitectsinthevisualisation,communicationandanalysisofintegratedarchitectures.TheArchiMateconsortiumconsistsofABNAMRO,StichtingPensioenfondsABP,theDutchTaxandCustomsAdministration,Ordina,TelematicaInstituut,CentrumvoorWiskundeenInformatica,KatholiekeUniversiteitNijmegen,andtheLeidenInstituteofAdvancedComputerScience.amongstakeholdersaboutthedomainconceptsused,boilsdowntoansweringthequestion:what
arewetalkingabout?Thepurposeofadomainmodelisthereforetouniformlydefineandscopethe
domainconceptsintermswhichthestakeholdersunderstandandagreeupon.Forthestakeholders
inthebusinessenvironment,thedomainmodelcanprovideaunifiedvocabularyandsupport
understandingofthescopeofthesystem;towardssoftwarearchitectsandengineersitprovides
guidanceinmakingimplementationdecisions(forexampledatabasedesign).Fortheprojectleader
itcanbeanaidinplanningandprioritizationoftheproject.
Giventhatdomainmodelsarecentralinstakeholdercommunication,terminologicalaspects
ofmodelingcanbestbetackledindirectrelationtosuchmodels.Thisshouldensuretimely
identificationofterminology-relatedissues,yetkeepsoptionsopenastohowsuchissuesaretobe
solvedormanaged(thatis,inwhichway,andinwhichdevelopmentphase).Thedifferentmodels
usedduringsystemdevelopment,andtheirunderlyingdomainmodel(s),needtobecommunicated
withdifferentstakeholders.Thisputsanextraburdenonthetaskofdomainmodeling,asashared
understandingmustbereachedoftheconceptsinvolved.
Wearenotaloneinarguingtheimportanceofdomainmodeling.Forexample,theRational
UnifiedProcess[3](RUP)explicitlyunderlinesitsimportanceaswell.TheRUPincludesthenotion
ofaglossary,whichisusedtodefineterminologyspecifictothebusinessdomain,explainingterms
whichmaybeunfamiliartothereaderofuse-casedescriptionsorotherprojectdocuments.Quite
often,thisdocumentisusedasaninformaldatadictionary,capturingthedefinitionsoftheterms.
However,webelievethatRUP’snotionofaglossary,inparticularwhenviewedasa“listofterms”,
istoolightamechanismfordomainmodelling.
In[4]theimportanceofproperdomainmodelingisarguedaswell.Thebookspentsanentire
chapterontheissuesinvolvedindomainmodeling.It,however,doesnotprovideexplicitguidance
tomodelers,notdoesitprovideanunderlyingtheoryofdomainmodeling.Webelievethatsuch
anunderlyingtheoryshouldbedeveloped,andthatmoreguidanceshouldbeprovidedtodomain
modelersinpractice.Thisarticleaimstotakesomefirststepsintothisdirection,byevaluating
ORMfromtheperspectiveofdomainmodelling.
Theaimofthisarticleistoprovideabriefanalysis,bothfromatheoreticalandpracticalper-
spective,ofthecomplexitiesinvolvedindomainmodelingandthepotentialuseofORMforthe
tasksinvolved.Wewillidentifyseveralambitionlevelsconcerningthedomainmodelingprocess
(section2)[5].Basedonthistheoreticalanalysis,wewill(section3)thencontinuebydiscussing,
fromatheoreticalperspective,howtheORM(Object-RoleModeling)[6]approachcanbeem-
ployedforthetaskofdomainmodeling.WewillarguethatORM’srootsinnatural-language
analysismakesithighlysuitableforthistask.Somealternativemodelingapproaches,suchas
OOSA[7]andtheUML[8]willbediscussedbrieflyaswell.Beforeconcluding,section4focuses
onsomepracticalexperienceswiththeuseofORMinsoftwaredevelopmentprojects.
2DomainModeling
Thissectionprovidesabriefdiscussionoftheactivityofdomainmodeling.Amoredetailed
discussionondomainmodeling,anditsroleinthesystemdevelopmentprocess,canbefound
in[2,5].Ingeneral,thegoalsfordoing(business)domainmodelingare[2]:
1.articulateclearandconcisemeaningsofbusinessdomainconceptsand
2.achieveasharedunderstandingoftheconceptsamongrelevantstakeholders.
Ourstartingpointisnotthedomainmodel(aconceptualrepresentation),buttheactors(typically
people)thataresomehow–andrelevantly–involvedindiscoursingaboutadomain.Theyoperate
inanenvironmentofdiscourse3.
Basedontheresultsreportedin[10],weconsiderdomainmodelinginthecontextofsystem
developmenttorevolvearoundthreestreamsof(mutuallyinfluencing)activities:
3Foranin-depthdiscussionofthenotionof“environmentofdiscourse”inrelationwiththeclassicnotionof“universeofdiscourse”,see[9].