Copenhagen School of Design and Technology


Working as a Software Engineer (EN)

Danish title
Working as a Software Engineer (EN)
Study programme
Business Economics & Information Technology
Type of education
Full time education
Level of education
Bachelor Programme
5. semester
Duration of the subject/module
1 semester
Programme elements
Start time
Guldbergsgade 29 N, København N
Subject number
Responsible for the subject(s)/modul(es)
Tue Hellstern
  • Purpose and learning objectives

    As a professional you will be working together both with business people and software engineers. This course will focus on extending your understanding of the software development process and thereby your ability to work together with software engineers.
    Description During your SD and SC classes you have been working with many topics that are relevant for your ability to understand and participate in the software engineering process. The course will build on this understanding and will increase your skills by integrating the topics from SD and SC and give you more experience with the topics.

    The course is for students who want to increase their skills to build IT systems, including, in particular, their programming skills. Participants will not become software engineers by participating, but their skills come at a level that will facilitate collaboration with software engineers.

    Components in the course
    • Object oriented software development
    o Analysis, design and programming
    • Handling the semantic gap between problem and solution domain
    o Domain driven design – from domain to code
    • Well-designed software
    o High cohesion and low coupling o Encapsulation o Interfaces, components and services
    • Design patterns
    o Reuse of known solutions to design problems
    • Modeling
    o UML
    o Forward and reverse engineering
    • Experimental, iterative and incremental development in practice

    The course will be an interaction between theory and practice, but the focus will be on problem-based learning. realization of smaller but fully functioning applications.
    The main elements of the project and therefore the course will be the following:
    • Which applications will we build?
    • How do we break down our application?
    • How do we work with models to design it?
    • How do we program it?


    • Different programming languages
    • The semantic gap as a challenge
    • The use of models in software engineering
    • Implementation and use of design patterns in an application


    • Can create smaller but technically well-designed applications
    • Can use interfaces as contracts between components in a system
    • Can use UML and other models both in a forward and a reverse engineering process
    • Can work with ubiquitous language and semantic gap in practice


    • Can choose relevant use of models in an unknown situation
    • Can interact with people from the solution domain (software engineers)
    • Computational Thinking

  • Type of instruction
    The course will focus on project and problem-based learning. We will be working on one or more real but small project. We will do some tasks together in the class (modelling and programming) and you will do some tasks in smaller groups. We will also as a whole class divide a system into smaller parts and assign the responsibility for building these parts to individual groups.
  • Subject/module requirement for participation

    Academic requirement for participation
    Primary language used for programming will be Python.

    Equipment needed to participate
    Own computer.

  • Exam

    The learning outcomes of the exam are identical with the learning outcomes of the subject(s)/modul(es)

    Prerequisites for access to the examination
    Portfolio from each day must be provided.
    Exam in one or more subjects
    Subject/module is tested standalone
    Type of exam
    Oral examination
    Individual exam or group exam
    Exam languages
    Permitted exam aids
    Available exam aids
    Type of evaluation
    7-point grading scale
    Internal censure
hours of teaching
hours of preparation
The figure shows the extent of workload related to the subject divided into different study activities.

In the subject Working as a Software Engineer (EN) you will receive 65 hours of instruction, which corresponds to 86 lessons (1 lesson = 45 min.) and 24% of your total workload for the subject.

The teaching primarily consists of the following activities: digital exercises.
The preparation primarily consists of the following activities: reading the curriculum, exercises.

Read about KEAs Study Activity Model

*KEA can deviate from the number of hours if this is justified by special circumstances