lnu.sePublikasjoner
Endre søk
Link to record
Permanent link

Direct link
BETA
Abbas, Nadeem
Publikasjoner (10 av 12) Visa alla publikasjoner
Abbas, N. (2018). Designing Self-Adaptive Software Systems with Reuse. (Doctoral dissertation). Växjö: Linnaeus University Press
Åpne denne publikasjonen i ny fane eller vindu >>Designing Self-Adaptive Software Systems with Reuse
2018 (engelsk)Doktoravhandling, med artikler (Annet vitenskapelig)
Abstract [en]

Modern software systems are increasingly more connected, pervasive, and dynamic, as such, they are subject to more runtime variations than legacy systems. Runtime variations affect system properties, such as performance and availability. The variations are difficult to anticipate and thus mitigate in the system design.

Self-adaptive software systems were proposed as a solution to monitor and adapt systems in response to runtime variations. Research has established a vast body of knowledge on engineering self-adaptive systems. However, there is a lack of systematic process support that leverages such engineering knowledge and provides for systematic reuse for self-adaptive systems development. 

This thesis proposes the Autonomic Software Product Lines (ASPL), which is a strategy for developing self-adaptive software systems with systematic reuse. The strategy exploits the separation of a managed and a managing subsystem and describes three steps that transform and integrate a domain-independent managing system platform into a domain-specific software product line for self-adaptive software systems.

Applying the ASPL strategy is however not straightforward as it involves challenges related to variability and uncertainty. We analyzed variability and uncertainty to understand their causes and effects. Based on the results, we developed the Autonomic Software Product Lines engineering (ASPLe) methodology, which provides process support for the ASPL strategy. The ASPLe has three processes, 1) ASPL Domain Engineering, 2) Specialization and 3) Integration. Each process maps to one of the steps in the ASPL strategy and defines roles, work-products, activities, and workflows for requirements, design, implementation, and testing. The focus of this thesis is on requirements and design.

We validate the ASPLe through demonstration and evaluation. We developed three demonstrator product lines using the ASPLe. We also conducted an extensive case study to evaluate key design activities in the ASPLe with experiments, questionnaires, and interviews. The results show a statistically significant increase in quality and reuse levels for self-adaptive software systems designed using the ASPLe compared to current engineering practices.

sted, utgiver, år, opplag, sider
Växjö: Linnaeus University Press, 2018. s. 56
Serie
Linnaeus University Dissertations ; 318/2018
Emneord
Variability, Uncertainty, Self-Adaptation, Software Reuse, Software Design, Methodology, Domain Engineering.
HSV kategori
Forskningsprogram
Data- och informationsvetenskap, Datavetenskap; Data- och informationsvetenskap; Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-74443 (URN)978-91-88761-51-4 (ISBN)978-91-88761-52-1 (ISBN)
Disputas
2018-04-19, 13:15 (engelsk)
Veileder
Tilgjengelig fra: 2018-05-22 Laget: 2018-05-21 Sist oppdatert: 2018-05-22bibliografisk kontrollert
Abbas, N. & Andersson, J. (2017). ASPLe: a methodology to develop self-adaptive software systems with reuse. Linnaeus University
Åpne denne publikasjonen i ny fane eller vindu >>ASPLe: a methodology to develop self-adaptive software systems with reuse
2017 (engelsk)Rapport (Annet vitenskapelig)
Abstract [en]

Advances in computing technologies are pushing software systems and their operating environments to become more dynamic and complex. The growing complexity of software systems coupled with uncertainties induced by runtime variations leads to challenges in software analysis and design. Self-Adaptive Software Systems (SASS) have been proposed as a solution to address design time complexity and uncertainty by adapting software systems at runtime. A vast body of knowledge on engineering self-adaptive software systems has been established. However, to the best of our knowledge, no or little work has considered systematic reuse of this knowledge. To that end, this study contributes an Autonomic Software Product Lines engineering (ASPLe) methodology. The ASPLe is based on a multi-product lines strategy which leverages systematic reuse through separation of application and adaptation logic. It provides developers with repeatable process support to design and develop self-adaptive software systems with reuse across several application domains. The methodology is composed of three core processes, and each process is organized for requirements, design, implementation, and testing activities. To exemplify and demonstrate the use of the ASPLe methodology, three application domains are used as running examples throughout the report.

sted, utgiver, år, opplag, sider
Linnaeus University, 2017. s. 116
Emneord
Self-adaptation, Reuse, Methodology, Variability, Uncertainty, Design
HSV kategori
Forskningsprogram
Data- och informationsvetenskap; Data- och informationsvetenskap, Datavetenskap; Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-71583 (URN)
Merknad

Technical report - LNU-CS-AdaptWise-TR-2017NA01

Tilgjengelig fra: 2018-03-17 Laget: 2018-03-17 Sist oppdatert: 2018-06-05bibliografisk kontrollert
Abbas, N., Andersson, J., Iftikhar, M. U. & Weyns, D. (2016). Rigorous architectural reasoning for self-adaptive software systems. In: Lisa O'Conner (Ed.), Proceedings: First Workshop on Qualitative Reasoning abut Software Architectures, QRASA 2016. Paper presented at 1st Workshop on Qualitative Reasoning about Software Architectures, QRASA 2016, 8 April 2016 (pp. 11-18). IEEE
Åpne denne publikasjonen i ny fane eller vindu >>Rigorous architectural reasoning for self-adaptive software systems
2016 (engelsk)Inngår i: Proceedings: First Workshop on Qualitative Reasoning abut Software Architectures, QRASA 2016 / [ed] Lisa O'Conner, IEEE, 2016, s. 11-18Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Designing a software architecture requires architectural reasoning, i.e., activities that translate requirements to an architecture solution. Architectural reasoning is particularly challenging in the design of product-lines of self-adaptive systems, which involve variability both at development time and runtime. In previous work we developed an extended Architectural Reasoning Framework (eARF) to address this challenge. However, evaluation of the eARF showed that the framework lacked support for rigorous reasoning, ensuring that the design complies to the requirements. In this paper, we introduce an analytical framework that enhances eARF with such support. The framework defines a set of artifacts and a series of activities. Artifacts include templates to specify domain quality attribute scenarios, concrete models, and properties. The activities support architects with transforming requirement scenarios to architecture models that comply to required properties. Our focus in this paper is on architectural reasoning support for a single product instance. We illustrate the benefits of the approach by applying it to an example client-server system, and outline challenges for future work. © 2016 IEEE.

sted, utgiver, år, opplag, sider
IEEE, 2016
Emneord
Architectural reasoning, Formal methods, Self-adaptive software systems
HSV kategori
Forskningsprogram
Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-56118 (URN)10.1109/QRASA.2016.9 (DOI)000386785900002 ()2-s2.0-84978284867 (Scopus ID)9781509021314 (ISBN)
Konferanse
1st Workshop on Qualitative Reasoning about Software Architectures, QRASA 2016, 8 April 2016
Tilgjengelig fra: 2016-09-08 Laget: 2016-08-31 Sist oppdatert: 2018-04-26bibliografisk kontrollert
Abbas, N. & Andersson, J. (2015). Architectural Reasoning Support for Product-Lines of Self-adaptive Software Systems: A Case Study. In: Danny Weyns, Raffaela Mirandola, Ivica Crnkovic (Ed.), Software Architecture: 9th European Conference, ECSA 2015, Dubrovnik/Cavtat, Croatia, September 7-11, 201: . Paper presented at 9th European Conference on Software Architecture (ECSA), SEP 07-11, 2015, Cavtat, CROATIA (pp. 20-36). Springer
Åpne denne publikasjonen i ny fane eller vindu >>Architectural Reasoning Support for Product-Lines of Self-adaptive Software Systems: A Case Study
2015 (engelsk)Inngår i: Software Architecture: 9th European Conference, ECSA 2015, Dubrovnik/Cavtat, Croatia, September 7-11, 201 / [ed] Danny Weyns, Raffaela Mirandola, Ivica Crnkovic, Springer, 2015, s. 20-36Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Software architecture serves as a foundation for the design and development of software systems. Designing an architecture requires extensive analysis and reasoning. The study presented herein focuses on the architectural analysis and reasoning in support of engineering self-adaptive software systems with systematic reuse. Designing self-adaptive software systems with systematic reuse introduces variability along three dimensions; adding more complexity to the architectural analysis and reasoning process. To this end, the study presents an extended Architectural Reasoning Framework with dedicated reasoning support for self-adaptive systems and reuse. To evaluate the proposed framework, we conducted an initial feasibility case study, which concludes that the proposed framework assists the domain architects to increase reusability, reduce fault density, and eliminate differences in skills and experiences among architects, which were our research goals and are decisive factors for a system's overall quality.

sted, utgiver, år, opplag, sider
Springer, 2015
Serie
Lecture Notes in Computer Science, ISSN 0302-9743 ; 9278
HSV kategori
Forskningsprogram
Data- och informationsvetenskap
Identifikatorer
urn:nbn:se:lnu:diva-48821 (URN)10.1007/978-3-319-23727-5_2 (DOI)000365861700002 ()2-s2.0-84975686953 (Scopus ID)978-3-319-23727-5 (ISBN)978-3-319-23726-8 (ISBN)
Konferanse
9th European Conference on Software Architecture (ECSA), SEP 07-11, 2015, Cavtat, CROATIA
Forskningsfinansiär
VINNOVA
Tilgjengelig fra: 2016-01-20 Laget: 2016-01-15 Sist oppdatert: 2018-10-22bibliografisk kontrollert
Abbas, N. & Andersson, J. (2015). Harnessing Variability in Product-lines of Self-adaptive Software Systems. In: Proceedings of the 19th International Conference on Software Product Line: SPLC '15. Paper presented at 19th International Conference on Software Product Line, SPLC ’15 (pp. 191-200). ACM Press
Åpne denne publikasjonen i ny fane eller vindu >>Harnessing Variability in Product-lines of Self-adaptive Software Systems
2015 (engelsk)Inngår i: Proceedings of the 19th International Conference on Software Product Line: SPLC '15, ACM Press, 2015, s. 191-200Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

This work studies systematic reuse in the context of self-adaptive software systems. In our work, we realized that managing variability for such platforms is different compared to traditional platforms, primarily due to the run-time variability and system uncertainties. Motivated by the fact that recent trends show that self-adaptation will be used more often in future system generation and that software reuse state-of-practice or research do not provide sufficient support, we have investigated the problems and possibly resolutions in this context. We have analyzed variability for these systems, using a systematic reuse prism, and identified a research gap in variability management. The analysis divides variability handling into four activities: (1) identify variability, (2) constrain variability, (3) implement variability, and (4) manage variability. Based on the findings we envision a reuse framework for the specific domain and present an example framework that addresses some of the identified challenges. We argue that it provides basic support for engineering self-adaptive software systems with systematic reuse. We discuss some important avenues of research for achieving the vision.

sted, utgiver, år, opplag, sider
ACM Press, 2015
Emneord
self-adaptive software systems, software reuse, variability analysis
HSV kategori
Forskningsprogram
Data- och informationsvetenskap, Datavetenskap; Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-51780 (URN)10.1145/2791060.2791089 (DOI)2-s2.0-84982794653 (Scopus ID)978-1-4503-3613-0 (ISBN)
Konferanse
19th International Conference on Software Product Line, SPLC ’15
Forskningsfinansiär
VINNOVA
Tilgjengelig fra: 2016-03-31 Laget: 2016-03-31 Sist oppdatert: 2018-05-21bibliografisk kontrollert
Abbas, N. & Andersson, J. (2013). Architectural reasoning for dynamic software product lines. In: Proceedings of the 17th International Software Product Line Conference co-located workshops: . Paper presented at 17th International Software Product Line Conference (pp. 117-124). ACM Press
Åpne denne publikasjonen i ny fane eller vindu >>Architectural reasoning for dynamic software product lines
2013 (engelsk)Inngår i: Proceedings of the 17th International Software Product Line Conference co-located workshops, ACM Press, 2013, s. 117-124Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Software quality is critical in today's software systems. A challenge is the trade-off situation architects face in the design process. Designers often have two or more alternatives, which must be compared and put into context before a decision is made. The challenge becomes even more complex for dynamic software product lines, where domain designers have to take runtime variations into consideration as well. To address the problem we propose extensions to an architectural reasoning framework with constructs/artifacts to define and model a domain's scope and dynamic variability. The extended reasoning framework encapsulates knowledge to understand and reason about domain quality behavior and self-adaptation as a primary variability mechanism. The framework is demonstrated for a self-configuration property, self-upgradability on an educational product-line.

sted, utgiver, år, opplag, sider
ACM Press, 2013
Emneord
adaptation, architectural reasoning, software product lines, variability
HSV kategori
Identifikatorer
urn:nbn:se:lnu:diva-28183 (URN)10.1145/2499777.2500718 (DOI)2-s2.0-84890458533 (Scopus ID)978-1-4503-2325-3 (ISBN)
Konferanse
17th International Software Product Line Conference
Tilgjengelig fra: 2013-08-15 Laget: 2013-08-15 Sist oppdatert: 2018-04-26bibliografisk kontrollert
Abbas, N., Andersson, J. & Weyns, D. (2012). Modeling Variability in Product Lines Using Domain Quality Attribute Scenarios. In: Proceedings of the WICSA/ECSA 2012 Companion Volume: . Paper presented at 2nd International Workshop on Variability in Software Architecture at the Joint 10th Working IEEE / IFIP Conference on Software Architecture (WICSA) & 6th European Conference on Software Architecture (ECSA) (pp. 135-142). ACM Press
Åpne denne publikasjonen i ny fane eller vindu >>Modeling Variability in Product Lines Using Domain Quality Attribute Scenarios
2012 (engelsk)Inngår i: Proceedings of the WICSA/ECSA 2012 Companion Volume, ACM Press, 2012, s. 135-142Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

The concept of variability is fundamental in software product lines and a successful implementation of a product line largely depends on how well domain requirements and their variability are specified, managed, and realized. While developing an educational software product line, we identified a lack of support to specify variability in quality concerns. To address this problem we propose an approach to model variability in quality concerns, which is an extension of quality attribute scenarios. In particular, we propose domain quality attribute scenarios, which extend standard quality attribute scenarios with additional information to support specification of variability and deriving product specific scenarios. We demonstrate the approach with scenarios for robustness and upgradability requirements in the educational software product line.

sted, utgiver, år, opplag, sider
ACM Press, 2012
Emneord
quality attributes, scenarios, software product lines, variability
HSV kategori
Forskningsprogram
Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-25829 (URN)10.1145/2361999.2362028 (DOI)2-s2.0-84866882711 (Scopus ID)978-1-4503-1568-5 (ISBN)
Konferanse
2nd International Workshop on Variability in Software Architecture at the Joint 10th Working IEEE / IFIP Conference on Software Architecture (WICSA) & 6th European Conference on Software Architecture (ECSA)
Tilgjengelig fra: 2013-05-24 Laget: 2013-05-24 Sist oppdatert: 2018-04-26bibliografisk kontrollert
Abbas, N., Andersson, J. & Weyns, D. (2011). Knowledge evolution in autonomic software product lines. In: SPLC '11 Proceedings of the 15th International Software Product Line Conference, Volume 2: . Paper presented at 15th International Software Product Line Conference (SPLC '11) (pp. 36:1-36:8). New York, NY, USA: ACM Press
Åpne denne publikasjonen i ny fane eller vindu >>Knowledge evolution in autonomic software product lines
2011 (engelsk)Inngår i: SPLC '11 Proceedings of the 15th International Software Product Line Conference, Volume 2, New York, NY, USA: ACM Press, 2011, s. 36:1-36:8Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

We describe ongoing work in knowledge evolution management for autonomic software product lines. We explore how an autonomic product line may benefit from new knowledge originating from different source activities and artifacts at run time. The motivation for sharing run-time knowledge is that products may self-optimize at run time and thus improve quality faster compared to traditional software product line evolution. We propose two mechanisms that support knowledge evolution in product lines: online learning and knowledge sharing. We describe two basic scenarios for runtime knowledge evolution that involves these mechanisms. We evaluate online learning and knowledge sharing in a small product line setting that shows promising results.

sted, utgiver, år, opplag, sider
New York, NY, USA: ACM Press, 2011
Serie
SPLC '11
Emneord
knowledge sharing, online learning, product-line management, self-adaptation, software
HSV kategori
Forskningsprogram
Datavetenskap, Programvaruteknik; Data- och informationsvetenskap, Datavetenskap
Identifikatorer
urn:nbn:se:lnu:diva-16717 (URN)10.1145/2019136.2019177 (DOI)2-s2.0-80052652982 (Scopus ID)978-1-4503-0789-5 (ISBN)
Konferanse
15th International Software Product Line Conference (SPLC '11)
Tilgjengelig fra: 2012-01-13 Laget: 2012-01-11 Sist oppdatert: 2018-04-26bibliografisk kontrollert
Abbas, N. (2011). Towards autonomic software product lines. In: SPLC '11 Proceedings of the 15th International Software Product Line Conference, Volume 2: . Paper presented at 15th International Software Product Line Conference (SPLC '11) (pp. 44:1-44:8). ACM Press
Åpne denne publikasjonen i ny fane eller vindu >>Towards autonomic software product lines
2011 (engelsk)Inngår i: SPLC '11 Proceedings of the 15th International Software Product Line Conference, Volume 2, ACM Press, 2011, s. 44:1-44:8Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

We envision an Autonomic Software Product Line (ASPL). The ASPL is a dynamic software product line that supports self adaptable products. We plan to use reflective architecture to model and develop ASPL. To evaluate the approach, we have implemented three autonomic product lines which show promising results. The ASPL approach is at initial stages, and require additional work. We plan to exploit online learning to realize more dynamic software product lines to cope with the problem of product line evolution. We propose on-line knowledge sharing among products in a product line to achieve continuous improvement of quality in product line products.

sted, utgiver, år, opplag, sider
ACM Press, 2011
Serie
SPLC ’11
Emneord
knowledge, on-line learning, self-adaptation
HSV kategori
Forskningsprogram
Data- och informationsvetenskap, Datavetenskap; Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-16718 (URN)10.1145/2019136.2019187 (DOI)2-s2.0-80052687379 (Scopus ID)978-1-4503-0789-5 (ISBN)
Konferanse
15th International Software Product Line Conference (SPLC '11)
Tilgjengelig fra: 2012-01-13 Laget: 2012-01-11 Sist oppdatert: 2018-01-12bibliografisk kontrollert
Abbas, N., Andersson, J. & Löwe, W. (2011). Towards Autonomic Software Product Lines (ASPL) - A Technical Report.
Åpne denne publikasjonen i ny fane eller vindu >>Towards Autonomic Software Product Lines (ASPL) - A Technical Report
2011 (engelsk)Rapport (Annet vitenskapelig)
Abstract [en]

This report describes a work in progress to develop Autonomic Software Product Lines (ASPL). The ASPL is a dynamic software product line approach with a novel variability handling mechanism that enables traditional software product lines to adapt themselves at runtime in response to changes in their context, requirements and business goals. The ASPL variability mechanism is composed of three key activities: 1) context-profiling, 2) context-aware composition, and 3) online learning. Context-profiling is an offline activity that prepares a knowledge base for context-aware composition. The context-aware composition uses the knowledge base to derive a new product or adapts an existing product based on a product line's context attributes and goals. The online learning optimizes the knowledge base to remove errors and suboptimal information and to incorporate new knowledge. The three activities together form a simple yet powerful variability handling mechanism that learns and adapts a system at runtime in response to changes in system context and goals. We evaluated the ASPL variability mechanism on three small-scale software product lines and got promising results. The ASPL approach is, however, is yet at an initial stage and require improved development support with more rigorous evaluation. 

Publisher
s. 20
Emneord
Software Variability, Self-adaptive Software Systems, Software Product Lines, Context-Aware Composition, Online Learning, Autonomic Software Product Lines
HSV kategori
Forskningsprogram
Data- och informationsvetenskap, Datavetenskap; Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-71492 (URN)
Tilgjengelig fra: 2018-03-12 Laget: 2018-03-12 Sist oppdatert: 2018-04-26bibliografisk kontrollert
Organisasjoner