02161 Software Engineering 1

2024/2025

Course information
Software Engineering 1
Danish
5
BSc
Offered as a single course
Technology Core Courses, Software Technology
Technology Core Courses, Cybertechnology
Programme specific course (BSc), Computer Engineering
Programme specific course (BSc), Software Technology
Programme specific course (BSc), Cybertechnology
Elective course (B Eng), Computer Engineering
Spring F2A (Mon 13-17)
Campus Lyngby
Lectures and project work, where teams of students must collaborate
in the development of a software system.
13 weeks
Evaluation of exercises/reports
Assessment is based on individualized group reports
Written works of reference are permitted
7 step scale , internal examiner
02160
02100/02101 , Basic Java programming skills
Hubert Baumeister , Lyngby Campus, Building 321, Ph. (+45) 4525 3729 , huba@dtu.dk
01 Department of Applied Mathematics and Computer Science
At the Studyplanner
General course objectives
To give students an introduction to software development. To give students skills concerning the solution of a small software development problem, spanning from the problem statement to the implementation and use of the concrete software product.
Learning objectives
A student who has met the objectives of the course will be able to:
  • establish a requirements specification in the form of use case descriptions on the basis of a given problem statement.
  • apply the class and sequence diagrams of UML in order to describe a program design.
  • plan a functional test on the basis of a given requirements specification.
  • plan a structural test on the basis of a given program.
  • complete a small software project and produce a technical documentation, so that important concepts of the problem statement are tracable in the implementation.
  • present their results and analyses in a succinct manner.
  • explain typical phases and roles in a software development process.
  • complete problem, design, and implementation-oriented analyses and explain pros and cons for alternative solutions.
  • use concepts from design-by-contract in connection with the documentation of a program.
  • use program libraries in connection with the development of programs.
  • use some design patterns.
Content
Softwaredevelopment, comprising the typical phases in the development and different roles in development teams and agile processes.

Software documentation, comprising analysis of problem statement, requirements specification, software design, test and implementation. For this purpose, parts of UML is introduced, e.g. use cases, class diagrams and sequence diagrams.

A development environment will be used.
Last updated
02. maj, 2024