DM889: Software Engineering

Study Board of Science

Teaching language: Danish or English depending on the teacher, but English if international students are enrolled
EKA: N340121112, N340121102
Assessment: Second examiner: None, Second examiner: Internal
Grading: Pass/Fail, 7-point grading scale
Offered in: Odense
Offered in: Autumn
Level: Master

STADS ID (UVA): N340121101
ECTS value: 10

Date of Approval: 02-03-2022


Duration: 1 semester

Version: Archive

Comment

The course is co-read with DM571. 

Entry requirements

The course is only for computer science students with a minor.
The course cannot be followed by students who have passed DM571.

Academic preconditions

Students taking the course are expected to be able to program on a level corresponding to the course DM550 Introduction to Programming.

Course introduction

The aim of the course is to enable the student to use concepts, models, and methods for structuring software itself as well as the software development process, which is important during large programming projects in the rest of the study programme, as well as for a career in software development.

The course builds on the knowledge acquired in the courses DM550 Introduction to Programming, and gives an academic basis for doing a bachelor project as well as following elective Master's level courses on advanced subjects within software architecture.

Expected learning outcome

The learning objective of the course is that the student demonstrates the ability to:
  • Describe in detail the core activities of the software development process.
  • Describe and discuss process models, and perform substantiated choices between these.
  • Describe tools and modeling formalisms from the course.
  • Describe and discuss software patterns and other architectural structures, and perform substantiated choices between these.
  • Apply knowledge and methods from the course in concrete settings in programming projects.
  • Discuss the influence and impact of software on humans, organizations, and society, including ethical issues.

Content

The following main topics are contained in the course:
  • The core activities of the software development process: user requirements, design, implementation, documentation, test, deployment, maintenance.
  • Process models, traditional and agile (with a focus on the latter).
  • Software design patterns and other structural/architectural issues.
  • Tools and modeling formalisms.
  • Software in context: user interfaces, IT and organizations, IT and society, ethics.

Literature

See itslearning for syllabus lists and additional literature references.

Examination regulations

Prerequisites for participating in the exam a)

Timing

Autumn

Tests

Mandatory assigments

EKA

N340121112

Assessment

Second examiner: None

Grading

Pass/Fail

Identification

Full name and SDU username

Language

Normally, the same as teaching language

Examination aids

To be announced during the course

ECTS value

0

Additional information

The prerequisite examination is a prerequisite for participation in exam element a).

Exam element a)

Timing

January

Prerequisites

Type Prerequisite name Prerequisite course
Examination part Prerequisites for participating in the exam a) N340121101, DM889: Software Engineering

Tests

Oral examination

EKA

N340121102

Assessment

Second examiner: Internal

Grading

7-point grading scale

Identification

Student Identification Card

Language

Normally, the same as teaching language

Examination aids

To be announced during the course

ECTS value

10

Indicative number of lessons

84 hours per semester

Teaching Method

At the faculty of science, teaching is organized after the three-phase model ie. intro, training and study phase.
  • Intro phase (lectures, class lessons) - 42 hours
  • Training phase: 42 hours, including 42 hours tutorials 
The intro phase facilitates an introduction to new material and topics, which in the skills training phase and the study phase are processed via reading of material, exercises, and project work in order to validate and broaden the acquired knowledge.

Study phase activities. Reading from textbooks, solving homeworks and applying acquired knowledge to practical projects

Teacher responsible

Name E-mail Department
Carsten Grønbjerg Lützen cgl@mmmi.sdu.dk SDU Software Engineering
Rolf Fagerberg rolf@imada.sdu.dk Algoritmer

Timetable

Administrative Unit

Institut for Matematik og Datalogi (datalogi)

Team at Educational Law & Registration

NAT

Offered in

Odense

Recommended course of study

Profile Education Semester Offer period

Transition rules

Transitional arrangements describe how a course replaces another course when changes are made to the course of study. 
If a transitional arrangement has been made for a course, it will be stated in the list. 
See transitional arrangements for all courses at the Faculty of Science.