DTPSCIDM: Modernising legacy software using microservices for the digital industrial economy of tomorrow (MoLeS-micro)
Applications are now CLOSED
Supervisors: Dr Dave Cutting/ Dr Vahid Garousi Computer software underpins modern industry driving everything from manufacturing to critical infrastructure such as gas. Many organisations struggle with old “legacy” software which is poorly designed and becoming increasingly difficult and risky to maintain or evolve. The desire to refactor this software using modern techniques such as micro-services is strong in many sectors. Such refactoring can offer significant benefits to industry and shape critical software to be suitable for the 2020s and beyond. This project will be investigating ways in which this process could be semi-automated in partnership with academic and industrial supervisors.
Computer software underpins the modern world driving everything from assembly lines to critical infrastructure such as gas networks as well as bring a critical component of every supply chain. The law of "Declining Quality", formulated by German professor Meir Lehman in 1996, states that the quality of a software system will decline unless it is maintained and adapted to environmental changes so the need for successful change becomes fundamental.
Many organisations have significant “technical debt” in the form of large numbers of legacy (old) software systems most of which are "monolithic" in that they are single blocks of tangled interconnected highly-coupled components. Such monolithic structures are hard to maintain, prone to failure, and difficult to evolve. In comparison, more modern "microservice" architectures exist for software systems which allow development and deployment of independent loosely-coupled components which can be used interchangeably and individually maintained as standalone operations.
This can be especially true in “early adopters” of technology such as manufacturing industries, where this technical debt acts as a barrier to integrating the latest techniques such as AI or data analytics into existing software systems. Opportunities available to “green field” projects such as process automation or high-granularity data collection is simply not possible when the legacy systems are outdated yet need to be integrated into the modern environment. Collection and analysis of data from metrics within software that controls machinery and processes increasingly essential yet impossible when dealing with an opaque monolithic system. The “factory of the future” must be able to leverage advanced computational techniques to work with both new and existing software and systems, using cutting-edge machine learning techniques with SCADA software controlling traditional equipment for example, something which would require significant risky updates to existing systems.
Just like our cities, homes and offices that need modernization, the internal design structures of software systems also need modernizations. To improve the performance and scalability of legacy software systems and to take advantage modern software development approaches, many software companies are considering "modernization" of their legacy software systems using microservices, which is also referred to as the "migration" or "refactoring" process. Migrating from the old to the new approaches offers significant benefit to modern industry, reduces ongoing risk and makes more efficient use of resources.
The fundamental purpose of this project is to define, implement, and validate an approach to support semi-automated migration of legacy monolithic platforms to modernised microservices. This work will be widely distributed and made available with exemplar toolchains helping industry to leverage the benefits that modern approaches can take and de-risk the technical debt they carry. Such an approach will offer real benefit to organisations who wish to modernise their systems without tearing everything down and at the lowest cost and risk levels. Large existing legacy systems can be migrated and enabled to integrate with modern features and toolsets. For example, integrations between legacy manufacturing control systems and HPC resources to support real-time data analytics and trend analysis could be made which simply would not have been possible with a monolithic stack.
The initial industrial partner for this project, who will provide input and access to problematic software stacks for validation is BT, coordinated through BT Research at Adastral Park in Ipswich. BT will host the student for periods of time where the student will work on-site with BT Research.
The expected phases/work packages of the PhD project will be as follows working in collaboration with academic and industrial support:
WP1: Systematic Multivocal Literature Review (MLR) of the state-of-the -art (academia) and -practice (industry) in the topic of migration to microservices: It is important to know the state-of-the -art and -practice, to ensure the novelty of our approach and also to use best practices offered already by others. For this, we will conduct a Multivocal Literature Review (MLR), a type of a Systematic Literature Review (SLR) which includes the grey literature (e.g., blog posts, videos and white papers) in addition to the published (formal) literature (e.g., journal and conference papers).
WP2: Selection of candidate components to be migrated to microservices: This task will involve identification of microservices in a given monolithic software using different sources of information, such as software repositories and dependency (call) graphs, to identify the components worth transforming to microservices. Since microservices come with certain costs and even risks, only certain parts (components) of a given large monolithic software should be migrated to microservices. We need to consider four dimensions: costs (of migration and of microservices), benefits (of microservices), risks (of migration and of microservices, e.g., technical debt), and quality (of the resulting microservices-based system).
WP3: Semi-automated approach for transformation to microservices: Once a candidate set of components to be migrated to microservices are selected, a migration process should be followed to transform them into a set of microservices. Ideally, the process should be as automated as possible, to ensure scalability and reproducibility.
WP4: Verification and validation (V&V) of the candidate-selection approach and transformation approaches, and also the case-study software systems: The automated approaches to be developed in WPs 2 and 3 will be software tools themselves and thus will require Verification and Validation (V&V). We will conduct those V&V via suitable testing approaches, i.e., unit, integration and system testing with a clearly-defined test strategy. Test automation will be used whenever possible.
WP5: Empirical studies on industrial and open-source software systems: To ensure applicability, practical relevance and usefulness of the project and the above WPs, we will select several case-study software systems in the context of our industry partner (BT), and also several open-source software (e.g., from GitHub) to apply the approaches. We will plan and conduct carefully-designed experiments and empirical studies.
Distribution and dissemination of research: In addition to dissemination through traditional academic sources such as conferences and journal outputs, given the nature of the project, and as it is widely recognized in the CS and software engineering fields, sharing public data-sets and open-source software tools from research projects generally provides a lot of value to other researchers. To automate the novel methods, to be developed in the project, we will develop software tools and will provide them as open-source tools for free. We have had years of experience in providing research tools for the benefit of other researchers, e.g., see this URL: www.vgarousi.com/research/research-software. Furthermore, we will prepare data-sets, representing the projects under study and the legacy software system under analysis, and will also share them online. Those artifacts will benefit other researchers in conducting further methodological and applied work in this area.
Computer Science overview
The School of Electronics, Electrical Engineering and Computer Science (EEECS) aims to enhance the way we use technology in communication, data science, computing systems, cyber security, power electronics, intelligent control, and many related areas.
You’ll be part of a dynamic doctoral research environment and will study alongside students from over 40 countries world wide; we supervise students undertaking research in key areas of computer science, including: computing systems, artificial intelligence and cybersecurity. As part of a lively community of over 100 full-time and part-time research students you’ll have the opportunity to develop your research potential in a vibrant research community that prioritises the cross-fertilisation of ideas and innovation in the advancement of knowledge.
Many PhD studentships attract scholarships and top-up supplements. PhD programmes provide our students with the opportunity to acquire an extensive training in research techniques.
Within the School we have a number of specialist research centres including a Global Research Institute, the Institute of Electronics, Communications and Information Technology (ECIT) specialising in Cyber Security, Wireless Innovation and Data Science and scalable computing.
Computer Science Highlights
- Queen’s researchers have strong links with the local industry, which boasts a rich mix of local startups and multi-nationals. Belfast is the second fastest growing region in the UK in terms of Knowledge Economy activity (Northern Ireland Economy Report, 2018).
World Class Facilities
- The state-of-the-art £14m Computer Science Building and the Institute of Electronics, Communications and Information Technology offer bespoke research environments.
Internationally Renowned Experts
- You will be working under the supervision of leading international academic experts.
Research students are encouraged to play a full and active role in relation to the wide range of research activities undertaken within the School and there are many resources available including:
- A wide range of personal development and specialist training courses offered through the Personal Development Programme
- Access to the Queen's University Postgraduate Researcher Development Programme
- Office accommodation with access to computing facilities and support to attend conferences for full-time PhD students
Research within the School is organised into research themes combining strengths by working together on major projects, in many cases in collaboration with key technology companies.
ECIT brings together internationally recognised research groups specialising in key areas of advanced digital and communications technology.
PhD Opportunities are available in a wide range of computer science subjects, aligned to the specific expertise of our PhD supervisors.
Queen’s is a leader in commercial impact and one of the five highest performing universities in the UK for intellectual property commercialisation. We have created over 80 spin-out companies. Three of these -
Kainos, Andor Technology and Fusion Antibodies - have been publicly listed on the London Stock Exchange.
Queen’s has strong collaborative links with industry in Northern Ireland, and internationally. It has a strong funding track record with EPSRC and the EC H2020 programme.
The research profile produced by the 2014 UK Research Excellence Framework (REF) graded 80 per cent of our research activity as 'world-leading' or 'internationally excellent', confirming the School's reputation as an internationally-leading department.
For further information on career opportunities at PhD level please contact the Faculty of Engineering and Physical Sciences Student Recruitment Team on askEPS@qub.ac.uk. Our advisors - in consultation with the School - will be happy to provide further information on your research area, possible career prospects and your research application.
People teaching you
There is no specific course content as such. You are expected to take research training modules that are supported by the School which focus on quantitative and qualitative research methods. You are also expected to carry out your research under the guidance of your supervisor.
Over the course of study you can attend postgraduate skills training organised by the Graduate School.
You will normally register, in the first instance, as an ‘undifferentiated PhD student’ which means that you have satisfied staff that you are capable of undertaking a research degree. The decision as to whether you should undertake a PhD is delayed until you have completed ‘differentiation’.
Differentiation takes place about 8-9 months after registration for full time students and about 16-18 months for part time students: You are normally asked to submit work to a panel of up two academics and this is followed up with a formal meeting with the ‘Differentiation Panel’. The Panel then make a judgement about your capacity to continue with your study. Sometimes students are advised to revise their research objectives or to consider submitting their work for an MPhil qualification rather than a doctoral qualification.
To complete with a doctoral qualification you will be required to submit a thesis of approx 80,000 words and you will be required to attend a viva voce [oral examination] with an external and internal examiner to defend your thesis.
A PhD programme runs for 3-4 years full-time or 6-8 years part-time. Students can apply for a writing up year should it be required.
The PhD is open to both full and part time candidates and is often a useful preparation for a career within academia or consultancy.
Full time students are often attracted to research degree programmes because they offer an opportunity to pursue in some depth an area of academic interest.
The part time research degree is an exciting option for professionals already working in the education field who are seeking to extend their knowledge on an issue of professional interest. Often part time candidates choose to research an area that is related to their professional responsibilities.
If you meet the Entry Requirements, the next step is to check whether we can supervise research in your chosen area. We only take students to whom we can offer expert research supervision from one of our academic staff. Therefore, your research question needs to engage with the research interests of one of our staff.
- Assessment processes for the Research Degree differ from taught degrees. Students will be expected to present write up their work at regular intervals to their supervisor who will provide written and oral feedback; a formal assessment process takes place annually.
This Annual Progress Review requires students to present their work in writing and orally to a panel of academics from within the School. Successful completion of this process will allow students to register for the next academic year.
The final assessment of the doctoral degree is both oral and written. Students will submit their thesis to an internal and external examining team who will review the written thesis before inviting the student to orally defend their work at a Viva Voce.
- Supervisors will offer feedback on the research work at regular intervals throughout the period of registration on the degree.
Full time PhD students will have access to a shared office space and access to a desk with personal computer and internet access.
The minimum academic requirement for admission to a research degree programme is normally an Upper Second Class Honours degree from a UK or ROI HE provider, or an equivalent qualification acceptable to the University. Further information can be obtained by contacting the School.
For information on international qualification equivalents, please check the specific information for your country.
English Language Requirements
Evidence of an IELTS* score of 6.0, with not less than 5.5 in any component or equivalent qualification acceptable to the University is required (*taken within the last 2 years).
International students wishing to apply to Queen's University Belfast (and for whom English is not their first language), must be able to demonstrate their proficiency in English in order to benefit fully from their course of study or research. Non-EEA nationals must also satisfy UK Visas and Immigration (UKVI) immigration requirements for English language for visa purposes.
For more information on English Language requirements for EEA and non-EEA nationals see: www.qub.ac.uk/EnglishLanguageReqs.
If you need to improve your English language skills before you enter this degree programme, INTO Queen's University Belfast offers a range of English language courses. These intensive and flexible courses are designed to improve your English ability for admission to this degree.
|Northern Ireland (NI) 1||£4,500|
|Republic of Ireland (ROI) 2||£4,500|
|England, Scotland or Wales (GB) 1||£4,500|
|EU Other 3||£22,000|
1 EU citizens in the EU Settlement Scheme, with settled or pre-settled status, are expected to be charged the NI or GB tuition fee based on where they are ordinarily resident, however this is provisional and subject to the publication of the Northern Ireland Assembly Student Fees Regulations. Students who are ROI nationals resident in GB are expected to be charged the GB fee, however this is provisional and subject to the publication of the Northern Ireland Assembly student fees Regulations.
2 It is expected that EU students who are ROI nationals resident in ROI will be eligible for NI tuition fees, in line with the Common Travel Agreement arrangements. The tuition fee set out above is provisional and subject to the publication of the Northern Ireland Assembly student fees Regulations.
3 EU Other students (excludes Republic of Ireland nationals living in GB, NI or ROI) are charged tuition fees in line with international fees.
All tuition fees quoted are for the academic year 2021-22, and relate to a single year of study unless stated otherwise. Tuition fees will be subject to an annual inflationary increase, unless explicitly stated otherwise.
Computer Science costs
There are no specific additional course costs associated with this programme.
Additional course costs
Depending on the programme of study, there may also be other extra costs which are not covered by tuition fees, which students will need to consider when planning their studies . Students can borrow books and access online learning resources from any Queen's library. If students wish to purchase recommended texts, rather than borrow them from the University Library, prices per text can range from £30 to £100. Students should also budget between £30 to £100 per year for photocopying, memory sticks and printing charges. Students may wish to consider purchasing an electronic device; costs will vary depending on the specification of the model chosen. There are also additional charges for graduation ceremonies, and library fines. In undertaking a research project students may incur costs associated with transport and/or materials, and there will also be additional costs for printing and binding the thesis. There may also be individually tailored research project expenses and students should consult directly with the School for further information.
How do I fund my study?1.PhD Opportunities
Find PhD opportunities and funded studentships by subject area.2.Funded Doctoral Training Programmes
We offer numerous opportunities for funded doctoral study in a world-class research environment. Our centres and partnerships, aim to seek out and nurture outstanding postgraduate research students, and provide targeted training and skills development.3.PhD loans
The Government offers doctoral loans of up to £26,445 for PhDs and equivalent postgraduate research programmes for English- or Welsh-resident UK and EU students.4.International Scholarships
Information on Postgraduate Research scholarships for international students.
Funding and Scholarships
The Funding & Scholarship Finder helps prospective and current students find funding to help cover costs towards a whole range of study related expenses.
How to Apply
Find a supervisor
If you're interested in a particular project, we suggest you contact the relevant academic before you apply, to introduce yourself and ask questions.
To find a potential supervisor aligned with your area of interest, or if you are unsure of who to contact, look through the staff profiles linked here.
You might be asked to provide a short outline of your proposal to help us identify potential supervisors.