您好,欢迎访问三七文档
1Component-BasedSoftwareEngineering:Technologies,QualityAssuranceSchemes,andRiskAnalysisToolsCaiXiaSupervisor:Prof.MichaelR.LyuMarkers:Prof.Kam-FaiWongProf.AdaFuAbstractComponent-basedsoftwaredevelopmentapproachisbasedontheideatodevelopsoftwaresystemsbyselectingappropriateoff-the-shelfcomponentsandthentoassemblethemwithawell-definedsoftwarearchitecture.Becausethenewsoftwaredevelopmentparadigmismuchdifferentfromthetraditionalapproach,qualityassurance(QA)forcomponent-basedsoftwaredevelopmentisanewtopicinthesoftwareengineeringcommunity.Inthispaper,wesurveycurrentcomponent-basedsoftwaretechnologies,describetheiradvantagesanddisadvantages,anddiscussthefeaturestheyinherit.WealsoaddressQAissuesforcomponent-basedsoftware.Asamajorcontribution,weproposeaQAmodelforcomponent-basedsoftwaredevelopment,whichcoverscomponentrequirementanalysis,componentdevelopment,componentcertification,componentcustomization,andsystemarchitecturedesign,integration,testing,andmaintenance.WealsolookattheadvantagesoftheAnalyzerforReducingModuleOperationalRisk(RMOR)tool,andcollectsomewidelyadoptedJavametricsandtoolsuites.AsourfutureworkwewillupgradeARMORtowindowsplatformed,off-shelfcommercialcomponentsbased,Javasourcecodeorientedriskanalysisandevaluationtool.21.IntroductionModernsoftwaresystemsbecomemoreandmorelarge-scale,complexanduneasilycontrolled,resultinginhighdevelopmentcost,lowproductivity,unmanageablesoftwarequalityandhighrisktomovetonewtechnology[15].Consequently,thereisagrowingdemandofsearchingforanew,efficient,andcost-effectivesoftwaredevelopmentparadigm.Oneofthemostpromisingsolutionstodayisthecomponent-basedsoftwaredevelopmentapproach.Thisapproachisbasedontheideathatsoftwaresystemscanbedevelopedbyselectingappropriateoff-the-shelfcomponentsandthenassemblingthemwithawell-definedsoftwarearchitecture[12].Thisnewsoftwaredevelopmentapproachisverydifferentfromthetraditionalapproachinwhichsoftwaresystemscanonlybeimplementedfromscratch.Thesecommercialoff-the-shelf(COTS)componentscanbedevelopedbydifferentdevelopersusingdifferentlanguagesanddifferentplatforms.ThiscanbeshowninFigure1,whereCOTScomponentscanbecheckedoutfromacomponentrepository,andassembledintoatargetsoftwaresystem.Figure1.Component-basedsoftwaredevelopmentComponent-basedsoftwaredevelopment(CBSD)cansignificantlyreducedevelopmentcostandtime-to-market,andimprovemaintainability,reliabilityandoverallqualityofsoftwaresystems[13][14].Thisapproachhasraisedatremendousamountofinterestsbothintheresearchcommunityandinthesoftwareindustry.ThelifecycleandsoftwareengineeringmodelofCBSDismuchdifferentfromthatofthetraditionalones.ThisiswhattheComponent-BasedSoftwareEngineering(CBSE)isfocused.Uptonow,softwarecomponenttechnologiesareanemergingtechnology,whichisfar...ComponentnComponentrepositoryComponent1Component2selectSoftwaresystemassembleCommercialOff-the-shelf(COTS)components3frombeingmatured.Thereisnoexistingstandardsorguidelinesinthisnewarea,andwedonotevenhaveaunifieddefinitionofthekeyitem“component”.Ingeneral,however,acomponenthasthreemainfeatures:1)acomponentisanindependentandreplaceablepartofasystemthatfulfillsaclearfunction;2)acomponentworksinthecontextofawell-definedarchitecture;and3)acomponentcommunicateswithothercomponentsbyitsinterfaces[1].Toensurethatacomponent-basedsoftwaresystemcanrunproperlyandeffectively,thesystemarchitectureisthemostimportantfactor.Accordingtobothresearchcommunity[2]andindustrypractice[5],thesystemarchitectureofcomponent-basedsoftwaresystemsshouldbealayeredandmodulararchitecture.ThisarchitecturecanbeseeninFigure2.ThetopapplicationlayeristheapplicationsystemssupportingaFigure2.Systemarchitectureofcomponent-basedsoftwaresystemsbusiness.Thesecondlayerconsistsofcomponentsengagedinonlyaspecificbusinessorapplicationdomain,includingcomponentsusableinmorethanasingleapplication.Thethirdlayeriscross-businessmiddlewarecomponentsconsistingofcommonsoftwareandinterfacestootherestablishedentities.Finally,thelowestlayerofsystemsoftwarecomponentsincludesbasiccomponentsthatinterfacewiththeunderlyingoperatingsystemsandhardware.Currentcomponenttechnologieshavebeenusedtoimplementdifferentsoftwaresystems,suchasobject-orienteddistributedcomponentsoftware[23]andWeb-basedenterpriseapplication[13].Therearealsosomecommercialplayersinvolvedinthesoftwarecomponentrevolution,suchasBEA,Microsoft,IBMandSun[7].AnoutstandingexampleistheIBMSanFranciscoproject.Itprovidesareusabledistributedobjectinfrastructureandanabundantsetofapplicationcomponentstoapplicationdevelopers[5].SpecialbusinesscomponentsCommoncomponentsBasiccomponentsApp2App1App3ApplicationLayerComponentsLayer42.CurrentComponentTechnologiesSomeapproaches,suchasVisualBasicControls(VBX),ActiveXcontrols,classlibraries,andJavaBeans,makeitpossiblefortheirrelatedlanguages,suchasVisualBasic,C++,Java,andthesupportingtoolstoshareanddistributeapplicationpieces.Butalloftheseapproachesrelyoncertainunderlyingservicestoprovidethecommunicationandcoordinationnecessaryfortheapplication.Theinfrastructureofcomponents(sometimescalledacomponentmodel)actsas
本文标题:Abstract Component-Based Software Engineering Tech
链接地址:https://www.777doc.com/doc-4074736 .html