Job Overview
PhD Position in Quality Assurance for Software Frameworks in Evolution
Project
Quality assurance for software frameworks in evolution – a case for software resilience
==================================================================
A recent report on “Current and future challenges of software engineering for services and applications” stresses the importance as well as challenges of (1) software quality assurance, (2) lifecycle management, and (3) software design. This research position tackles these issues from a specific perspective.
Quality assurance in evolving software frameworks
————————————————————————————–
A software framework is a design and implementation artefact that provides a software architecture, design and code (frozen spots) for a specific application domain, with foreseeable extensions for application-specific customisations (hot spots). But similar to ‘regular’ products and services, frameworks are susceptible to frequent change, due to:
- changing or new requirements
- extension of scope of the framework (narrowing or widening)
- design overhaul
- code revisions/refactorings
In this research, you will study agile development and evolution of software frameworks. Topics in the research may include:
- process guidelines for evolving frameworks, in line with the agile manifesto
- CD/CI and framework version control, targeting a suitable branching model and guidelines for framework engineering
- quality measures and quality assurance throughout the framework lifecycle: (1) component specifications (hotspots and frozen spots), (2) automated verification and testing
Context: resilient embedded software in the presence of bit flips
————————————————————————————–
The research will be guided and inspired by a concrete use case. Through the years, we have been developing components and algorithms for resilience of software for embedded systems. Embedded systems in real and possibly harsh environments are susceptible to external disturbances, which can lead to bit-flips. Such bit-flips lead to run-time errors in the embedded software, such as control flow errors (CFE) and data flow errors (DFE).
Software-implemented resilience techniques enable detecting these run-time errors and taking corrective actions. Tailored tools allow e.g. for code generation as a compiler plug-in, evaluation through fault injection, simulation, support for various hardware platforms.
These assets make an interesting body of knowledge that may be helpful for external parties, both industry and research.
A well-thought software framework that supports evolution should enable a rigorous and flexible engineering approach for integrating new techniques and algorithms, and for tailor solutions for software (1) with application-specific characteristics, and (2) that executes on specific platforms under particular environmental conditions.
Profile
If you share our strong interest in software engineering and if you have
- a master in computer science, electronics or (or equivalent),
- an analytical mind and technical skills,
- optionally some industry experience,
- fluent English communication skills,
then you may be the researcher we are looking for!
Offer
We offer a 4 year PhD position in a internationally renowned research group.
Interested?
Vul contactpersonen aan in stap 1 “Context vacature” en hergenereer deze tekst.
- Employment percentage: Voltijds
- Location: Leuven
- Apply before: December 22, 2021
- Tags: Computerwetenschappen
Job Detail
- Offered SalaryNot Specified
- Career LevelNot Specified
- ExperienceNot Specified
- GenderBoth
- INDUSTRYEducation
- QualificationMaster's Degree(M.Sc.)