Don't miss our weekly PhD newsletter | Sign up now Don't miss our weekly PhD newsletter | Sign up now

  Automated Model Learning from Software Evolution


   Department of Informatics

This project is no longer listed on FindAPhD.com and may not be available.

Click here to search FindAPhD.com for PhD studentship opportunities
  Dr J Rojas Siles, Prof M Mousavi  No more applications being accepted  Competition Funded PhD Project (European/UK Students Only)

About the Project

Software is being increasingly used to control critical autonomous systems. Establishing trust in such systems involves using rigorous and explainable techniques to assess their safety. Model-based software engineering provides a powerful means in this respect: it gives us the basis for mathematical rigorous analysis, of which the results are explainable by translating the reasoning process into understandable natural / graphical language. Using models is a well-established approach to understand and validate existing software and develop new systems.

Model-based techniques rely on the presence of models for analysing and steering the development of software products. In practice, however, these models are often absent or outdated due to a number of factors, e.g., reuse of legacy software, limited resources allocated for maintaining software artefacts, and software evolution. Model-learning is a promising recent research area that aims to automatically construct models of software and systems by interacting with them at their interface level.

The goal of this project is to mine different patterns of software evolution (e.g., changes in repositories) and use them to learn up-to-date models of software behaviour for further analysis. The main challenge is to devise a novel model-learning technique that, inspired by the detected patterns of evolution, effectively anticipates behavioural changes and focuses on them rather than learning the whole product behaviour from scratch. This is a scientifically worthwhile goal as learning about software evolution (both in terms of evolution in time and in features) is much understudied. Moreover, this is a practically relevant problem considering the increasing trend of using evolving and self-adapting software in autonomous systems and the need for establishing trust in them through model-based techniques.

The expected outcome of the project will feed into a workflow to support model-based software development. This research agenda is inspired by the actual and urgent demand expressed by the software engineering research team at our industrial partner British Telecom.

The project will provide an exciting opportunity to work with industrial data and evaluate the techniques on industrial-scale systems.

Entry requirements
UK Bachelor Degree with at least 2:1 in a relevant subject or overseas equivalent.
English language requirements may apply https://le.ac.uk/study/research-degrees/entry-reqs/eng-lang-reqs/ielts-60

Enquiries
Project Specific : [Email Address Removed]
Application Specific : [Email Address Removed]

Eligibility: UK/EU (Residency Requirements for EU in accordance with UKRI)
https://epsrc.ukri.org/skills/students/guidance-on-epsrc-studentships/eligibility/

Funding Notes

3.5 Year funding:
Fees
RCUK Rate Stipend
RTSG
*Competitive Funding*

References

[1] M Martinez, M Monperrus. Mining software repair models for reasoning on the search space of automated program fixing. Empirical Software Engineering 20 (1), 176-205, 2015.
[2] E. Albert, B.M. Østvold, J.M. Rojas: Automated Extraction of Abstract Behavioural Models from JMS Applications. FMICS’12. Springer, 2012.
[3] C.D. Nascimento Damasceno, M.R. Mousavi and A. Simao. Learning to Reuse: Adaptive Model Learning for Evolving Systems. iFM’19. Springer, 2019.
[4] C.D. Nascimento Damasceno, M.R. Mousavi and A. Simao. Learning from Difference: An Automated Approach for Learning Family Models From Software Product Lines. SPLC’19. ACM, 2019.
[5] S. Maoz, J.O. Ringert. A Framework for relating syntactic and semantic model differences. Software and Systems Modeling 17(3): 753-777 (2018)
[6] S. Shamshiri, J.M. Rojas, J.P. Galeotti, N. Walkinshaw, G. Fraser. How Do automatically Generated Unit Tests Influence Software Maintenance? ICST’18. IEEE, 2018.
[7] J.M. Rojas, G. Fraser, A. Arcuri: Automated unit test generation during software development: a controlled experiment and think-aloud observations. ISSTA’15. ACM, 2015.