Empirical Software Engineering
Empirisk programvaruteknik
About the Syllabus
Grading scale
Course modules
Position
The course is mandatory whitin Software Engineering and Management, Master's Programme (N2SOF).
The course can be part of the following programmes:
- Computer Science, Master's Programme (N2COS)
- Game Design & Technology, Master's Programme (N2GDT)
- Applied Data Science, Master's Programme (N2ADS)
The course is a also a single-subject course at Gothenburg University.
Main field of study with advanced study
Entry requirements
To be eligible for the course the student should have a bachelor degree in Software Engineering, Computer Science or equivalent.
Applicants must prove knowledge of English: English 6/English level 2 or the equivalent level of an internationally recognized test, for example TOEFL, IELTS.
Content
This course is for students who are interested in the empirical methods applied to the field of software engineering. The course introduces quantitative and qualitative methods in software engineering with accompanying statistical methods used for analysis.
The course contains:
- Descriptive and inferential statistical methods applied to software engineering.
- Conducting qualitative and quantitative methods in software engineering.
- Methods for analyzing quantitative and qualitative data in software engineering.
- Usage of statistical tools.
Objectives
After completion of the course the student is expected to be able to:
Knowledge and understanding
- describe, understand, and apply empiricism in software engineering
- describe, understand, and partly apply the principles of case
studyresearch/experiments/surveys - describe and understand the underlying principles of meta-analytical studies
- explain the importance of research ethics
- state and explain the importance of threats to validity and how to control said threats
- describe and explain the concepts of probability space (incl. conditional probability), random variable, expected value and random processes, and know a number of concrete examples of the concepts
- describe Markov chain Monte Carlo methods such as Metropolis
- describe and explain Hamiltonian Monte Carlo
- explain and describe multicollinearity, post-treatment bias, collider bias, and confounding
- describe and explain ways to avoid overfitting
Competence and skills
- assess suitability of and apply methods of analysis on data
- analyse descriptive statistics and decide on appropriate analysis methods
- use and interpret code of ethics for software engineering research
- design statistical models mathematically and implement said models in a programming language
- make use of random processes, i.e., Bernoulli, Binomial, Gaussian, and Poisson distributions, with over-dispersed outcomes
- make use of ordered categorical outcomes (ordered-logit) and predictors
- assess suitability of, from a ontological (natural process) and epsitemological (maxent) perspective, various statistical distributions
- make use of and assess directed acyclic graphs to argue causality
Judgement and approach
- state and discuss the tools used for data analysis and, in particular, judge their output
- judge the appropriateness of particular empirical methods and their applicability to attack various and disparate software engineering problems
- question and assess common ethical issues in software engineering research
- assess diagnostics from Hamiltonian Monte Carlo and quadratic approximation using information theoretical concepts, i.e., information entropy, WAIC, and PSIS- LOO
- judge posterior probability distributions for out of sample predictions and conduct posterior predictive checks
Sustainability labelling
Form of teaching
Lectures, laboratory work, group supervision, problem-based
teaching.
Language of instruction: English
Examination formats
The course is examined by written lab assignment carried out in groups of normally 3-4 students (2.5 hec). The assignments are graded individually, taking into account the group work as well as the student's individual contribution to the group work. The course is also examined by an individual written exam carried out in an examination hall (5 hec). The assignment are both theoretical and practical in nature.
If a student who has been failed twice for the same examination element wishes to change examiner before the next examination session, such a request is to be granted unless there are specific reasons to the contrary (Chapter 6 Section 22 HF).
If a student has received a certificate of disability study support from the University of Gothenburg with a recommendation of adapted examination and/or adapted forms of assessment, an examiner may decide, if this is consistent with the course’s intended learning outcomes and provided that no unreasonable resources would be needed, to grant the student adapted examination and/or adapted forms of assessment.
If a course has been discontinued or undergone major changes, the student must be offered at least two examination sessions in addition to ordinary examination sessions. These sessions are to be spread over a period of at least one year but no more than two years after the course has been discontinued/changed. The same applies to placement and internship (VFU) except that this is restricted to only one further examination session.
If a student has been notified that they fulfil the requirements for being a student at Riksidrottsuniversitetet (RIU student), to combine elite sports activities with studies, the examiner is entitled to decide on adaptation of examinations if this is done in accordance with the Local rules regarding RIU students at the University of Gothenburg.
Grades
Sub-courses
- Assignments, 2.5 credits
Grading scale: Pass (G) and Fail (U) - Written hall examination, 5 credits
Grading scale: Pass with distinction (5), Pass with credit (4), Pass (3) and Fail (U)
The grading scale comprises: Pass with distinction (5), Pass with credit (4), Pass (3) and Fail (U).
In order to pass the course both the assignments and the written hall examination have to be approved. The final grade in the course is decided from the grade of the written hall examination.
Course evaluation
The course is evaluated through meetings both during and after the course between teachers and student representatives. Further, an anonymous questionnaire is used to ensure written information. The outcome of the evaluations serves to improve the course by indication which parts could be added, improved, changed or removed.
Other regulations
The course is a joint course together with Chalmers.
The course replaces the course DIT278, 7.5 credits. The course cannot be included in a degree which contains DIT278. Neither can the course be included in a degree which is based on another degree in which the course DIT278 is included.