This thesis addresses designing Product Lines (PLs) of Graphical Editors (GEs). It provides a feasible top-down design approach specialized on such Graphical Editor Product Lines (GEPLs), which can be configured dynamically. Furthermore, the end product's features are implemented modular, which has numerous positive effects on the development and maintenance processes for the family. These effects reach from decreasing the complexity of big PLs, allowing to delegate split up development tasks onto multiple isolated working teams, easier debugging and flexibility to extend or specialize a family of products as well as being able to use functionalities developed by third-party vendors. While design methods avoiding monolithic architectures and implementations exist for many PL domains, there are none known for GEPLs. Yet, the domain of those offers many challenges as GEPLs are actually comprised of Software Product Lines (SPLs) and Language Product Lines (LPLs), which is a combination untackled by any modular design approach known to me. Additionally, products in the domain require to implement multiple distinct and specific concerns, leading to artifacts which differ significantly but have to be located and managed in a single component. Overall, this justifies the need for specialized design approaches for the GEPL domain. In regard to this need, this thesis gives an overview of the existing landscape of approaches to design PLs, analyzing solutions offered by other researchers. Furthermore, a requirement analysis for the GEPL domain is conducted. Its results are the foundation for the presentation of a top-down design approach for dynamically configurable GEPLs, which are implemented feature modularly. Finally, a case study documenting the development of such a family of GEs is providing a proof of its feasibility.:1 Introduction
1.1 Motivation
1.2 Problem Definition
1.3 Outline
1.4 Terminology
2 Survey on Software and Language Product Line Design
2.1 Classification Scheme
2.1.1 Domain
2.1.2 Configuration
2.1.3 Design Method
2.1.4 Modularity
2.2 Overview
2.3 Discussion
2.3.1 Evaluation
2.3.2 Results
3 Requirements of Graphical Editor Product Lines 32
3.1 Functional Requirements
3.1.1 Edit Concerns
3.1.2 Language Family Concerns
3.2 Non-Functional Requirements
3.2.1 User Requirements
3.2.2 Development Requirements
4 Design of Graphical Editor Product Lines
4.1 Characteristics
4.2 Design Approach
4.2.1 Edit Concerns
4.2.2 Language Family Concerns
4.3 Discussion
4.3.1 Techniques
4.3.2 Evaluation
5 Case study: Modularization of a Family of Graphical Editors
5.1 Background
5.1.1 Compartment Role Object Model
5.1.2 Full-fledged Role Modeling Editor
5.1.3 Reusable Technology
5.2 Realization
5.2.1 Edit Concerns
5.2.2 Language Family Concerns
5.3 Discussion
5.3.1 Requirements
5.3.2 Limitations of the Modularization
5.3.3 Results
6 Conclusion
6.1 Summary
6.1.1 Desired Properties
6.1.2 Feasibility
6.2 Contributions
6.3 Future Work
6.3.1 Bottom-Up Design Method
6.3.2 Requirements
6.3.3 Modularization
Identifer | oai:union.ndltd.org:DRESDEN/oai:qucosa:de:qucosa:32712 |
Date | 16 January 2019 |
Creators | Kassin, Kevin Ivo |
Contributors | Kühn, Thomas, Aßmann, Uwe, Technische Universität Dresden |
Source Sets | Hochschulschriftenserver (HSSS) der SLUB Dresden |
Language | English |
Detected Language | English |
Type | info:eu-repo/semantics/acceptedVersion, doc-type:masterThesis, info:eu-repo/semantics/masterThesis, doc-type:Text |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0023 seconds