The curriculum offers a comprehensive education in computer science, foundational training in business, and the Contextual Studies programme, which help to develop the critical thinking skills that characterise 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 consisting 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 behaviours, as well as about 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 the 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 a computer science degree curriculum, we offer a selection of courses on various relevant topics in Informatics. These computer Science electives can be assembled according to individual interests and are aligned with the research areas of our departments. An overview of the departments is given 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 apply independently what they have learned (methodologicallz and conceptuallz) 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, into publishable contributions to research conferences, or they serve as groundwork for a later master’s thesis. With its 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 third semester, students can also select courses from other Bachelor programmes to fulfil the 27 ECTS required in this area.
The purpose of Contextual Studies is to help students learn to contextualise their major studies. The primary focus is on developing reflective competencies. 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 in Context Studies.