Modeling and analyzing software ecosystems / Bahar Schwichtenberg. Paderborn, 2022
Inhalt
- Table of contents
- List of figures
- List of tables
- 1 Introduction
- 1.1 Software Ecosystems
- 1.2 Problem Statement
- 1.3 Overview of the Solution
- 1.4 Publication Overview
- 1.5 Structure of this Thesis
- 2 Foundations
- 2.1 Enterprise Architecture
- 2.2 Software Ecosystems
- 2.3 Architectural Knowledge Management
- 2.3.1 Architectural Design Decisions
- 2.3.2 Pattern-Centric Architectural Knowledge
- 2.3.3 Architecture Framework
- 2.4 Software Product Line Engineering
- 2.5 Model-Driven Engineering
- 3 Requirements and Related Work
- 4 Overall Research Approach of Developing the SecoArc Architecture Framework
- 5 Architectural Commonalities of Software Ecosystems
- 5.1 Procedure of a Systematic Literature Review
- 5.2 Extraction Procedure using Grounded Theory
- 5.3 Primary Features of Software Ecosystems
- 5.4 Primary Feature Interrelations
- 5.5 Summary and Scientific Contributions
- 6 Architectural Variabilities of Software Ecosystems
- 6.1 A Variability Model for a Software Ecosystem Product Line
- 6.1.1 Taxonomy Development Approach
- 6.1.2 Variability Model: Variation Points and Variants
- 6.1.3 Variability Dependency Constraints
- 6.1.4 Relations to Ecosystem Architecture
- 6.1.5 Relations to Architectural Commonalities
- 6.2 Service Provision Scenarios in Software Ecosystems
- 6.3 Summary and Scientific Contributions
- 7 Architectural Patterns of Software Ecosystems
- 7.1 A Classification of Architectural Design Decisions
- 7.1.1 Investigation of 111 Existing Software Ecosystems
- 7.1.2 Classes of Recurrent Architectural Design Decisions
- 7.2 Classes of Recurrent Contextual Factors
- 7.3 Architectural Patterns of Software Ecosystems
- 7.3.1 Resale Software Ecosystem (RSE)
- 7.3.2 Partner-Based Software Ecosystem (PSE)
- 7.3.3 OSS-Based Software Ecosystem (OSE)
- 7.4 Pattern Relations
- 7.5 Analysis of Results
- 7.6 Summary and Scientific Contributions
- 8 A Modeling Framework to Design and Analyze Ecosystem Architecture Models
- 8.1 Language Engineering Approach
- 8.2 Illustrative Example
- 8.3 Rule-Based Pattern Matching
- 8.4 A Design Process
- 8.5 Ecosystem Modeling
- 8.6 Architectural Analysis Technique
- 8.7 Tool Support
- 8.8 Summary and Scientific Contributions
- 9 Validation
- 9.1 Validation Overview
- 9.2 On-The-Fly Computing
- 9.2.1 Validation Questions
- 9.2.2 Study 1: On-The-Fly Computing Proof-of-Concept
- 9.2.3 Validation Questions Revisited
- 9.3 Examination of Existing Ecosystems
- 9.3.1 Validation Questions
- 9.3.2 Study 2: Comparative Analysis of Salesforce, Apple, Amazon AWS, Eclipse, and Amazon Alexa Ecosystems
- 9.3.3 Validation Questions Revisited
- 9.4 Threats to Validity
- 9.5 Discussion and Summary
- 10 Conclusion and Future Work
- References
- Appendix A Interview Questionnaire
- Appendix B Quality Attribute Workshop Scenarios
- Appendix C List of Existing Ecosystems
- Appendix D General Guide To SecoArc Visual Notation
