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 in Software Engineering gives you skills in creating and developing the IT-software of tomorrow. 

Software engineers needs to analyse a company’s need of 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, 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 project 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 studyprogram you will have the ability to develop computer software 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 using modern methodologies and development environments. 

The specific learning outcomes include:


  • The  candidate can explain professional methodologies for development of IT systems
  • Knowledge of alternative software development processes and the procedures of documentation.
  • Knowledge of software architectures, design patterns, internet technology, database and HCI.
  • Understanding open source software development process.
  • The ability of writing effective programs in different programming languages and use IDEs
  • A basic knowledge of maths, algorithms and problem solving related to computer science. 


  • The ability to apply methods ad techniques in requirement analysis and software design
  • Skills in solving practical problems in computer programming.
  • The ability to make judgements of project ideas in a business perspective and estimate effort needs
  • Beeing able to work in large development project as core programmer and taking the role of technical project manager in smaller projects. 
  • The candidate can use tools which support development of IT systems and participate in defining and enabling development environments.

General Competence

  • Insight in 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 like system developer, software developer, IT-consultant, web developer, or system architect both in business 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” / "Bachelor in Software Engineering" 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, Mobile Applications) 60 ECTS, Programming 40 ECTS, Management and Elective Courses subjects 20 ECTS, Development and Research project 20 ECTS.

Technical Prerequisites

Students are expected to bring their own laptop.

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)
IMT2072 Ergonomics in digital media C     10      
IMT2571 Data Modelling and Database Systems C     10      
IMT2021 Algorithmic Methods C     10      
IMT2282 Operating Systems C       10    
IMT2291 Web Technology 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  
Elective course, 10 ECTS E         10  
IMT3912 Bachelor's thesis C           20
IMT3673 Mobile/Wearable Programming C           10
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)
REA1081 Statistics E       5  
IMT3441 Database and application administration E       10  
IMT3591 Artificial Intelligence E       10  
IMT3541 Supervised Practicum in Media and Informatics E       10  
IMT3501 Software Security E         10
SMF1042 Basic Economics E         10
IMT2531 Graphics Programming E         10
IMT2681 Cloud Technologies E         10
Sum: 0 0 0 0 0
*) C - Compulsory course, E - Elective course