Font Size: a A A

Research On Key Techniques Of Software Product Line

Posted on:2007-04-19Degree:DoctorType:Dissertation
Country:ChinaCandidate:T ZhangFull Text:PDF
GTID:1118360215486119Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Software Product Line (SPL) is a new multi-subjects research field, which is grow from Software Engineering. SPL has become the front edge of the research and practice of software engineering and software reuse. Product line architecture (PLA) specifies common reference architecture of all members of SPL, and is the most important of core asset and key for success development of SPL. But traditional techniques of software architecture can not meet challenges of PLA, because PLA is more complex, and contains more variability. Therefore the dissertation designs a formal architecture description language, and a series of architectural subjects, such as design, analysis, etc. are explored and studied systematically. Specifically, major contributions are as follows:Firstly, a formal architecture description language, vADL, has been designed for specifying product line architecture. vADL can describe variability on architecture level and component level, explicitly define variability constrains, and specify open and close variability-points. vADL possesses a behavior model and type systems, which are based on mobile process theoryπ-calculus. So variability of behavior also can be modeled. Run-time vairbility and Specify-time variability can be modeled at the same time. With better variability capability, vADL are more suitable for specify product line architecture.Secondly, the techniques of component composition in SPL context are provided. The concept of uniter is introduced to assemble heterogeneous port of components, and also to support complex port behavior assembly. The concept of variability assembility is provided, and some key techniques and rules are also provided for assembling variability. The reasoning algorithm of behavior compositional is provided, which is based onπcalculus theory, specially the algorithm handles variability issue in SPL context.Thirdly, the traditional component-based refining method has been extends by enhancing variability refinement. Some methods and ruls for refining variability are proposed. The methods and principles of architectural behavior refinement are also provided, which can ensure preserving the higher-level architectural behavior properties, such as: consistency, compatibility and variability, across refinement and generating lower-level architectures automatically and correctly.Fourthly, based on the theory ofπ-calculus and aiming at the characteristics and requirements of PLA, some static check methods to determine consistency of vADL specifications are developed. Some restrictional relations of variable component and analysis methods to detect correctness of variability are proposed. And some metrics are also defined for measuring similarity, variability, reusibility and complexity of PLA.Finally, an integrated development enviorment of PLA, which is named PLArchStudio, has been designed and developed. PLArchStudio is base J2EE computing platform, and with component techniques. PLArchStudio provides graphic interface for interactive design of PLA, and possesses some guides and tools to help assemble, refine and analyse PLA. Cooperate Design of PLA are supported, and concurrent conflicts can be detected in time.
Keywords/Search Tags:product line architecture, architecture description language, variability, component composition, architecture refinement, architecture analysis, architecture metrics
PDF Full Text Request
Related items