Master ST Home
Center ST Home
The Master's program consists of regular courses, seminars, and a colloquium. The courses are divided into courses on programming language tools and courses on programming methodology. In addition to these courses that are offered by the [[Center.WebHome][Center for Software Technology]] students can take several courses from other master programs. See the [[http://www.cs.uu.nl/education/][education]] pages of the institute for a full list of courses. -----------------------------------------++ First Year * [[ColloquiumSoftwareTechnology][Software Technology Colloquium]] (one meeting each week during year 1 and 2) -----++++ Period 1 * [[Software Engineering]] * [[Software Specification]] * [[FunctionalProgrammingLanguagesAndCompilers][Introduction to Functional Programming, Languages and Compilers]] (for external students) <!-- * [[Distributed Object Systems]] --> -----++++ Period 2 * [[Compiler Construction]] * [[Program Verification]] -----++++ Period 3 * [[Advanced Functional Programming]] -----++++ Period 4 * [[Software Architecture]] * [[Automatic Program Analysis]] * [[Data Base Architectures]] (which you can also take as a seminar) -----------------------------------------++ Second year The first half of the second year is typically spent for doing your seminar, your Free Choice, preparing your STC talk, and preparing your master thesis project. Offered seminars may change as they typically match the research we do here. You need to check out e.g. this [[http://www.cs.uu.nl/education/][courses schedule table]] to see what are availables. This year we offer these seminars: * Software Technology for Teaching and Learning (Period 1) * [[Advanced Compiler Construction]] (Period 3) Additionaly the course [[Data Base Architectures]] (Period 4) can also be taken as a seminar. As an indication, these are the Seminars we gave in previous years: * [[Dependently Typed Programming]] * [[TypeBasedProgramAnalysis][Type-Based Program Analysis]] * [[Networked Objects]] * [[Efficient Implementation of Functional Languages]] * [[Feedback Oriented Static Analysis]] * [[Type Systems]] * [[Aspect Oriented Programming]] * [[XML Applications of Generic Programming]] * [[ImplementationOfUHC][Implemenation of UHC]] * [[High Performance Compilers]] The rest of the second year is reserved for the thesis project. * [[Thesis Projects]] -----------------------------------------++ Other Activities ----++++ Literature Study An individual Literature Study gives students training in collecting, analyzing, and summarizing literature, as well as in writing research papers. The study gives students an opportunity to prepare for their graduation research project. The study is concluded with a paper. The literature study is part of fullfilling the requirements for the Software Technology Colloquium. ----++++ [[Colloquium Software Technology][Software Technology Colloquium]] The Software Technology Colloquium runs in parallel with courses and projects. The colloquium features presentations by students, researchers of the Software Technology Center, and guest speakers from industry and other research institutes. Students are required attend the colloquia regularly and to give one presentation each year to present results from literature studies and research projects. The goal of the colloquium is to bring all students, lecturers, and researchers together and create an environment for exchange of ideas and collaboration. The colloquium will be also be used to cover emerging topics in the field of software technology that have not found a place in the regular courses. ----++++ [[Experimentation project]] In order to allow for more flexibility in the overall planning we have added an extra option to the curriculum: the experimentation project, which you can do _in any period_. In this project you will, supervised by one of the lecturers, implement a piece of software. In order to start with such a project you have to find a member of the faculty who is willing to supervise you. In general we will choose the subjects from one of our research areas. So typically you can use this project for: * implementing some interesting idea you stumbled upon while doing a seminar * try out an idea without having to start with a full thesis project * build that small, but so extremely useful tool that everyone has been talking about, but did not find time time to implement ----++++ Master's Thesis Project The Master's Thesis Project consists of an independent research project carried out in the ST lab (in case of a research oriented student) or in a company (in case of a industry oriented student) under supervision of one of the lecturers of the center. The goal of the project is to delimit a given research question, analyze the problems it involves, design, implement and experiment a solution, and finally, report on the results. The project results in a Master's thesis, which is presented and defended at the end of the year.