Programme outline

Master of science in computer science

Description of the programme

The programme offers a structured range of courses leading to the Masters degree in computer science. Courses can also be pursued at institutes of higher education in Sweden or abroad. The programme offers great freedom of choice, and the opportunity to create individual combined studies is one of the programme's strengths. Teaching is linked to current research.

Comprehensive aims of the education

The education will give students detailed knowledge in the main field of computer science. The emphasis is on analytical ability and knowledge that will be of long-term benefit in an area in the process of rapid development. The programme thus does not focus on any particular programming languages, hardware platforms or operating systems. Those who have completed the programme are able to perform critical analysis, apply their knowledge in the field of computer science and independently acquire the new knowledge required. A typical example is the fact that computer scientists can very quickly learn new programming languages.

Aims as expected results of the study

In line with the aims stipulated in the Swedish University Ordinance, within the field of the programme students shall:

1.be able to define, formulate and resolve computer-science problems independently;

2.have the wide-ranging and detailed knowledge of computer science necessary for further research studies or for activities in the field of industry and commerce or public office;

3.be able to use, compare and criticise various computer-science models in order to explain scientific problems, and shall give reasons for when the different models are applicable;

4.have developed computer-science skills applicable in other areas, e.g. be able to use computer-science methods when resolving problems in the fields of technology or natural sciences;

5.have detailed knowledge of methods and principles regarding computers as a versatile aid - above all in the fields of mathematics, natural sciences and technology, but also in other subject areas;

6.be able to use computer-science terminology in order to present, explain and discuss various computer-science problems;

7.be able to use knowledge of mathematics or allied fields of natural science in order to intensify understanding of computer science;

8.be well acquainted with the structure of computer-science theory and be able to apply this theory to fields outside pure computer science;

9.be able to write computer programs in several different development environments and programming paradigms, and quickly be able to learn new languages and development environments;

10.be able to formulate models, problems and their solutions with the aid of algorithms, computers and programs;

11.be able to follow developments in knowledge and evaluate new findings by critically using computer-science literature and databases;

12.be able to critically summarise the state of knowledge in the specialist area and allied fields, including the results of new research;

13.beyond what is required for the first degree, possess detailed knowledge, realise its limitations and thereby be able to broaden their area of knowledge quickly and at their own initiative.

The programme shall form the basis for active participation in a research project, either as a doctoral student on a PhD programme, as an employee in a research group in the field of industry and commerce, or for advanced professional activities in a wide-ranging field of work.

Programme outline

The programme has two specialisations, A. Computer science, B. Sino-Swedish specialisation in computer science and software engineering. The latter is jointly taught with School of Software Engineering, Tongji University, Shanghai, China.

The courses of the programme

A Computer Science

The order of courses in the programme is shown below per study year.

"CP" is a link to the current course homepage.
"OP" is a link to the old course homepage.

Autumn term year 1

Recommended Courses Recommended Courses
Advanced Computer Science Studies in Sweden, 5hp CP Database Design I, 5hp CP
Computer Networks, 5hp CP Large Scale Programming (continued), 10hp
Functional Programming I, 5hp CP Programming Theory (continued), 10hp
Large Scale Programming, 10hp CP Testing Methodology, 5hp CP
Object-oriented Design, 5hp CP Alternative Courses
Programming Theory, 10hp CP Advanced Computer Architecture(continued), 10hp
Alternative Courses Advanced Functional Programming, 5hp CP
Advanced Computer Architecture, 10hp CP Advanced Visual Interfaces, 5hp OP
Algorithm and Data Structure I, 5hp CP Applied Logic (continued), 10hp
Applied Logic, 10hp Compiler Design I, 5hp CP
Artificial Intelligence, 5hp CP Computing Education Research (continued), 10hp
Computing Education Research, 10hp CP Constraint Programming (continued), 10hp
Constraint programming, 10hp CP Human Computer Interaction, 5hp CP
Data Mining I, 5hp CP Medical Informatics, 5hp CP
Programming, bridging course, 10hp CP Programming, bridging course (continued), 10hp
Real Time Systems I, 5hp CP Software Engineering, 5hp CP

Spring term year 1

Period 3 Period 4
Advanced Interaction Design, 5hp CP Compiler Design II (continued), 10hp
Compiler Design II, 10hp Computer Assisted Image Analysis I, 5hp CP
Compiler Design Project, 5hp CP Computer Graphics, 10hp OP
Computer Assisted Image Analysis I, 5hp CP Computer Networks III, 10hp CP
Computer Networks II, 10hp CP, OP Cryptography, 5hp OP
Database Design II, 5hp CP Data Mining II, 5hp
Distributed Systems, 5hp OP E-commerce Project, 10hp
Human Computer Interaction, 5hp CP High performance computing and programming, 5hp OP
Machine Learning, 10hp OP IT, ethics and organization, 5hp OP
Programming of Parallel Computers, 10hp OP IT Systems and Human Factors, 5hp
Provably Correct Software, 10hp OP Machine Learning (continued), 10hp
Secure Computer Systems I, 5hp OP Provably Correct Software (continued), 10hp
Software Engineering, 5hp OP Secure Computer Systems II, 5hp OP
User Centered Systems Design, 5hp OP Software Architecture with Java, 5hp OP
User Interface Programming I, 5hp CP User Interface Programming II, 5hp OP
Wireless Communications and Embedded Systems, 10hp CP Wireless Communications and Embedded Systems (continued), 10hp

Year 2

The student can, during semester 3, select among the courses offered for period 1 and period 2 which are listed above, provided that the prerequisite requirements are fulfilled. It is also possible to take one of the courses

Period 1 Period 2
Project CS, 30hp CP
IT and Society, 15hp CP

The student is expected, during semester 3 - 4, to take one of the courses

Period 1 Period 2 Period 3 Period 4
Degree project E in Computer Science, 30 hp
Degree Project E in Computer Science, 45 hp

B Sino-Swedish Specialisation in Computer Science and Software Engineering

Semester 1 and 2 takes place at Uppsala University, while semester 3 takes place at Tongji University. Semester 4 can be taken at any of the two universities.

Semester 1

During semester 1, the student must take the two courses Computer Networks I and Human-Computer Interaction, if he or she cannot demonstrate a similar competence. The remaining courses are selected from semester 1 in the computer science specialisation.

Semester 2

The student can choose between two tracks: Computer Networking and Human-Computer Interaction.

A student taking the Computer Networking track selects from the following courses:

Period 3 Period 4
Computer Networks II, 10hp CP, OP Computer Networks III, 10hp CP
Distributed Systems, 5hp OP Cryptography, 5hp OP
Secure Computer Systems I, 5hp OP Wireless Communications and Embedded Systems (continued), 10hp
Wireless Communications and Embedded Systems, 10hp CP

A student taking the Human-Computer Interaction track selects from the following courses:

Period 3 Period 4
Machine Learning, 10hp OP E-commerce Project, 10hp
Software Engineering, 5hp OP IT, ethics and organization, 5hp OP
User Centered Systems Design, 5hp OP IT Systems and Human Factors, 5hp
User Interface Programming I, 5hp CP Machine Learning (continued), 10hp
User Interface Programming II, 5hp OP

The student has the right to exchange courses corresponding to a maximum of 15 hp from computer science to courses with, in a broad sense, a cultural content relevant for the specialisation.

Year 2

Semester 3 is taught at Tongji University according to a separate curriculum.

During semester 4, the student takes 1DT540, Degree project E in Computer Science, 30 hp or 1DT550, Degree Project E in Computer Science, 45 hp hp or take corresponding courses at Tongji University.

Students, taking the Sino-Swedish specialisation in computer science and software engineering, who are only offered payable seats at Tongji University, or who, for other reasons cannot study at this university, are offered courses from the computer science specialisation.