School of Computer Science
 

Image of Radu Muschevici

Radu Muschevici

Assistant Professor,

Contact

Biography

Radu joined UNM's School of Computer Science in October 2019. Previously he was a post-doctoral researcher in Software Engineering at Technical University Darmstadt, Germany. Radu obtained his Ph.D. in Computer Science in 2013 in the DistriNet Research Group at KU Leuven, Belgium. His PhD research focused on novel modelling language features for supporting software variability, software product lines, feature models and dynamic software updating. Radu obtained his M.Sc. in Computer Science from Victoria University of Wellington, New Zealand in 2009 and his B.Sc. from Hochschule München, Germany in 2006. He has worked as a software engineer in industry for several years.

Expertise Summary

My core research interest is in designing language concepts for programming, specification and modelling that aim at making the software developing process more efficient and the resulting software safe and trustworthy.

Applications of my research include development of advanced software engineering tools such as compilers and program analysers. These are used as part of the software development life cycle, but also in other engineering disciplines where simulation and analysis of complex behaviour is of paramount importance, such as railway operations and synthetic biology.

I am further invested in building international cooperation in higher education, e.g. through research and teaching exchanges and the development of joint degree programs.

Teaching Summary

In the current academic year (2023-2024) I am teaching:

  • Software Quality Assurance (3rd year), Fall semester
  • Compilers (3rd year), Fall Semester, jointly with Dr. Tomas Maul
  • Software Engineering (1st year), Spring semester

In previous academic years I have also taught:

  • Software Engineering Management (postgraduate module), 2019-2020

Recent Publications

  • A. C. ACHDA, A. AZURAT, R. MUSCHEVICI and M. R. A. SETYAUTAMI, 2017. Extending the automated feature model analysis capability of the abstract behavioral specification In: icacsis. 453-458
  • FERRUCCIO DAMIANI, MICHAEL LIENHARDT, RADU MUSCHEVICI and INA SCHAEFER, 2017. An Extension of the ABS Toolchain with a Mechanism for Type Checking SPLs In: ifm. 111-126
  • NAILY, MOH. AFIFUN, SETYAUTAMI, MAYA RETNO AYU, MUSCHEVICI, RADU and AZURAT, ADE, 2017. A Framework for Modelling Variable Microservices as Software Product Lines In: sefm. 246-261
  • HÄHNLE, REINER and MUSCHEVICI, RADU, 2016. Towards Incremental Validation of Railway Systems In: isola. 433-446

Future Research

About Final Year Projects

The Undergraduate Dissertation (a.k.a. Final Year Project) is a large module worth 40 credits that spans two semesters. The expectation is that students commit roughly 1/3 of their time and energy to the project over one entire academic year, and produce a significant scientific result. In the UK system (Credit Accumulation and Transfer Scheme, CATS), one credit point is awarded for 10 study hours. So, the expectation is that a student spends 200 hours studying for their FYP each semester, which translates to roughly 15 hours per week.

Please consider the above expectations before deciding to embark on an FYP.

Students who enroll in an FYP need to make a conscious commitment to stay motivated to work on the chosen topic for the entire academic year. It is therefore important to choose a topic that you are passionate about, and truly interested in finding a novel, or significantly better than existing, solution to the problem that you choose to tackle.

Your Project

If you already have a well-thought-out project idea in mind, I would be happy to discuss a potential supervision with you. I am interested in topics in the following areas:

  • Software Engineering
  • Programming Languages
  • Software Modelling and Simulation
  • Applications of Machine Learning to above topics

I am looking for topics in these areas that have a research component and novelty factor. The outcome should have scientific value and should be potentially publishable. Conversely, I am not interested to supervise topics that are purely about developing a software prototype (web app, mobile app, etc.) that replicates or repackages already existing ideas.

Final Year Project topics (academic year 2023-2024)

A LEGO piece finding machine The problem: Imagine you have a large pile of unsorted Lego pieces, from a number of different Lego sets, all mixed together. Now you want to build one particular set. You download the building instructions from the Lego website and start building, following these instructions. The main challenge is now to find the required pieces at every step in the building process, by searching through your huge pile of pieces. As you can imagine, this is very tedious and time consuming.

A possible solution: We want to build a machinery that is able to look through a pile of Lego pieces and find required pieces reliably. The required piece is given as an image from the building instructions.

This solution consists of hardware and software. The hardware machinery could be essentially a conveyor belt with a camera attached on top. As the belt moves, it carries all the Lego pieces one by one past the camera, which generates images of these pieces. The images are compared to the piece(s) from the instructions that we are trying to find.

The machine itself could be build out of Lego Technic and controlled by a Raspberry Pi. The Pi runs software that is able to recognise the given Lego piece in the stream of pieces that are presented to the camera on the conveyor belt. This is essentially a machine learning (image recognition) task.

The necessary hardware (Lego Technic pieces, motors, sensors, Raspberry Pi, etc.) will be provided. The best way to interface a Raspberry Pi with Lego Technic motors and sensors nowadays seems to be the Raspberry Pi Build HAT (https://www.raspberrypi.com/products/build-hat/).

A few solutions to similar problems exist and can be found in a Google search. Examples:

https://www.raspberrypi.com/news/raspberry-pi-lego-sorter/ https://jacquesmattheij.com/sorting-two-metric-tons-of-lego/ https://medium.com/@bricksortingmachine/lego-sorting-machine-overview-d390645759f9 https://rebrickable.com/mocs/MOC-90902/pbackx/automated-lego-sorting-machine/

However, none of these seem to do exactly what we want.

Expectations: This project requires a motivated and perseverant student that is willing and able to achieve the best possible result, that actually works in practice. Some familiarity with ML and software development (most likely Python) is expected. Experience with building Lego (e.g. during childhood) and excitement about exploring the world through Lego (be a kid again!) would be a big plus.

Some key ("non-functional") requirements for this project: - The machinery should be as simple and inexpensive as possible, so that many people can replicate (build) it. - Instructions on how to build the machinery should be made available. - The software should be free of charge for anyone to use and improve (e.g. in a public Git repository).

Please also take note of my general expectations as a supervisor of FYP students, outlined above.

  • A. C. ACHDA, A. AZURAT, R. MUSCHEVICI and M. R. A. SETYAUTAMI, 2017. Extending the automated feature model analysis capability of the abstract behavioral specification In: icacsis. 453-458
  • FERRUCCIO DAMIANI, MICHAEL LIENHARDT, RADU MUSCHEVICI and INA SCHAEFER, 2017. An Extension of the ABS Toolchain with a Mechanism for Type Checking SPLs In: ifm. 111-126
  • NAILY, MOH. AFIFUN, SETYAUTAMI, MAYA RETNO AYU, MUSCHEVICI, RADU and AZURAT, ADE, 2017. A Framework for Modelling Variable Microservices as Software Product Lines In: sefm. 246-261
  • HÄHNLE, REINER and MUSCHEVICI, RADU, 2016. Towards Incremental Validation of Railway Systems In: isola. 433-446
  • MAYA R. A. SETYAUTAMI, ADE AZURAT, REINER HÄHNLE and RADU MUSCHEVICI, 2016. A UML Profile for Delta-Oriented Programming to Support Software Product Line Engineering In: splc.
  • MAYA R. A. SETYAUTAMI, REINER HÄHNLE, RADU MUSCHEVICI and ADE AZURAT, 2016. A UML Profile for Delta-Oriented Programming to Support Software Product Line Engineering
  • TRIANDO, RADU MUSCHEVICI and ADE AZURAT, 2016. Incremental Product Configuration in Software Product Line Engineering In: icacsis.
  • RADU MUSCHEVICI, 2015. Dynamic, Auto-adaptive Software Product Lines using the ABS Language In: icacsis. 1-6
  • MUSCHEVICI, RADU, PROENC CA, JOSÉ and CLARKE, DAVE, 2015. Feature Nets, Behavioural modelling of software product lines sosym. Special Issue on Integrated Formal Methods, 1-26
  • MUSCHEVICI, RADU, CLARKE, DAVE and PROENCCA, JOS'E, 2013. Executable Modelling of Dynamic Software Product Lines in the ABS Language In: fosd. 17-24
  • MADS DAM, ANDREAS LUNDBLAD, RADU MUSCHEVICI, KARL PALMSKOG and THIAGO HENRIQUE BURGOS DE OLIVEIRA, 2013. Autonomous Evolving Systems
  • MADS DAM, EINAR BROCH JOHNSEN, MICHIEL HELVENSTEIJN, RADU MUSCHEVICI, RUDOLF SCHLATTE and LIZETH TAPIA, 2013. Evolvability Final Report
  • REINER HÄHNLE, ELVIRA ALBERT, EINAR BROCH JOHNSEN and RADU MUSCHEVICI, 2013. Abstract Behavioral Modelling of Variant-Rich, Concurrent Software Systems
  • RADU MUSCHEVICI, 2013. Modelling Diversity in Software Product Lines
  • WONG, PETER Y.H., ALBERT, ELVIRA, MUSCHEVICI, RADU, PROENC CA, JOSÉ, SCHÄFER, JAN and SCHLATTE, RUDOLF, 2012. The ABS tool suite: modelling, executing and analysing distributed adaptable object-oriented systems sttt. 14, 567-588
  • MICHIEL HELVENSTEIJN, RADU MUSCHEVICI and PETER Y. H. WONG, 2012. Delta modeling in practice: a Fredhopper case study In: vamos. 139-148

School of Computer Science

University of Nottingham
Jubilee Campus
Wollaton Road
Nottingham, NG8 1BB

For all enquires please visit:
www.nottingham.ac.uk/enquire