Font Size: a A A

Study On Methods For Description Of Software Architecture And Software Evolution Based On Algebra Theory

Posted on:2008-10-20Degree:DoctorType:Dissertation
Country:ChinaCandidate:Y S ZhangFull Text:PDF
GTID:1118360215998934Subject:Control theory and control engineering
Abstract/Summary:PDF Full Text Request
Recent years, researchers in software engineering have proposed varioustechnologies of requirement analyses and software modeling. However, thereremain a big gap between software requirement and design. It is difficult totransfer requirements to design. Therefore, the concept of softwarearchitecture is proposed with a view to building a bridge between softwarerequirement and design.Currently the main description methods of software architecture inindustry are diagrams with links and texts and in academics are formalizedlanguages, but the description capability of these languages concerningactivity, interaction and evolution of software architecture are deficientobviously.This paper starting from the significance of this project and the basicconcept of software architecture, as well as the research and application statusof software architecture, points out the disadvantage of the investigation andapplication of software architecture currently. This paper discusses thedescription of software architecture and the method of software evolution onthe basis of algebra theory. The relations of component structure areintroduced for description of software architecture, studies Layered SoftwareArchitecture (LSA), Orthogonal Software Architecture (OSA) and softwareevolution. The elements of architecture and architecture itself are described byeXtensible Markup Language (XML), and the process of algebra-basedsoftware evolution can be realized by the application of XML.In the studies of component oprations and their relations, this paper firstabstracts the attributes and performance of components by using algebratheory, introduces the concepts of sequence structure, selection structure andloop structure, and these structures are abstracted to the correspondingcomponent operations, investigates properties and relations among them,which proves that the three operations can describe any architecture ofsoftware system.In the development of software based on components, software revolutioncan be concluded to adding components, delete components, and modifycomponents and their relations. This paper studies software evolution theories on the basis of software architecture through the changes of relative operationsamong components of software architecture, and attributes software evolutionto the changes of component operations.Layered Software Architecture is regarded as a description method ofbusiness system, the layered architecture is widely applied to the area ofcomputer software. However, currently the descriptions of LSA are noneformalization and some researchers allege that it is hard to find an appropriateand correct method to abstract LSA. This paper discusses the basic ideal andframework of LSA, presents an abstract model of LSA, the abstract concept oflayer. Then it studies uppermost common sub-component operation andlowermost common super-component operation of layer, obtains that layer andthese two operations form changeable semigroups respectively.Orthogonal Software Architecture has many advantages, such as explicitstructure, better understandability and adaptability, expansibility andportability. This paper abstracts the properties and behavior characteristics ofcomponents with algebra theory, introduces the concept and framework ofOSA and proposes a core model of OSA, which includes component,connector, port, role and thread elements. Moreover, it presents aformalization model of OSA based on the core model and obtain algorithm ofnone OSA to OSA.Based on the theories of component operations, this paper designs themethod of XML for Software Architecture Based on Algebra Theory(XSABAT), which describes the software architecture and the elements ofarchitecture and the component operation expressions. XSABAT can describethe process of software evolution for the changes of component operationexpressions in the process of software evolution. And studies algorithmswhich transform component operation expressions into a document of XML,and these algorithms can validate effectively the correctness of componentoperation expressions, and can separate effectively the element from thecomponent operation expressions used to create the document of XMLcorresponding with it. A prototype system of the algorithms is designed anddeveloped with Delphi 7.0 under Windows XP. Such, it is possible to make theacademic researches of software evolution based on component operationsinto actual application.
Keywords/Search Tags:software architecture, component, software evolution
PDF Full Text Request
Related items