Font Size: a A A

Research On Aspect-oriented Software Modeling And Application In Software Development

Posted on:2012-06-29Degree:MasterType:Thesis
Country:ChinaCandidate:F WangFull Text:PDF
GTID:2248330392959842Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
With the rapid development of software industry, increasing software complexity,changing user requirements, this gives a great deal of software maintenance workload. Goodsoftware development methods can be improves the software development efficiency andquality, products to produce has higher reusability and maintainability, thereby reducing thetotal cost of software.Object-oriented development methods (OOSD) improve the scalability andmaintainability of software. It uses technologies such as design pattern, developmentframework or reserved interface to reuse code, expand function and improve performancewhich have existed in original system. But OOSD in perfective maintenance of the softwaremodifies the original program structure or modifies the code, or creates new codes which arecoupled highly with the original, thereby reducing the software modularity andunderstandability, increasing the latter workload of software maintenance.The emergence of aspect-oriented programming (AOP) solved the mixed and scatteredcode when the OOSD dealing with performance improvement and non-functionalrequirements. It separates crosscutting concerns and encapsulates them with the Aspect, thusimproves the flexibility and scalability of the software, reduces the workload of the softwareextensions. AOP also prompted the aspect-oriented software development methods (AOSD)formation, and enabled stakeholder concerns separate and assemble in the all stages of thesoftware life cycle. However, there merely is aspect-oriented modeling of non-functionalstakeholder concerns, no non-core business functions of the system functional expansionmodeling.To solve the above problems, this paper combine AOP ideas with AOSD techniques,separating the non-core business functions concerns of system expansion and the system corebusiness functions concerns by using use-case modeling techniques, and proposes the conceptof the strengthening use-cases to the system functional extension, and gives its modelrepresentation; uses the use-case slicing technique to separate the non-core business functionsconcerns, then to analysis and design it; comes up with a aspect of the model representation,and uses AOP to implement it; so follow the software engineering approach to non-destructiveexpand system, without modifying the system source code, to ensure system integrity, andeffectively reduce the original various modules and non-core business functions coupling.Combined with the ArgoUML which is the open source modeling tool to achieve a simplefunction expansion, it reduces duplication of code, which fully demonstrates the feasibilityand practical of aspect-oriented modeling methods.According to the above research results, analyze and expand the function of the ArgoUML, extract its information managementfunction as a non-core business functions expansion of the system, including requiredmanagement, design management and management of model elements, thus allowingdevelopers to manage some of related information such as version, author, while in thesoftware modeling; and using pure XML database to save for extended information, readingand writing XML document database with DOM4J,which will help the model elements andmodeling tools information conversion and uniform treatment. The results show that themethod based on AOSD for non-core functions existed system extension, which is highefficiency, lower workload, understandable easily, and has minimal impact on the existedsystem, thus, it is an effective new method in software maintenance.
Keywords/Search Tags:AOP, AOSD, ArgoUML, function expansion
PDF Full Text Request
Related items