Service-Oriented Architecture (SOA) is a business-driven architecture that supports
business strategies and goals. In enterprise systems, SOA offers flexibility for building IT
solutions that can respond rapidly to changing business requirements and technology through
service-based development. While promoting service reuse, SOA does not offer a systematic
method to follow in order to implement those changes. Variability management requires a good
understanding of the business domain and a careful design of the application artifacts to cater
to various business domains and changing requirements, which brings the need for developing
mechanisms and tools to facilitate variability management in SOA.
Many approaches and frameworks have been proposed to realize variability in SOA by
applying the concept of Software Product Lines (SPL). However, many of them are limited
to a specific technology and focus on managing the variability from a single view, such as
the business process or service implementation views. They lack a systematic methodology
to design variability in a way that suits the heterogeneity of SOA systems. In this thesis, we
propose to address this problem and we aim to provide an integrated service-oriented SPL
environment that supports architecture-based development with multiple views. To achieve
this goal, we first surveyed the approaches and tools that have been proposed by the research
community and industry to manage the variability of service-based systems using SPL concepts.
Second, we developed the Service-Oriented Software Product Lines variability management
tool (SoaSPL) that facilitates the design, modeling, and automatic derivation for a family of
SOA-based applications using Model-Driven Engineering (MDE). Last, we evaluated the SoaSPL
tool against the available SPL tools Pure::Variants and FeatureMapper. The evaluation showed
the effectiveness of applying the multiple-view approach when addressing variability in SOA
in terms of: 1) analyzing the amount of obtained reuse, 2) preserving the consistency between
system variants, 3) achieving better traceability between software artifacts, and 4) supporting
product evolution over time and space.
Date of Award | 2014 |
---|
Original language | American English |
---|
Supervisor | Mohammad AbuMatar (Supervisor) |
---|
- Service-Oriented Architecture
- Software Product Line
- Variability Management
- Model-Driven Engineering
- Multiple-View architecture.
Framework and tooling for Variability management in service based systems using the software
Alzahmi, S. M. (Author). 2014
Student thesis: Master's Thesis