资源描述:
《Component Based Software Engineering》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、nternationalournalofSoftwareEngineeringandnowledgeEngineeringVol.0,o.0(0000)000{000fcWorldScienticublishingCompanyCET-BASEDSFTWAREEGEERGWHEHASSEBRGSoftwareEngineeringGroup,ComputerScienceDepartment,UniversityofldenburgBox2503,D-26111lden
2、burg,GermanyWithcomponent-basedsoftwareengineering,itisexpectedthatsoftwaresystemscanbecreatedandmaintainedatlowercostsandwithincreasedstabilitythroughreuseofapprovedcomponentsin
exiblesoftwarearchitectures.Wesurveythestate-of-the-artofthisapproach,herebydiscussingi
3、ssuessuchasreuse,architecture,variousformsofcomponentintegration,componentmiddleware,andimpactonthedevelopmentprocess.eywords:SoftwareComponents,SoftwareReuse,SoftwareArchitecture,Componentntegration.1.ntroductionAsoftwarecomponentcanbedenedasanexecutableunitofc
4、odethatprovidesasetofservicesthroughspeciedinterfaces:Asoftwarecomponentisaunitofcompositionwithcontractuallyspec-iedinterfacesandexplicitcontextdependenciesonly.Asoftwarecom-ponentcanbedeployedindependentlyandissubjecttothird-partycom-position."[1]Thekindof`unit
5、'isimportant:Asatechnicalgoal,minimalcouplingwiththeout-sideworldandmaximalcohesioninsidetheunitisdesirable.However,component-basedsoftwareengineeringhasimpactfrombothamanagerialandatechnicalperspective.1.1.anagerialGoalsforComponent-BasedSoftwareEngineeringThemana
6、gerialgoalsofcomponent-basedsoftwareengineeringcanbeidentiedasfollows:CostReduction:neimportantgoalofanydevelopmentprocessistobecost-eectiveindevelopingthesoftwaresystem.EaseofAssembly:Componentsneedtobedesignedinamannerthatfacilitatesthesubsequentassemblyprocess
7、whencomponentsareassembledtogethertodevelopsoftwaresystems.Reusability:Thisaddressesthecomponent'spotentialforreuseinmultipleap-plications.ncomponent-basedsoftwareengineering,reusabilityistheextenttowhichacomponentis(re)usedduringtheassemblyprocessindevelopingsoftw
8、aresystems.CustomizationandFlexibility:ncomponent-basedsoftwareengineering,whenasetofcomponentsaremadeavailabletotheapplicationdevelopers