DM571: Software Engineering
Study Board of Science
Teaching language: Danish or English depending on the teacher, but English if international students are enrolled
EKA: N330043112, N330043102
Assessment: Second examiner: None, Second examiner: Internal
Grading: Pass/Fail, 7-point grading scale
Offered in: Odense
Offered in: Autumn
Level: Bachelor
STADS ID (UVA): N330043101
ECTS value: 10
Date of Approval: 27-03-2019
Duration: 1 semester
Version: Archive
Entry requirements
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
Examination regulations
Prerequisites for participating in the exam a)
Timing
Autumn
Tests
Mandatory assigments
EKA
N330043112
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) | N330043101, DM571: Software Engineering |
Tests
Oral examination
EKA
N330043102
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
Additional information
The examination form for re-examination may be different from the exam form at the regular exam.
Indicative number of lessons
Teaching Method
At the faculty of science, teaching is organized after the three-phase model ie. intro, training and study phase.
Study phase activities. Reading from textbooks, solving homeworks and applying acquired knowledge to practical projects
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.