CS-701 / 2 crédits
Enseignant: Holmes Reid
Remark: Seminar-based software engineering research course. From 28.02.2022 to 03.06.2022
Only this year
Students will be exposed to modern software engineering research and will learn how to evaluate, synthesize, and apply these research findings to their own independent projects. Time will also be spent on quantitave and qualitative approaches for evaluating research findings.
Software is built and maintained by engineers. As the complexity of modern systems increases, so do the challenges facing these engineers. Researchers and practitioners have built a wide variety of tools to help engineers successfully evolve their systems. These tools help developers in diverse ways including through advanced programming language support (such as program analyses), approaches for evaluating and improving quality (such as fuzz testing), tools for assessing and improving system performance (such as microservice performance debugging), and mechanisms for increasing engineering productivity (such as assertion generation), among others.
In this seminar we will examine approaches that have been developed to help engineers evolve modern systems as a lens to discuss how to propose and evaluate tools that aim to improve software. Topics will be tailored based on the interests and research challenges facing seminar participants. The weekly seminar will comprise primarily of short paper-based presentations and collaborative discussions.
Topics that will be covered include:
* Software engineering
* Software testing
* Program analyses
* Software development tool research
* Developer information needs
* Quantitative analyses
* Qualitative analyses
* Design of empirical studies
No required or recommended courses, applicable for all graduate students.
By the end of the course, the student must be able to:
- Assess / Evaluate
- Analyze novel research that can improve how software is built and maintained by software engineers in practice.
Dans les plans d'études
- Nombre de places: 12
- Forme de l'examen: Oral (session libre)
- Matière examinée: Human aspects of software engineering
- Cours: 14 Heure(s)
- Exercices: 14 Heure(s)