Official course description:

Full info last published 15/05-23
Course info
Language:
English
ECTS points:
15.0
Course code:
KSADVSE1KU
Participants max:
30
Offered to guest students:
yes
Offered to exchange students:
yes
Offered as a single subject:
yes
Price for EU/EEA citizens (Single Subject):
21250 DKK
Programme
Level:
MSc. Master
Programme:
MSc in Computer Science
Staff
Course manager
Professor, Co-Head of the PhD School,
Teacher
Associate Professor
Teacher
Associate Professor
Teacher
Associate Professor
Teacher
Associate Professor
Course semester
Semester
Efterår 2023
Start
28 August 2023
End
26 January 2024
Exam
Exam type
ordinær
Internal/External
ekstern censur
Grade Scale
7-trinsskala
Exam Language
GB
Abstract

The purpose of this course is to give a thorough understanding of innovative processes, methods, and tools for software engineering as well as an introduction to a number of theoretical concepts that allow you to reflect on how those processes, methods, and tools support software engineering as a cooperative activity. The course is designed to enable the student to embrace future methodological developments in software engineering. The course combines theoretical reflection of software engineering and hands-on engagement with industrial or open source software engineering practice.

Description

Software engineering today is more and more diversifying: contract development and in-house development has long been complemented by generic software product development and implementation. The provisioning of software as services via cloud servers again changes the game. Agile development is complemented by continuous software engineering and the DevOps model. More and more end users customise and configure their software. To address these challenges, software engineering is conceptualised as 'designing design' (Floyd), that means structuring, organising and supporting the design and development of software.
The Advanced Software Engineering course deepens the reflection on the process side of software engineering and the interaction between processes, technical design and the use context of the software. The goal is to enable the participants to evaluate and compare different methods and approaches. The empirical part of the course and possible practical experience are used to challenge research results and vice versa.
The course is organised in a seminar track and an empirical project. In the seminar we discuss core topics of software engineering as well as new developments and relate it to current research. The students are provided with a number of theoretical concepts to relate the software processes to the context of use and the technical design. The specific topics will be updated from year to year by the teacher team based on current research developments. Example for themes are:
•    Software Process models: History, Agile development, Continuous Software Engineering/DevOps
•    Product Quality, Quality in Use, Process Quality, Software Process Improvement
•    Project Management, Managing and leading people
•    Requirements Engineering, Requirements Analysis, Modelling Languages, Compliance
•    User Analytics, End User Development, User Driven Innovation
•    Software Evolution, Dependency Management, Technical Depth, Software Visualisation
•    Software (Product) Ecosystems
•    Global Software development, Open Source
For empirical project, small groups of 1 to 3 students study an industrial software project or an open source project. Based on the initial results they might point to possible improvements.


Formal prerequisites

The student should have read an introductory course in software development and - maybe as part of it - participated in a small team project of at least six team members.

Further, you are expected to have read the Software Architecture course as the first part of the specialisation in Software Engineering.

Moreover, the student must always meet the admission requirements of the IT University.

Intended learning outcomes

After the course, the student should be able to:

  • Analyse, discuss and relate current research in software engineering to practical software engineering problems
  • Discuss the advantages and disadvantages of different methods, principles and practices presented to organise and support software development.
  • Empirically investigate software engineering practices and report about the findings reflecting on relevant concepts from research literature.
  • Identify practice problems and discuss potential remedies based on research literature.
Learning activities

In the seminar track, the lectures are combined with student centered learning activities, especially reading, analysis and discussion of scientific literature related to the topics and presentation of the results.  The learning activities are chosen so that students learn to understand, analyse and relate academic literature to practical or research problems. The course literature will consist of a compendium of ca 35 scientific articles.

For the empirical project, the student teams will cooperate with companies or engage with open source software projects and systematically study some software engineering practices or method. The project can involve practical contribution to the company. Besides supervision, you will present your project twice during the term. 

Mandatory activities

1. Students work in teams on an empirical project. 

2. The students will be expected to shortly present and prepare the discussion of a number of articles or themes throughout the course.


The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.

Course literature

The course literature consists of ca 35 articles and is published in the course page in LearnIT.

Student Activity Budget
Estimated distribution of learning activities for the typical student
  • Preparation for lectures and exercises: 30%
  • Lectures: 13%
  • Exercises: 12%
  • Project work, supervision included: 25%
  • Exam with preparation: 20%
Ordinary exam
Exam type:
D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Exam submission description:
Students submit a project report based on the empirical project in groups up to three students. The project report is expected to contain a motivation and discussion of the empirical method; a presentation of the empirical results; and a discussion that relates the results to the relevant literature.

The oral exam will consist of a group presentation and questioning regarding the project and an individual part examining the curriculum.
The individual part of the examination will start with a short presentation by the student of a randomly selected article out of ca 15 articles that have been discussed in the course and are part of the curriculum. To prepare the short presentation you will have 30 minutes preparation time on the same day. The preparation will take place in an invigilated room close to the exam room. The questioning in the individual part of the examination will also cover the whole curriculum.

Duration of Group Presentation and questioning: 15 minutes.
Duration of Individual part exam: 20 minutes.
Group submission:
Group
  • group size: 2-3 students
Exam duration per student for the oral exam:
40 minutes
Group exam form:
Mixed exam 1 : Individual and joint student presentation followed by an individual and a group dialogue. The students make a joint presentation followed by a group dialogue. Subsequently the students are having individual examination with presentation and / or dialogue with the supervisor and external examiner while the rest of the group is outside the room.


reexam
Exam type:
D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Exam duration per student for the oral exam:
40 minutes

Time and date
Ordinary Exam - submission Mon, 8 Jan 2024, 08:00 - 14:00
Ordinary Exam Wed, 24 Jan 2024, 09:00 - 21:00
Ordinary Exam Thu, 25 Jan 2024, 09:00 - 21:00
Reexam Tue, 27 Feb 2024, 08:55 - 10:00
Reexam - submission Wed, 28 Feb 2024, 08:00 - 14:00
Reexam Wed, 13 Mar 2024, 16:00 - 18:00