Abstract Component-Based Software Engineering Tech

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

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

1 / 24
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功