MUSE: Multi-Modal Software Evolution
Lead Research Organisation:
Royal Holloway University of London
Department Name: Information Security
Abstract
Software systems are heterogeneous, combining components developed by independent teams. Software developers rely on third-party libraries to cut development time and cost. The synergy between these components is crucial for the overall maintainability and health of the software system. Unfortunately, popular libraries are typically fast-moving and grow rapidly in size while catering to a diversity of client software. As libraries evolve and grow in size, developers tend to defer upgrades despite clear upgrade directives from the libraries, citing the cost of upgrade in both time and money.
To build large and sustainable software systems, it is crucial that independently evolving software systems are synchronised automatically. Multi-Modal Software Evolution (MUSE) is a transformative step towards autonomous software maintenance where directives in software documentation for human developers will guide automated software upgrade. In MUSE, we will develop a novel approach to software upgrade that integrates upgrade directives for human developers into formal frameworks for program synthesis, generation and repair. We will include directives in documentation for libraries as first class objects in frameworks for reasoning and transformation of software. We will produce hybrid statistical-formal reasoning frameworks which will make human-to-human communication the main driver in automatic program transformation.
Working closely with stakeholders through engagement events, we will develop both the theory and the tooling for automatic software upgrade to use newer versions of libraries. We will demonstrate the tools by upgrading client software that relies on fast-moving libraries and distribute the tools that we develop in multiple forms for developers at all skills levels, from enthusiasts to experienced developers, making our outputs widely accessible.
To build large and sustainable software systems, it is crucial that independently evolving software systems are synchronised automatically. Multi-Modal Software Evolution (MUSE) is a transformative step towards autonomous software maintenance where directives in software documentation for human developers will guide automated software upgrade. In MUSE, we will develop a novel approach to software upgrade that integrates upgrade directives for human developers into formal frameworks for program synthesis, generation and repair. We will include directives in documentation for libraries as first class objects in frameworks for reasoning and transformation of software. We will produce hybrid statistical-formal reasoning frameworks which will make human-to-human communication the main driver in automatic program transformation.
Working closely with stakeholders through engagement events, we will develop both the theory and the tooling for automatic software upgrade to use newer versions of libraries. We will demonstrate the tools by upgrading client software that relies on fast-moving libraries and distribute the tools that we develop in multiple forms for developers at all skills levels, from enthusiasts to experienced developers, making our outputs widely accessible.
Publications
Petrescu C
(2023)
Do names echo semantics? A large-scale study of identifiers used in C++'s named casts
in Journal of Systems and Software
Tileria M
(2024)
DocFlow: Extracting Taint Specifications from Software Documentation
Related Projects
| Project Reference | Relationship | Related To | Start | End | Award Value |
|---|---|---|---|---|---|
| EP/W015927/1 | 30/09/2022 | 25/03/2024 | £421,797 | ||
| EP/W015927/2 | Transfer | EP/W015927/1 | 26/03/2024 | 31/10/2026 | £311,024 |
| Description | In a detailed study of open-source serverless (cloud-based) applications found on GitHub, we found that developers often find it difficult to use the serverless programming model correctly. This work has created a need for tools that identify poor programming practices and, where possible, fix them automatically. We created a set of microbenchmarks informed by this study and a tool, which is a work in progress, to identify common anti-patterns in serverless programming. |
| Exploitation Route | The set of microbenchmarks and tool can be used by developers in their own workflow to identify common anti-patterns that might be present in their code. |
| Sectors | Digital/Communication/Information Technologies (including Software) |
| Title | AWSomePy Dataset |
| Description | AWSomePy is a dataset of 145 AWS serverless applications implemented in Python and compatible with the Serverless Framework deployment tool. The applications were collected from GitHub in August 2022. The peer-reviewed paper AWSomePy: A Dataset and Characterization of Serverless Applications has been accepted for publication at the 1st Workshop on SErverless Systems, Applications and MEthodologies (SESAME) co-located with the EuroSys 2023 conference. The paper will be available in the ACM Digital Library. |
| Type Of Material | Database/Collection of data |
| Year Produced | 2023 |
| Provided To Others? | Yes |
| Impact | This dataset is a collection of applications which demonstrate the diversity of features used by serverless or cloud-based software. The dataset has only recently been shared publicly so its impact is not fully known yet. However, we anticipate significant interest in it in the near future due to the scarcity of benchmarks for serverless applications. |
| URL | https://zenodo.org/record/7838076 |
| Description | Invited Talk (I4, Dublin) |
| Form Of Engagement Activity | A talk or presentation |
| Part Of Official Scheme? | No |
| Geographic Reach | International |
| Primary Audience | Industry/Business |
| Results and Impact | About 60 Practitioners and Senior Managers from the Cyber Security industry attended our talk. The event was organised by International Information Integrity Institute (I4), which is run by KPMG. Through the talk, we made the audience aware of issues in open-source software, and how their organisation can ensure sustainability of in-house systems that use open-source software. In the feedback from the audience, the talk received the maximum score of 5. The event was well received and KPMG have asked me to consider giving a follow-up talk at a later event. |
| Year(s) Of Engagement Activity | 2023 |
| Description | Seminar (Singapore) |
| Form Of Engagement Activity | A talk or presentation |
| Part Of Official Scheme? | No |
| Geographic Reach | International |
| Primary Audience | Postgraduate students |
| Results and Impact | Researchers in Automated Software Engineering attended the talk. We discussed potential collaborations that build upon as well as complement this project. |
| Year(s) Of Engagement Activity | 2024 |
| URL | https://computing.smu.edu.sg/newsletter/research-seminar-santanu-dash-documentation-guided-taint-ana... |
