Home > Research > Publications & Outputs > Self-awareness in Software Engineering

Electronic data

  • Self_Awareness_in_Software_Engineering__A_Systematic_Literature_Review

    Rights statement: © ACM, 2019. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Transactions on Autonomous and Adaptive Systems, 14, 2, 2019 http://doi.acm.org/10.1145/3347269

    Accepted author manuscript, 1.03 MB, PDF document

    Available under license: CC BY-NC: Creative Commons Attribution-NonCommercial 4.0 International License

Links

Text available via DOI:

View graph of relations

Self-awareness in Software Engineering: A systematic literature review

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Published

Standard

Self-awareness in Software Engineering: A systematic literature review. / Elhabbash, A.; Salama, M.; Bahsoon, R. et al.
In: ACM Transactions on Autonomous and Adaptive Systems, Vol. 14, No. 2, 5, 31.10.2019.

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Harvard

Elhabbash, A, Salama, M, Bahsoon, R & Tino, P 2019, 'Self-awareness in Software Engineering: A systematic literature review', ACM Transactions on Autonomous and Adaptive Systems, vol. 14, no. 2, 5. https://doi.org/10.1145/3347269

APA

Elhabbash, A., Salama, M., Bahsoon, R., & Tino, P. (2019). Self-awareness in Software Engineering: A systematic literature review. ACM Transactions on Autonomous and Adaptive Systems, 14(2), Article 5. https://doi.org/10.1145/3347269

Vancouver

Elhabbash A, Salama M, Bahsoon R, Tino P. Self-awareness in Software Engineering: A systematic literature review. ACM Transactions on Autonomous and Adaptive Systems. 2019 Oct 31;14(2):5. doi: 10.1145/3347269

Author

Elhabbash, A. ; Salama, M. ; Bahsoon, R. et al. / Self-awareness in Software Engineering : A systematic literature review. In: ACM Transactions on Autonomous and Adaptive Systems. 2019 ; Vol. 14, No. 2.

Bibtex

@article{64bfedc0c5f7469bb6f620c313f0de0d,
title = "Self-awareness in Software Engineering: A systematic literature review",
abstract = "Background: Self-awareness has been recently receiving attention in computing systems for enriching autonomous software systems operating in dynamic environments.Objective: We aim to investigate the adoption of computational self-awareness concepts in autonomic software systems and motivate future research directions on self-awareness and related problems.Method: We conducted a systemic literature review to compile the studies related to the adoption of self-awareness in software engineering and explore how self-awareness is engineered and incorporated in software systems. From 865 studies, 74 studies have been selected as primary studies. We have analysed the studies from multiple perspectives, such as motivation, inspiration, and engineering approaches, among others.Results: Results have shown that self-awareness has been used to enable self-adaptation in systems that exhibit uncertain and dynamic behaviour. Though there have been recent attempts to define and engineer self-awareness in software engineering, there is no consensus on the definition of self-awareness. Also, the distinction between self-aware and self-adaptive systems has not been systematically treated.Conclusions: Our survey reveals that self-awareness for software systems is still a formative field and that there is growing attention to incorporate self-awareness for better reasoning about the adaptation decision in autonomic systems. Many pending issues and open problems outline possible research directions.",
author = "A. Elhabbash and M. Salama and R. Bahsoon and P. Tino",
note = "{\textcopyright} ACM, 2019. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Transactions on Autonomous and Adaptive Systems, 14, 2, 2019 http://doi.acm.org/10.1145/3347269",
year = "2019",
month = oct,
day = "31",
doi = "10.1145/3347269",
language = "English",
volume = "14",
journal = "ACM Transactions on Autonomous and Adaptive Systems",
issn = "1556-4665",
publisher = "Association for Computing Machinery (ACM)",
number = "2",

}

RIS

TY - JOUR

T1 - Self-awareness in Software Engineering

T2 - A systematic literature review

AU - Elhabbash, A.

AU - Salama, M.

AU - Bahsoon, R.

AU - Tino, P.

N1 - © ACM, 2019. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Transactions on Autonomous and Adaptive Systems, 14, 2, 2019 http://doi.acm.org/10.1145/3347269

PY - 2019/10/31

Y1 - 2019/10/31

N2 - Background: Self-awareness has been recently receiving attention in computing systems for enriching autonomous software systems operating in dynamic environments.Objective: We aim to investigate the adoption of computational self-awareness concepts in autonomic software systems and motivate future research directions on self-awareness and related problems.Method: We conducted a systemic literature review to compile the studies related to the adoption of self-awareness in software engineering and explore how self-awareness is engineered and incorporated in software systems. From 865 studies, 74 studies have been selected as primary studies. We have analysed the studies from multiple perspectives, such as motivation, inspiration, and engineering approaches, among others.Results: Results have shown that self-awareness has been used to enable self-adaptation in systems that exhibit uncertain and dynamic behaviour. Though there have been recent attempts to define and engineer self-awareness in software engineering, there is no consensus on the definition of self-awareness. Also, the distinction between self-aware and self-adaptive systems has not been systematically treated.Conclusions: Our survey reveals that self-awareness for software systems is still a formative field and that there is growing attention to incorporate self-awareness for better reasoning about the adaptation decision in autonomic systems. Many pending issues and open problems outline possible research directions.

AB - Background: Self-awareness has been recently receiving attention in computing systems for enriching autonomous software systems operating in dynamic environments.Objective: We aim to investigate the adoption of computational self-awareness concepts in autonomic software systems and motivate future research directions on self-awareness and related problems.Method: We conducted a systemic literature review to compile the studies related to the adoption of self-awareness in software engineering and explore how self-awareness is engineered and incorporated in software systems. From 865 studies, 74 studies have been selected as primary studies. We have analysed the studies from multiple perspectives, such as motivation, inspiration, and engineering approaches, among others.Results: Results have shown that self-awareness has been used to enable self-adaptation in systems that exhibit uncertain and dynamic behaviour. Though there have been recent attempts to define and engineer self-awareness in software engineering, there is no consensus on the definition of self-awareness. Also, the distinction between self-aware and self-adaptive systems has not been systematically treated.Conclusions: Our survey reveals that self-awareness for software systems is still a formative field and that there is growing attention to incorporate self-awareness for better reasoning about the adaptation decision in autonomic systems. Many pending issues and open problems outline possible research directions.

U2 - 10.1145/3347269

DO - 10.1145/3347269

M3 - Journal article

VL - 14

JO - ACM Transactions on Autonomous and Adaptive Systems

JF - ACM Transactions on Autonomous and Adaptive Systems

SN - 1556-4665

IS - 2

M1 - 5

ER -