Font Size: a A A

Aspect Oriented Based Product Derivation Method In Software Product Line And Its Supporting Tool

Posted on:2014-02-27Degree:MasterType:Thesis
Country:ChinaCandidate:B LiFull Text:PDF
GTID:2248330395497736Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
Software Product Line has become a popular technology in today’s softwaredevelopment due to its efficient reuse. How to use the core assets to derivate productsefficiently has become an important issue in the software product line engineering. However,there are many repetitive modifications have to be made to core assets in the derivation workof different products. These modifications are the result of variability binding and they areusually time-consuming and fallible. Based on the idea to combine aspect orientedprogramming with model driven development technology during the development of softwareproduct line engineering, in this paper an orthogonal variability model based productderivation method is presented to automate the derivation work of families’ member product.In the typical product derivation phase, firstly we should identify the custom requirementof individual product. Then the modifications should be made to core assets to fit the customrequirement and the related custom modules should be developed. Finally after theorganization of the modified core modules and custom modules of the individual product,compiler tool should be used to compile these source codes to get the target product software.In this method, the requirement identification process of individual products is treated asa decision making process about variability. Different individual products can be identified bymaking decisions on the variability elements of the software product line. Variability elementswill be organized as a chain in specific order. Every variability element should be consideredin order that whether it will be included in the product’s feature set or not. After makingdecision of all the variability elements, we get the custom requirement of individual product.In order to guarantee the consistency of the variability of software product line during thedevelopment process and manage variability in an effective way, Orthogonal VariabilityModel is adopted as the variability management tool in this paper.The core assets, especially reference architecture, derivate from domain engineering willbe modified in the derivation process of individual products. These modifications arerepetitive and they are always related to many core assets, such as modules or source files. Inthis paper we treat the modifications to core assets as a cross-cut concern which can behandled by aspect oriented programming technology. In other words, AOP technology and itsweaver tool are adopted as a variability implement and binding tool in this method.In order to model the modifications and corresponding AOP elements better, an aspectoriented based special model: OVM_AO model is proposed to describe the referencearchitecture. In this model the core/custom assets and their relationship with variabilityelements are modeled. The cross-cut modifications from variability to core modules are modeled in this model as well. To simplify the implement work from OVM_AO model to theelements of AOP and avoid faults, we give a meta-model of the OVM_AO model and thetranslation rules from this model to AOP elements based on the idea of Model DrivenDevelopment.In order to improve the practicality of the method, a supporting product derivation tool isimplemented. The supporting tool is consist of model manage subsystem and productderivation subsystem. In the model manage subsystem, the asset management function isprovided and we give the editor tools to build the OVM and OVM_AO models. Then theXWeaver based simple model translation rules are implemented. Based on the process of themethod described above, the product derivation subsystem is implemented to automate thework of building the individual product with external tools such as compiler and AOP tools.In the end a case of simulative music player product line is introduced to explain thepracticality of our method. In this case we give the development process of the music playerproduct line and the OVM, OVM_AO and AOP elements are chosen to list. Then the musicplayer product line is simulated implemented on development board.
Keywords/Search Tags:Software Product Line, Aspect Oriented Programming, Orthogonal Variability Model, Model Driven Development, Product Derivation
PDF Full Text Request
Related items