5 research outputs found

    Representing Variability in Software Architecture: A Systematic Literature Review

    Get PDF
    Variability in software - intensive systems is the ability of a software artefact (e.g., a system, subsystem, or component) to be extended, customised or configured for deployment in a specific context. Software Architecture is a high - level description of a software - intensive system that abstracts the system implementation details allowing the architect to view the system as a whole. Although variability in software architecture is recognised as a challenge in multiple domains, there has been no formal consensus on how variability should be captured or represented. The objective of this research was to provide a snapshot of the state - of - the - art on representing variability in software architecture while assessing the nature of the different approaches. To achieve this objective, a Systematic Literature Review (SLR) was conducted covering literature produced from January 1991 until June 2016. Then, grounded theory was used to conduct the analysis and draw conclusions from data, mini mising threats to validity. In this paper , we report on the findings from the study

    The ALI Architecture Description Language

    Get PDF
    Architecture Description Languages (ADLs) have emerged over the past two decades as a means to abstract details of large-scale systems in order to enable better intellectual control over the complete systems. Recently, there has been an explosion in the number of ADLs created in the research community. However, industrial adoption of these ADLs has been rather limited. This has been attributed to various reasons, including the lack of support of some ADLs for: variability management, requirements traceability, architectural artefact reusability and multiple architectural views. To overcome these limitations, this paper is a report on ALI, an ADL that was designed to complement existing work by adding mechanisms to address the aforementioned limitations. The ALI design principles, concepts, notations and formal semantics are presented in this paper. The notation is illustrated using two distinct case studies, one from the information systems domain " an Asset Management System (AMS); and another from the embedded systems domain - a Wheel Brake System (WBS)

    Representing Variability in Software Architecture

    Get PDF
    Software Architecture is a high level description of a software intensive system that enables architects to have a better intellectual control over the complete system. It is also used as a communication vehicle among the various system stakeholders. Variability in software-intensive systems is the ability of a software artefact (e.g., a system, subsystem, or component) to be extended, customised, or configured for deployment in a specific context. Although variability in software architecture is recognised as a challenge in multiple domains, there has been no formal consensus on how variability should be captured or represented. In this research, we addressed the problem of representing variability in software architecture through a three phase approach. First, we examined existing literature using the Systematic Literature Review (SLR) methodology, which helped us identify the gaps and challenges within the current body of knowledge. Equipped with the findings from the SLR, a set of design principles have been formulated that are used to introduce variability management capabilities to an existing Architecture Description Language (ADL). The chosen ADL was developed within our research group (ALI) and to which we have had complete access. Finally, we evaluated the new version of the ADL produced using two distinct case studies: one from the Information Systems domain, an Asset Management System (AMS); and another from the embedded systems domain, a Wheel Brake System (WBS). This thesis presents the main findings from the three phases of the research work, including a comprehensive study of the state-of-the-art; the complete specification of an ADL that is focused on managing variability; and the lessons learnt from the evaluation work of two distinct real-life case studies
    corecore