Bachelor in Software Engineering - BPU

Short description

Use of information technology has become a natural part of everyday life, both at work and home. Most people remain users of this technology. Bachelor of Science in Software Engineering gives you skills in creating and developing the IT-software of tomorrow. 

Software engineers needs to analyse a company’s need for information technology and design architecture for the requested software. This bachelor focuses on developing stable, effective, and user-friendly software.

Through this study program you will get an understanding of IT strategy, quality management, user-friendly software, project management, and economy. Solving practical problem is emphasized, often using different programming languages (C, C++, Java, PHP) and unified modeling languages (UML). Projects are a common way of working, and the study ends with a software development of larger scale for a company.

Language: The lectures are mainly held in Norwegian.


3 years, 180 ECTS credits Undergraduate programme leading to a Bachelor's degree.The study programme is offered by the Faculty of Computer Science and Media Technology.

Expected learning outcomes

After completing the study you will have the ability to develop computer games from scratch for business and personal use.  Our graduates are able to work as part of a large team to develop interactive applications that satisfy users demands.  In particular, you will have the ability to work in systematic ways together with customers as well as in programming teams. 

The specific learning outcomes include:


  • The  candidate can explain professional work methods for development of IT systems
  • Knowledge of alternative software development processes and the procedures of documentation.
  • Knowledge of software architectures, internet technology, database and HCI.
  • An understanding of open source software development.
  • The ability of writing effective programs in different programming languages and use IDEs
  • A basic knowledge of maths, algorithms and problem solving. 


  • The ability to apply what you have learned to specify and analyse requirements and design software solutions
  • Skills in solving practical problems in computer programming.
  • The ability to make judgements of project ideas in a business perspective and estimating effort needs
  • Beeing able to work in large development project as core programmer and taking the role of technical project manager in small projects. 
  • The candidate can use tools which support development of IT systems and participate in defining and enabling development environments.

General Competence

  • In insight into academic as well as business forms of communication and the ability to write reports
  • The ability to bridge the gap between business partners and technological experts in development teams.
  • An understanding of ethical, environmental and economical aspects of applying new technologies 

In your final semester you will develop a software as part of the Bachelor's thesis. This capstone project will help integrate all the subjects that are part of the bachelor degree and provide vital group work experience.

This bachelor qualifies the students to professions as system developers, software developers, IT-consultants, web developers, or system architects both in private and public sector. 

Target Group

Students interested in becoming professional software developers.

There is no requirement for particular computer skills before the course starts.

Admission Criteria

General matriculation standard with special requirements in Mathematics (R1 or S2).

Course Structure

The education leading to the degree ”Bachelor i Programvareutvikling” is a comprehensive three-year professional training combining technical and theoretical knowledge with practical skills in software development. The study programme of this three year higher education consists of : General subjects (Mathematics, Infomation Security) 20 ECTS, Computer Science (Computer Architecture, Operating Systems) 20 ECTS, Software Development (Software Engineering, Applications Development) 60 ECTS, Programming 40 ECTS, Management and Elective Courses subjects 30 ECTS, Development and Research project 20 ECTS.

Table of subjects

Bachelor in Software Engineering 2014-15

Coursecode Course name C/E *) ECTS each. semester
  S1(A) S2(S) S3(A) S4(S) S5(A) S6(S)
IMT1031 Fundamental Programming C 10          
REA1101 Mathematics for computer science C 10          
IMT1121 Introduction to Information Security C 10          
IMT1082 Object-Oriented Programming C   10        
IMT2243 Software Engineering C   10        
IMT2431 Data Communication and Network Security C   10        
Sum: 30 30 0 0 0 0
*) C - Compulsory course, E - Elective course

Bachelor in Software Engineering 2015-16

Coursecode Course name C/E *) ECTS each. semester
  S1(A) S2(S) S3(A) S4(S) S5(A) S6(S)
IMT2021 Algorithmic Methods C     10      
IMT2571 Data Modelling and Database Systems C     10      
IMT2072 Ergonomics in digital media C     10      
IMT2291 Web Technology C       10    
IMT2282 Operating Systems C       10    
IMT3681 IT-management C       5    
Elective course, 5 ECTS E       5    
Sum: 0 0 30 30 0 0
*) C - Compulsory course, E - Elective course

Bachelor in Software Engineering 2016-17

Coursecode Course name C/E *) ECTS each. semester
  S1(A) S2(S) S3(A) S4(S) S5(A) S6(S)
IMT3281 Application Development C         10  
IMT3102 Object-Oriented Software Development C         10  
IMT3662 Mobile Development Theory C         5  
Elective, 5 ECTS E         5  
Elective course, 10 ECTS E           10
IMT3912 Bachelor's thesis AIMT C           20
Sum: 0 0 0 0 30 30
*) C - Compulsory course, E - Elective course


Coursecode Course name C/E *) ECTS each. semester
  S1(A) S2(S) S3(A) S4(S) S5(A) S6(S)
IMT3441 Database and application administration E       10    
REA1081 Statistics E       5    
IMT2661 Mobile Media Design E       5    
SMF1071 Organisational Management E       5    
IMT3612 GPU Programming E       5    
IMT3501 Software Security E         10  
IMT3672 Mobile Development Project E         5  
IMT3602 Professional Programming E           5
IMT3541 Supervised Practicum in Media and Informatics E           10
IMT3591 Artificial Intelligence E           10
Sum: 0 0 0 0 0 0
*) C - Compulsory course, E - Elective course