lnu.sePublications
Change search
Link to record
Permanent link

Direct link
BETA
Iftikhar, Muhammad UsmanORCID iD iconorcid.org/0000-0002-1343-5834
Publications (10 of 19) Show all publications
Weyns, D., Iftikhar, M. U., Hughes, D. & Matthys, N. (2018). Applying architecture-based adaptation to automate the management of internet-of-things. In: Carlos E. Cuesta, David Garlan Jennifer Pérez (Ed.), 12th European Conference on Software Architecture, ECSA 2018: . Paper presented at 12th European Conference on Software Architecture, ECSA 2018, Madrid, Spain, September 24–28, 2018 (pp. 449-467). Springer
Open this publication in new window or tab >>Applying architecture-based adaptation to automate the management of internet-of-things
2018 (English)In: 12th European Conference on Software Architecture, ECSA 2018 / [ed] Carlos E. Cuesta, David Garlan Jennifer Pérez, Springer, 2018, p. 449-467Conference paper, Published paper (Refereed)
Abstract [en]

Architecture-based adaptation equips a software-intensive system with a feedback loop that enables the system to adapt itself at runtime to changes to maintain its required quality goals. To guarantee the required goals, existing adaptation approaches apply exhaustive verification techniques at runtime. However these approaches are restricted to small-scale settings, which often limits their applicability in practice. To tackle this problem, we introduce an innovative architecture-based adaptation approach to solve a concrete practical problem of VersaSense: automating the management of Internet-of-Things (IoT). The approach, called MARTAS, equips a software system with a feedback loop that employs Models At Run Time and Statistical techniques to reason about the system and adapt it to ensure the required goals. We apply MARTAS to a building security case system, which is a representative IoT system deployed by VersaSense. The application comprises a set of IoT devices that communicate sensor data over a time synchronized smart mess network to a central monitoring facility. We demonstrate how MARTAS outperforms a conservative approach that is typically applied in practice and a state-of-the-art adaptation approach for different quality goals, and we report lessons learned from this industrial case. © Springer Nature Switzerland AG 2018.

Place, publisher, year, edition, pages
Springer, 2018
Series
Lecture Notes in Computer Science, ISSN 0302-9743, E-ISSN 1611-3349 ; 11048
Keywords
Architecture-based adaptation, Automated management, Feedback loop, Internet-of-Things, Self-adaptation, Feedback, Network architecture, Software architecture, Architecture based adaptation, Conservative approaches, Feed-back loop, Internet of Things (IOT), Self adaptation, Software intensive systems, Verification techniques, Internet of things
National Category
Interaction Technologies
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-83572 (URN)10.1007/978-3-030-00761-4_4 (DOI)000476935800004 ()2-s2.0-85057266777 (Scopus ID)9783030007607 (ISBN)
Conference
12th European Conference on Software Architecture, ECSA 2018, Madrid, Spain, September 24–28, 2018
Available from: 2019-05-27 Created: 2019-05-27 Last updated: 2019-08-28Bibliographically approved
Van der Donckt, M. J., Weyns, D., Iftikhar, M. U. & Singh, R. K. (2018). Cost-Benefit Analysis at Runtime for Self-adaptive Systems Applied to an Internet of Things Application. In: Damiani, E Spanoudakis, G Maciaszek, L (Ed.), Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering: . Paper presented at 13th International Conference on Evaluation of Novel Approaches to Software Engineering, Funchal, PORTUGAL, MAR 23-24, 2018 (pp. 478-490). SciTePress
Open this publication in new window or tab >>Cost-Benefit Analysis at Runtime for Self-adaptive Systems Applied to an Internet of Things Application
2018 (English)In: Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering / [ed] Damiani, E Spanoudakis, G Maciaszek, L, SciTePress, 2018, p. 478-490Conference paper, Published paper (Refereed)
Abstract [en]

Ensuring the qualities of modern software systems, such as the Internet of Things, is challenging due to various uncertainties, such as dynamics in availability of resources or changes in the environment. Self-adaptation is an established approach to deal with such uncertainties. Self-adaptation equips a software system with a feedback loop that tracks changes and adapts the system accordingly to ensure its quality goals. Current research in this area has primarily focussed on the benefits that self-adaptation can offer. However, realising adaption can also incur costs. Ignoring these costs may invalidate the expected benefits. We start with demonstrating that the costs for adaptation can be significant. To that end, we apply a state-of-the-art approach for self-adaptation to an Internet of Things (IoT) application. We then present CB@R (Cost-Benefit analysis @ Runtime), a novel model-based approach for runtime decision-making in self-adaptive systems. CB@R is inspired by the Cost-Benefit Analysis Method (CBAM), which is an established approach for analysing costs and benefits of architectural decisions. We evaluate CB@R for a real world deployed IoT application and compare it with the conservative approach applied in practice and a state-of-the-art self-adaptation approach.

Place, publisher, year, edition, pages
SciTePress, 2018
Keywords
Self-adaptation, MAPE, Models at Runtime, Statistical Model Checking, Cost-Benefit Analysis Method, CBAM, Internet-of-Things, IoT
National Category
Computer Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-79104 (URN)10.5220/0006815404780490 (DOI)000450506700050 ()2-s2.0-85052335988 (Scopus ID)978-989-758-300-1 (ISBN)
Conference
13th International Conference on Evaluation of Novel Approaches to Software Engineering, Funchal, PORTUGAL, MAR 23-24, 2018
Available from: 2018-12-06 Created: 2018-12-06 Last updated: 2019-05-28Bibliographically approved
Calinescu, R., Weyns, D., Gerasimou, S., Iftikhar, M. U., Habli, I. & Kelly, T. (2018). Engineering Trustworthy Self-Adaptive Software with Dynamic Assurance Cases. IEEE Transactions on Software Engineering, 44(11), 1039-1069
Open this publication in new window or tab >>Engineering Trustworthy Self-Adaptive Software with Dynamic Assurance Cases
Show others...
2018 (English)In: IEEE Transactions on Software Engineering, ISSN 0098-5589, E-ISSN 1939-3520, Vol. 44, no 11, p. 1039-1069Article in journal (Refereed) Published
Abstract [en]

Building on concepts drawn from control theory, self-adaptive software handles environmental and internal uncertainties by dynamically adjusting its architecture and parameters in response to events such as workload changes and component failures. Self-adaptive software is increasingly expected to meet strict functional and non-functional requirements in applications from areas as diverse as manufacturing, healthcare and finance. To address this need, we introduce a methodology for the systematic ENgineering of TRUstworthy Self-adaptive sofTware (ENTRUST). ENTRUST uses a combination of (1) design-time and runtime modelling and verification, and (2) industry-adopted assurance processes to develop trustworthy self-adaptive software and assurance cases arguing the suitability of the software for its intended application. To evaluate the effectiveness of our methodology, we present a tool-supported instance of ENTRUST and its use to develop proof-of-concept self-adaptive software for embedded and service-based systems from the oceanic monitoring and e-finance domains, respectively. The experimental results show that ENTRUST can be used to engineer self-adaptive software systems in different application domains and to generate dynamic assurance cases for these systems.

Place, publisher, year, edition, pages
IEEE, 2018
Keywords
Self-adaptive software systems, software engineering methodology, assurance evidence, assurance cases
National Category
Software Engineering
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-67353 (URN)10.1109/TSE.2017.2738640 (DOI)000449964600002 ()2-s2.0-85029184307 (Scopus ID)
Available from: 2017-08-22 Created: 2017-08-22 Last updated: 2019-08-29Bibliographically approved
Algabroun, H., Iftikhar, M. U., Al-Najjar, B. & Weyns, D. (2018). Maintenance 4.0 Framework using Self: Adaptive Software Architecture. Journal of Maintenance Engineering, 2, 280-293
Open this publication in new window or tab >>Maintenance 4.0 Framework using Self: Adaptive Software Architecture
2018 (English)In: Journal of Maintenance Engineering, Vol. 2, p. 280-293Article in journal (Refereed) Published
Abstract [en]

With the recent advances of manufacturing technologies, referred to as Industry 4.0, maintenance approaches have to be developed to fulfill the new de-mands. The technological complexity associated to Industry 4.0 makes designing maintenance solutions particularly challenging. This paper proposes a novel maintenance framework leveraging principles from self-adaptation and software architecture. The framework was tested in an operational scenario where a bearing condition in an electrical motor needs to be managed, the results showed a proper operation. As a conclusion, the proposed framework could be used to develop maintenance systems for Industry 4.0.

Place, publisher, year, edition, pages
UK: ShieldCrest Publishing Aylesbury, Buckinghamshire, 2018
Keywords
Maintenance 4.0, Maintenance framework, Self-adaptation, Software architecture.
National Category
Reliability and Maintenance
Research subject
Technology (byts ev till Engineering), Terotechnology
Identifiers
urn:nbn:se:lnu:diva-77713 (URN)
Note

Ej belagd 181003

Available from: 2018-09-13 Created: 2018-09-13 Last updated: 2019-05-20Bibliographically approved
Iftikhar, M. U. & Weyns, D. (2017). ActivFORMS: A Runtime Environment for Architecture-Based Adaptation with Guarantees. In: 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE WORKSHOPS (ICSAW): . Paper presented at IEEE International Conference on Software Architecture (ICSA), APR 03-07, 2017, Gothenburg, SWEDEN (pp. 278-281). IEEE
Open this publication in new window or tab >>ActivFORMS: A Runtime Environment for Architecture-Based Adaptation with Guarantees
2017 (English)In: 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE WORKSHOPS (ICSAW), IEEE, 2017, p. 278-281Conference paper, Published paper (Refereed)
Abstract [en]

Modern software systems are exposed to various types of uncertainties, such as dynamics in the available resources that are difficult to predict and goals that may change during operation. Self-adaptation equips a software system with a feedback loop that collects additional knowledge at runtime, monitors the system and adapts it when necessary to maintain its quality goals, regardless of uncertainties. One challenging problem of self-adaptation is to provide guarantees for the goals that are subject of adaptation. In this paper, we present the ActivFORMS runtime environment to realise self- adaptation with guarantees. With ActivFORMS designers model and verify a feedback loop. The verified models can directly be deployed on top of a virtual machine that executes the models to realise adaption. The approach avoids coding of the models, which is an error-prone task. The runtime environment visualises the executing models, the state of the goals, and it supports on the fly updates of the models and goals. We illustrate the approach with an adaptation scenario of an IoT building security example.

Place, publisher, year, edition, pages
IEEE, 2017
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-68580 (URN)10.1109/ICSAW.2017.21 (DOI)000413089000057 ()2-s2.0-85025594657 (Scopus ID)978-1-5090-4793-2 (ISBN)
Conference
IEEE International Conference on Software Architecture (ICSA), APR 03-07, 2017, Gothenburg, SWEDEN
Available from: 2017-11-02 Created: 2017-11-02 Last updated: 2019-08-29Bibliographically approved
Iftikhar, M. U., Ramachandran, G. S., Bollansée, P., Weyns, D. & Hughes, D. (2017). DeltaIoT: A Self-Adaptive Internet of Things Exemplar. In: Proceedings - 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2017: . Paper presented at 12th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2017, 22 - 23 May 2017, Buenos Aires, Argentina (pp. 76-82). IEEE
Open this publication in new window or tab >>DeltaIoT: A Self-Adaptive Internet of Things Exemplar
Show others...
2017 (English)In: Proceedings - 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2017, IEEE, 2017, p. 76-82Conference paper, Published paper (Refereed)
Abstract [en]

Internet of Things (IoT) consists of networked tiny embedded computers (motes) that are capable of monitoring and controlling the physical world. Examples range from building security monitoring to smart factories. A central problem of IoT is minimising the energy consumption of the motes, while guaranteeing high packet delivery performance, regardless of uncertainties such as sudden changes in traffic load and communication interference. Traditionally, to deal with uncertainties the network settings are either hand-tuned or over-provisioned, resulting in continuous network maintenance or inefficiencies. Enhancing the IoT network with self-adaptation can automate these tasks. This paper presents DeltaIoT, an exemplar that enables researchers to evaluate and compare new methods, techniques and tools for self-adaptation in IoT. DeltaIoT is the first exemplar for research on self-adaptation that provides both a simulator for offline experimentation and a physical setup that can be accessed remotely for real-world experimentation. © 2017 IEEE.

Place, publisher, year, edition, pages
IEEE, 2017
Keywords
Exemplar, Internet of Things, Self-adaptation, Energy utilization, Software engineering, Communication interferences, Internet of Things (IOT), Monitoring and controlling, Network maintenances, Packet delivery performance, Self adaptation, Techniques and tools
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-84242 (URN)10.1109/SEAMS.2017.21 (DOI)2-s2.0-85025610351 (Scopus ID)9781538615508 (ISBN)
Conference
12th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2017, 22 - 23 May 2017, Buenos Aires, Argentina
Available from: 2019-06-11 Created: 2019-06-11 Last updated: 2019-06-13Bibliographically approved
Algabroun, H., Iftikhar, M. U., Al-Najjar, B. & Weyns, D. (2017). Maintenance 4.0 Framework Using Self-Adaptive Software Architecture. In: Proceedings of 2nd International Conference on Maintenance Engineering, IncoME-II 2017.The University of Manchester, UK: . Paper presented at 2nd International Conference on Maintenance Engineering, IncoME-II 2017.The University of Manchester, UK. The University of Manchester, UK
Open this publication in new window or tab >>Maintenance 4.0 Framework Using Self-Adaptive Software Architecture
2017 (English)In: Proceedings of 2nd International Conference on Maintenance Engineering, IncoME-II 2017.The University of Manchester, UK, The University of Manchester, UK , 2017, , p. 299-309Conference paper (Refereed)
Abstract [en]

With the recent advances of manufacturing technologies, referred to as Industry 4.0, maintenance approaches have to be developed to fulfill the new de-mands. The technological complexity associated to Industry 4.0 makes designing maintenance solutions particularly challenging. This paper proposes a novel maintenance framework leveraging principles from self-adaptation and software architecture. The framework was tested in an operational scenario where a bearing condition in an electrical motor needs to be managed, the results showed a proper operation. As a conclusion, the proposed framework could be used to develop maintenance systems for Industry 4.0.

Place, publisher, year, edition, pages
The University of Manchester, UK, 2017. p. 299-309
Keywords
Maintenance 4.0, Maintenance framework, Self-adaptation, Software architecture.
National Category
Reliability and Maintenance
Research subject
Computer Science, Software Technology; Technology (byts ev till Engineering), Terotechnology
Identifiers
urn:nbn:se:lnu:diva-71804 (URN)
Conference
2nd International Conference on Maintenance Engineering, IncoME-II 2017.The University of Manchester, UK
Note

Ej belagd 180405

Available from: 2018-03-26 Created: 2018-03-26 Last updated: 2019-02-26Bibliographically approved
Iftikhar, M. U., Lundberg, J. & Weyns, D. (2016). A Model Interpreter for Timed Automata. In: Leveraging Applications of Formal Methods, Verification and Validation: Foundational Techniques, PT I. Paper presented at 7th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (ISoLA), OCT 10-14, 2016, Corfu, GREECE (pp. 243-258). Springer
Open this publication in new window or tab >>A Model Interpreter for Timed Automata
2016 (English)In: Leveraging Applications of Formal Methods, Verification and Validation: Foundational Techniques, PT I, Springer, 2016, p. 243-258Conference paper, Published paper (Refereed)
Abstract [en]

In the model-centric approach to model-driven development, the models used are sufficiently detailed to be executed. Being able to execute the model directly, without any intermediate model-to-code translation, has a number of advantages. The model is always up-to-date and runtime updates of the model are possible. This paper presents a model interpreter for timed automata, a formalism often used for modeling and verification of real-time systems. The model interpreter supports real-time system features like simultaneous execution, system wide signals, a ticking clock, and time constraints. Many existing formal representations can be verified, and many existing DSMLs can be executed. It is the combination of being both verifiable and executable that makes our approach rather unique.

Place, publisher, year, edition, pages
Springer, 2016
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 9952
Keywords
Model-driven development, Model interpretation, Timed automata, Virtual machine
National Category
Computer Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-59817 (URN)10.1007/978-3-319-47166-2_17 (DOI)000389939100017 ()2-s2.0-84993972025 (Scopus ID)978-3-319-47166-2 (ISBN)978-3-319-47165-5 (ISBN)
Conference
7th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (ISoLA), OCT 10-14, 2016, Corfu, GREECE
Available from: 2017-01-16 Created: 2017-01-13 Last updated: 2018-05-17Bibliographically approved
Weyns, D. & Iftikhar, M. U. (2016). Model-based Simulation at Runtime for Self-adaptive Systems. In: 2016 IEEE International Conference on Autonomic Computing (ICAC): . Paper presented at 13th IEEE International Conference on Autonomic Computing (ICAC), JUL 17-22, 2016, Wurzburg, GERMANY (pp. 364-373). IEEE
Open this publication in new window or tab >>Model-based Simulation at Runtime for Self-adaptive Systems
2016 (English)In: 2016 IEEE International Conference on Autonomic Computing (ICAC), IEEE, 2016, p. 364-373Conference paper, Published paper (Refereed)
Abstract [en]

Modern software systems are subject to uncertainties, such as dynamics in the availability of resources or changes of system goals. Self-adaptation enables a system to reason about runtime models to adapt itself and realises its goals under uncertainties. Our focus is on providing guarantees for adaption goals. A prominent approach to provide such guarantees is automated verification of a stochastic model that encodes up-to-date knowledge of the system and relevant qualities. The verification results allow selecting an adaption option that satisfies the goals. There are two issues with this state of the art approach: i) changing goals at runtime (a challenging type of uncertainty) is difficult, and ii) exhaustive verification suffers from the state space explosion problem. In this paper, we propose a novel modular approach for decision making in self-adaptive systems that combines distinct models for each relevant quality with runtime simulation of the models. Distinct models support on the fly changes of goals. Simulation enables efficient decision making to select an adaptation option that satisfies the system goals. The tradeoff is that simulation results can only provide guarantees with a certain level of accuracy. We demonstrate the benefits and tradeoffs of the approach for a service-based telecare system.

Place, publisher, year, edition, pages
IEEE, 2016
Series
Proceedings of the International Conference on Autonomic Computing, ISSN 2474-0756
Keywords
Self-adaptation, models and simulation at run-time, TAS exemplar
National Category
Computer Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-60161 (URN)10.1109/ICAC.2016.67 (DOI)000390681200057 ()2-s2.0-84991737431 (Scopus ID)978-1-5090-1653-2 (ISBN)
Conference
13th IEEE International Conference on Autonomic Computing (ICAC), JUL 17-22, 2016, Wurzburg, GERMANY
Available from: 2017-01-24 Created: 2017-01-24 Last updated: 2018-01-13Bibliographically approved
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
Open this publication in new window or tab >>Rigorous architectural reasoning for self-adaptive software systems
2016 (English)In: Proceedings: First Workshop on Qualitative Reasoning abut Software Architectures, QRASA 2016 / [ed] Lisa O'Conner, IEEE, 2016, p. 11-18Conference paper, Published paper (Refereed)
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.

Place, publisher, year, edition, pages
IEEE, 2016
Keywords
Architectural reasoning, Formal methods, Self-adaptive software systems
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-56118 (URN)10.1109/QRASA.2016.9 (DOI)000386785900002 ()2-s2.0-84978284867 (Scopus ID)9781509021314 (ISBN)
Conference
1st Workshop on Qualitative Reasoning about Software Architectures, QRASA 2016, 8 April 2016
Available from: 2016-09-08 Created: 2016-08-31 Last updated: 2018-04-26Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-1343-5834

Search in DiVA

Show all publications