The curriculum offers a comprehensive education in computer science, foundational training in business, and the Contextual Studies programme, which help develop the critical thinking skills that define the education at the University of St.Gallen. This holistic and interdisciplinary approach specifically prepares our students for a complex and ever-changing future.
The curriculum consists of various one-semester courses, many of which build directly on previous courses, ensuring that students progressively deepen their knowledge. A distinctive feature of our curriculum is the proportion of courses dedicated to developing business competencies (15% of the programme), contextual studies (10%), and our Bachelor’s project. Below, we provide a detailed description of each component.
The curriculum of the Computer Science programme is designed to foster comprehensive, theoretically grounded, and practically oriented skill development. We view competent graduates as individuals equipped with much more than factual knowledge. Therefore, our courses are structured to include knowledge application and the acquisition of additional soft skills such as problem-solving abilities, teamwork, effective communication, project management, and independence.
Our overarching learning objectives are:
In the following sections, we outline how these learning objectives are achieved through strategically combined areas of study.
The illustration of the curriculum shows how the course plan is divided into courses that build technical competencies in computer science (green), business competencies (white), and reflective skills (beige). This makes the computer science programme at the University of St.Gallen a comprehensive education in computer science that also connects with business and societal issues, the start-up world, and interdisciplinary contexts.
The software-oriented courses build progressively upon one another. Programming is introduced at the very beginning. In the first semester, students learn the essential concepts of programming from the ground up and apply them using Python. In the second semester (Programming Methods), more complex concepts are taught, and students apply these in various projects using Java. The courses "Design of Software Systems" and "Software Engineering" then abstract from this foundation, focusing more on the efficient and effective planning and implementation of software projects. Students thus learn not only how to write code but also how to coordinate projects, work in agile teams, and acquire other important skills.
By 'systems,' we refer to complex systems that consist of hardware, software, and data, which serve to process, store, and transmit information. In systems-oriented courses, students learn, for example, about the various components of computers, their functions and behaviors, as well as data storage and transmission protocols. Throughout the semesters, our students' understanding expands from individual devices to computer networks and distributed systems.
The development of theoretical and mathematical foundations plays a central role, especially at the beginning of the programme. Mathematics is present in all possible applications of computer science. The concepts and tools taught in the theoretical and mathematical foundation courses are essential for solving complex problems in computer science. They also promote a structured way of thinking and enable students to develop efficient algorithms.
The data-oriented courses include, on one hand, the course on databases (how data is stored, how to access it, and what design dimensions exist?), as well as the application-focused courses "Statistics for Data Science" and "Artificial Intelligence." These courses are practice-oriented and allow our students to work professionally with data.
In addition to the foundational courses generally understood to be part of an Informatics degree curriculum, we offer a selection of courses on various relevant topics in Informatics. These Informatics electives can be assembled according to individual interests and are aligned with the research areas of our departments. An overview of the departments can be viewed on the website of the Institute of Computer Science.
As part of the Bachelor project, students work in small groups through a complete software engineering project. The thematic focus for these projects is proposed by the faculty, resulting in various areas of emphasis aligned with the research directions of the supervisors. The project allows students to independently apply what they have learned (methodological and conceptual) in a practical setting.
The Bachelor thesis is an individual, research-oriented final project. Students are supervised by our faculty members during this process. Some of these theses are also further developed into marketable products, publishable contributions to research conferences, or as groundwork for a later Master’s thesis. With 15 ECTS credits, the Bachelor thesis is the largest individual study achievement completed during the Bachelor program.
The courses in economics and law account for 15 percent of the curriculum. Specifically designed introductory and advanced courses in business administration, economics, and law are offered for the Bachelor in Computer Science. Starting from the 3rd semester, students can also select courses from other Bachelor programmes to fulfil the 27 ECTS required in this area.
The purpose of the contextual studies is to help students learn to contextualise their major studies. The primary focus is on developing reflective competencies. The contextual studies account for 10 percent of the curriculum. This area includes courses from subjects that do not correspond to the core study programmes, such as history, philosophy, sociology, rhetoric, or languages. At least one language course must be taken within the context studies.