Computer Science MSc Vrije Universiteit Amsterdam - Faculteit der Exacte Wetenschappen - M Computer Science - 2010-2011



Similar documents
Parallel and Distributed Computer Systems MSc Vrije Universiteit Amsterdam - Faculteit der Exacte Wetenschappen - M Parallel and Distributed Computer

Minor Organizational Culture Vrije Universiteit Amsterdam - Onderwijscentrum VU - Minoren

Artificial Intelligence MSc Vrije Universiteit Amsterdam - Faculteit der Exacte Wetenschappen - M Artificial Intelligence

Software Development Training Camp 1 (0-3) Prerequisite : Program development skill enhancement camp, at least 48 person-hours.

Premaster Entrepreneurship Vrije Universiteit Amsterdam - Fac. der Economische Wet. en Bedrijfsk. - P Entrepreneurship

Business Mathematics and Informatics MSc Vrije Universiteit Amsterdam - Faculteit der Exacte Wetenschappen - M Business Mathematics and Informatics -

Premaster Finance Vrije Universiteit Amsterdam - Fac. der Economische Wet. en Bedrijfsk. - P Finance

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing

Masters in Human Computer Interaction

Masters in Advanced Computer Science

Masters in Artificial Intelligence

Masters in Computing and Information Technology

Masters in Networks and Distributed Systems

Agreement on. Dual Degree Master Program in Computer Science KAIST. Technische Universität Berlin

School of Computer Science

MEng, BSc Applied Computer Science

Masters in Information Technology

UNIVERSITY OF AMSTERDAM FACULTY OF SCIENCE. EDUCATION AND EXAMINATION REGULATIONS Academic Year PART B THE MASTER S PROGRAMME IN LOGIC

Draft dpt for MEng Electronics and Computer Science

School of Computer Science

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

MEng, BSc Computer Science with Artificial Intelligence

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

One LAR Course Credits: 3. Page 4

School of Computer Science

How To Get A Computer Science Degree At Appalachian State

Marketing (MSc) Vrije Universiteit Amsterdam - Fac. der Economische Wet. en Bedrijfsk. - M Marketing

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

FNWI Master Evening 19 February 2015 Computer Science. Alban Ponse, University of Amsterdam FNWI Master Evening : Computer Science 1/18

REGULATIONS FOR THE DEGREE OF BACHELOR OF SCIENCE IN BIOINFORMATICS (BSc[BioInf])

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

Appendices master s degree programme Artificial Intelligence

Learning outcomes. Knowledge and understanding. Competence and skills

M.Sc. Program in Informatics and Telecommunications

School of Computer Science

UNDERGRADUATE DEGREE PROGRAMME IN COMPUTER SCIENCE ENGINEERING SCHOOL OF COMPUTER SCIENCE ENGINEERING, ALBACETE

Inhoudsopgave. Vak: Web Analysis 1 Vak: Web Information 1 Vak: Web Science 2 Vak: Web Society 3 Vak: Web Technology 4

Social Psychology (MScRes) Vrije Universiteit Amsterdam - Faculteit der Psychologie en Pedagogiek - RM Social Psychology

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa

Bachelor Degree in Informatics Engineering Master courses

Doctor of Philosophy in Computer Science

Computer Science. Master of Science

Page 1 of 5. (Modules, Subjects) SENG DSYS PSYS KMS ADB INS IAT

LOUGHBOROUGH UNIVERSITY

Accounting & Control (MSc) Vrije Universiteit Amsterdam - Fac. der Economische Wet. en Bedrijfsk. - M Accounting and Control

B.Sc. in Computer Information Systems Study Plan

Master of Science in Computer Science Information Systems

COURSE CATALOGUE

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

How To Pass A Corporate Finance Course At Vereteenuamsterdam University

PROGRAMME SPECIFICATION

Master's projects at ITMO University. Daniil Chivilikhin PhD ITMO University

GYAN VIHAR SCHOOL OF ENGINEERING & TECHNOLOGY M. TECH. CSE (2 YEARS PROGRAM)

The University of Jordan

Master of Science in Health Information Technology Degree Curriculum

Computer Information Systems

Guidelines for Establishment of Contract Areas Computer Science Department

Swiss Joint Master in Computer Science of the universities of Bern, Neuchâtel and Fribourg

IEEE International Conference on Computing, Analytics and Security Trends CAST-2016 (19 21 December, 2016) Call for Paper

Master of Science Service Oriented Architecture for Enterprise. Courses description

Department of CSE. Jaypee University of Information Technology, Waknaghat. Course Curricula

PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMME

Computer Science Information Sheet for entry in What is Computer Science?

Swiss Joint Master in Computer Science of the Universities of Bern, Neuchâtel and Fribourg

Bachelor of Science in Information Technology. Course Descriptions

Please consult the Department of Engineering about the Computer Engineering Emphasis.

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

Course Syllabus For Operations Management. Management Information Systems

2. Basis for computing design and implementation at all levels through OS, distributed systems, human interface and computer graphics.

LIACS Fundamentals. Jetty Kleijn Informatica Bachelorklas

UF EDGE brings the classroom to you with online, worldwide course delivery!

Graduate Co-op Students Information Manual. Department of Computer Science. Faculty of Science. University of Regina

Agreement on Dual Degree Master Program in Computer Science. Politechnika Warszawska. Technische Universität Berlin

Module compendium of the Master s degree course of Information Systems

Multimedia Systems Engineering

LIST OF REGISTRABLE COURSES FOR BSC COMMUNICATION TECHNOLOGY JUNE 2014

Biomolecular Sciences MSc Vrije Universiteit Amsterdam - Fac. der Aard- en Levenswetenschappen - M Biomolecular Sciences

M.S. Computer Science Program

Joint agreement of co-operation for double degree. Technische Universität Berlin. Ecole des Mines de Nantes

BIO 3350: ELEMENTS OF BIOINFORMATICS PARTIALLY ONLINE SYLLABUS

Transcription:

Computer Science MSc Vrije Universiteit Amsterdam M Computer Science 20102011 Vrije Universiteit Amsterdam M Computer Science 20102011 I

Studiegids informatie voor de masteropleiding Computer Science. Klik op de onderstaande links om informatie over de vakken te bekijken. Of download de volledige studiegids als pdf met de knop Maak pdf van gehele opleiding. Vrije Universiteit Amsterdam M Computer Science 20102011 II

Inhoudsopgave Research variant Internet and Web Technology 1 Individuele vakken 1 CS Compulsory Optional Courses Software Engineering 1 Compulsory Optional Courses Theoretical Computer Science 2 Compulsory Optional Courses Mathematics 2 Optional Courses 2 Computer Science special course 3 Compulsory Optional Courses Software Engineering 3 Optional Courses 3 Compulsory Courses 4 Research variant High Performance Distributing Computing 4 Individuele vakken 5 Compulsory Optional Courses Theoretical Computer Science 5 Compulsory Optional Courses Mathematics 5 Computer Science special course 5 CSHPDC Minor Bioinformatica Compulsory Optional Courses 6 Compulsary Optional Courses Software Engineering 6 Optional Courses 7 CSHPDC Minor Bioinformatics 7 Compulsory Courses 8 Research variant Software Engineering 8 Individuele vakken 9 Compulsory Optional Courses Mathematics 9 Computer Science special course 9 Compulsory Optional Courses Theoretical Computer Science 10 Optional Courses 10 Compulsory Courses 10 Research variant Multimedia 11 Individuele vakken 12 Compulsory Optional Courses Mathematics 12 Computer Science special course 12 Verplichte keuze vakken Theoretical Computer Science 12 Keuzevakken 13 Compulsory Courses 13 Research variant Formal Methods Software Verification 13 Individuele vakken 14 Compulsory Optional Courses Theoretical Computer Science 14 Compulsory Optional Courses Mathematics 15 Computer Science special course 15 Verplichte keuze vakken TCS 15 CSFMSV Compulsory Choise Practical Work 16 CSFMSV Compulsory Optional Courses Software Engineering 16 CSFMSV Optional Courses 16 Vrije Universiteit Amsterdam M Computer Science 20102011 III

Compulsory Courses Theoretical Computer Science 17 Research variant Technical Artificial Intelligence 17 Individuele vakken 18 Compulsory Optional Courses Mathematics 18 Computer Science special course 18 Compulsory Optional Courses Software Engineering 19 Compulsory Optional Courses Theoretical Computer Science 19 Optional Courses 19 CSTAI Compulsory Courses 19 Vak: Advanced Logic 20 Vak: Advances in Computer Architecture 20 Vak: Algorithms in Sequence Analysis 20 Vak: Automated Reasoning in AI 21 Vak: Behaviour Dynamics 22 Vak: Bioinformatics of Large Systems 22 Vak: Biosystems Data Analysis 24 Vak: Business Semantics Management 24 Vak: Cluster and Grid Computing 25 Vak: Coding and Cryptography 26 Vak: Computational Biology 26 Vak: Computational Finance 27 Vak: Computational Genomics and Proteomics 27 Vak: Computer and Network Security 27 Vak: Computer Graphics 28 Vak: Computer Networks Practical 29 Vak: Concurrency and Multithreading 30 Vak: Concurrent Systems 30 Vak: Core Logic 30 Vak: Data Mining Techniques 31 Vak: Developing Services for the Cloud 32 Vak: Distributed Algorithms 32 Vak: Distributed Systems 32 Vak: Evolutionary Computing 33 Vak: FEW individueel vak intern 34 Vak: Fundamentals of Bioinformatics 34 Vak: Genome Analysis 34 Vak: History and Philosophy of the Information Society 36 Vak: Intelligent Multimedia Technology 36 Vak: Intelligent Web Applications 37 Vak: Internet programming 37 Vak: Introduction to Lambda Calculus 38 Vak: Knowledge Management and Modeling 38 Vak: Literature Study 39 Vak: Master Project 40 Vak: Mini Master Project AI 41 Vrije Universiteit Amsterdam M Computer Science 20102011 IV

Vak: Model Theory 41 Vak: Multimedia Authoring 41 Vak: Network Programming 42 Vak: Neurale Netwerken 42 Vak: Operating Systems 42 Vak: Operating Systems Practical 43 Vak: Parallel Programming 43 Vak: Parallel Programming Practical 44 Vak: Performance Analysis of Communication Networks 44 Vak: Probability and Statistics 45 Vak: Project Informatiekunde 46 Vak: Protocol Validation 46 Vak: Quantum Computing 46 Vak: Scientific Visualisation and Virtual Reality 46 Vak: Scientific Writing in English 47 Vak: Service Oriented Design 48 Vak: Software Architecture 49 Vak: Software Asset Management 50 Vak: Software Configuration Management 50 Vak: Software Mining 51 Vak: Software Project Management 52 Vak: Software Testing 53 Vak: Structural Bioinformatics 54 Vak: Term Rewriting Systems 54 Vak: Theory and Application of MultThreading 55 Vak: Voortgezette logica 55 Vrije Universiteit Amsterdam M Computer Science 20102011 V

Research variant Internet and Web Technology It needs no saying that Internet and World Wide Web play an ever more central role in our society. This specialisation is concerned with largescale computer systems, especially computer networks and the Internet. Important topics are: Internet and Web protocols, distributed systems, network security, development tools for network applications, peertopeer technology, etc. The progamme consists of 120 credits compulsory courses 81 credits (including a Master Project of 36 credits) compulsory choices Software Engineering 6 credits compulsory choices Theoretical computer Science at least 6 credits compulsory choices Mathematics at least 3 credits optional courses Computer Science at least 6 credits optional courses 18 credits Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Master Coordinator: Dr.ing. T. Kielmann K room P414 T +31 (0) 20 598 7789 E t.kielmann@few.vu.nl Opleidingsdelen: Individuele vakken CS Compulsory Optional Courses Software Engineering Compulsory Optional Courses Theoretical Computer Science Compulsory Optional Courses Mathematics Optional Courses Computer Science special course Compulsory Optional Courses Software Engineering Optional Courses Compulsory Courses Individuele vakken FEW individueel vak intern 6.0 X_INDVAKI_09 CS Compulsory Optional Courses Software Engineering Students need to select a total of 6 credits or more from the following list. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 1 van 56

Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Service Oriented Design Periode 1 6.0 X_405061 Software Architecture Period 2 6.0 X_400170 Software Configuration Management Period 4 6.0 X_400413 Software Testing Period 5 6.0 X_400439 Compulsory Optional Courses Theoretical Computer Science Compulsory choice Theoretical Computer Science at least 6 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Distributed Algorithms Period 4 6.0 X_400211 Protocol Validation 6.0 X_400117 Compulsory Optional Courses Mathematics Compulsory choice Mathematics at least 3 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Coding and Cryptography Periode 1 6.0 X_405041 Probability and Statistics 4.0 X_400178 Optional Courses Each student is free to select optional courses from the master programme Computer Science for a total of 18 cp (IWT) or 30 cp (HPDC). One of the possibilities is the course below. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 2 van 56

For HPDC is another possibilities a Minor Bioinformatics of 24 credits, consisting of compulsory courses 18 credits compulsory optional course 6 credits Concurrency and Multithreading Computer Science special course Periode 5 6.0 X_405064 Operating Systems Periode 4 6.0 X_405067 This course is taught this year only at our University. Philippe Kruchten is Professor of Software Engineering at the University of British Columbia in Vancouver. He is worldfamous as the chief designer of the Rational Unified Process (RUP) and currently he is doing research on Agile Architectures. He will give this course specially for our Master Computer Science and Master Information Sciences students. Software Project Management Compulsory Optional Courses Software Engineering 6.0 X_405058 Compulsory choice Computer Science at least 6 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Optional Courses Coding and Cryptography Periode 1 6.0 X_405041 Concurrency and Multithreading Periode 5 6.0 X_405064 Distributed Algorithms Period 4 6.0 X_400211 Operating Systems Periode 4 6.0 X_405067 Parallel Programming Practical Periode 2+3 6.0 X_400162 Protocol Validation 6.0 X_400117 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 3 van 56

Scientific Writing in English Periode 2, Periode 3, Periode 4, Periode 5 3.0 X_400592 Compulsory Courses Computer and Network Security Period 5 6.0 X_400127 Distributed Systems Periode 2 6.0 X_400130 History and Philosophy of the Information Society Period 2 3.0 X_405043 Internet programming 6.0 X_405082 Literature Study Ac. Year (September) 6.0 X_400277 Master Project Ac. Year (September) 36.0 X_400442 Network Programming Periode 5 6.0 X_405062 Parallel Programming Period 1 6.0 X_400161 Research variant High Performance Distributing Computing High performance computing seeks to solve computing problems as fast and as efficiently as possible. The most important approach is to use a (large) number of computers instead of one, and let these computers work together, in parallel. In clusters and grids, the computers are typically distributed across an organization (a university, for example), a country, or even the globe. This had led to the term "high performance distributed computing." The progamme consists of 120 credits compulsory courses 75 credits (including a Master Project of 36 credits) compulsory choices Software Engineering 6 credits compulsory choices Theoretical computer Science at least 6 credits compulsory choices Mathematics at least 3 credits optional courses 30 credits It is possible to fill the optional courses with a Minor Bioinformatics. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Master Coordinator: Dr.ing. T. Kielmann K room P414 T +31 (0) 20 598 7789 E t.kielmann@few.vu.nl Opleidingsdelen: Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 4 van 56

Individuele vakken Compulsory Optional Courses Theoretical Computer Science Compulsory Optional Courses Mathematics Computer Science special course CSHPDC Minor Bioinformatica Compulsory Optional Courses Compulsary Optional Courses Software Engineering Optional Courses CSHPDC Minor Bioinformatics Compulsory Courses Individuele vakken FEW individueel vak intern 6.0 X_INDVAKI_09 Compulsory Optional Courses Theoretical Computer Science Compulsory choice Theoretical Computer Science at least 6 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Distributed Algorithms Period 4 6.0 X_400211 Protocol Validation 6.0 X_400117 Compulsory Optional Courses Mathematics Compulsory choice Mathematics at least 3 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Coding and Cryptography Periode 1 6.0 X_405041 Probability and Statistics 4.0 X_400178 Computer Science special course Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 5 van 56

This course is taught this year only at our University. Philippe Kruchten is Professor of Software Engineering at the University of British Columbia in Vancouver. He is worldfamous as the chief designer of the Rational Unified Process (RUP) and currently he is doing research on Agile Architectures. He will give this course specially for our Master Computer Science and Master Information Sciences students. Software Project Management 6.0 X_405058 CSHPDC Minor Bioinformatica Compulsory Optional Courses Compulsory optional courses, choose one of the courses in the list below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Biosystems Data Analysis Periode 3 6.0 X_437001 Computational Genomics and Proteomics Compulsary Optional Courses Software Engineering 6.0 X_400436 Genome Analysis Period 1 6.0 X_430047 Structural Bioinformatics Periode 4 6.0 X_405019 Students need to select a total of 6 credits or more from the following list. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Service Oriented Design Periode 1 6.0 X_405061 Software Architecture Period 2 6.0 X_400170 Software Configuration Management Period 4 6.0 X_400413 Software Testing Period 5 6.0 X_400439 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 6 van 56

Optional Courses Advances in Computer Architecture Algorithms in Sequence Analysis Bioinformatics of Large Systems CSHPDC Minor Bioinformatics Periode 2 6.0 X_418047 Periode 2 6.0 X_405050 Periode 5 6.0 X_405063 Biosystems Data Analysis Periode 3 6.0 X_437001 Coding and Cryptography Periode 1 6.0 X_405041 Computational Biology Periode 4 6.0 X_418044 Computational Finance Period 4+5 6.0 X_418045 Computer and Network Security Period 5 6.0 X_400127 Computer Graphics Period 2 6.0 X_400106 Computer Networks Practical Concurrency and Multithreading Periode 5+6 6.0 X_405072 Periode 5 6.0 X_405064 Concurrent Systems Period 4 6.0 X_418046 Distributed Algorithms Period 4 6.0 X_400211 Evolutionary Computing Period 1 6.0 X_400111 Fundamentals of Bioinformatics Periode 1 6.0 X_405052 Genome Analysis Period 1 6.0 X_430047 Internet programming 6.0 X_405082 Operating Systems Periode 4 6.0 X_405067 Operating Systems Practical Periode 5+6 6.0 X_405071 Performance Analysis of Communication Networks Period 1+2 6.0 X_400165 Protocol Validation 6.0 X_400117 Scientific Visualisation and Virtual Reality Scientific Writing in English Periode 2, Periode 3, Periode 4, Periode 5 Period 1 6.0 X_418049 3.0 X_400592 Structural Bioinformatics Periode 4 6.0 X_405019 Each student is free to select optional courses from the master programme Computer Science for a total of 30 credits. One of the possibilities is a Minor Bioinformatics of 24 credits, Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 7 van 56

consisting of compulsory courses 18 credits compulsory optional course 6 credits Below the compulsory courses. Algorithms in Sequence Analysis Bioinformatics of Large Systems Fundamentals of Bioinformatics Compulsory Courses Periode 2 6.0 X_405050 Periode 5 6.0 X_405063 Periode 1 6.0 X_405052 Cluster and Grid Computing Period 4 6.0 X_400362 Distributed Systems Periode 2 6.0 X_400130 History and Philosophy of the Information Society Research variant Software Engineering Period 2 3.0 X_405043 Literature Study Ac. Year (September) 6.0 X_400277 Master Project Ac. Year (September) 36.0 X_400442 Network Programming Periode 5 6.0 X_405062 Parallel Programming Period 1 6.0 X_400161 Parallel Programming Practical Periode 2+3 6.0 X_400162 Some people define software engineering as: 'the application of a systematic, quantifiable approach to the development, execution and maintenance of software. It is a broad and comprehensive field, in which engineering plays an important part, next to psychological and managerial aspects. Keywords are evolution and complexity. The field continually evolves, as the type of systems as well as the world at large changes. New developments such as outsourcing, global system development, serviceorientation and the incorporation of offtheshelf software profoundly influence the field. The progamme consists of 120 credits compulsory courses 90 credits (including a Master Project of 36 credits) compulsory choices Theoretical Computer Science at least 6 credits compulsory choices Mathematics at least 3 credits optional courses 21 credits Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 8 van 56

Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Master Coordinator: Prof.dr. J.C. van Vliet K room U303 T +31 (0) 20 598 7768 E jc.van.vliet@few.vu.nl Opleidingsdelen: Individuele vakken Compulsory Optional Courses Mathematics Computer Science special course Compulsory Optional Courses Theoretical Computer Science Optional Courses Compulsory Courses Individuele vakken FEW individueel vak intern 6.0 X_INDVAKI_09 Compulsory Optional Courses Mathematics Compulsory choice Mathematics at least 3 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Coding and Cryptography Periode 1 6.0 X_405041 Probability and Statistics 4.0 X_400178 Computer Science special course This course is taught this year only at our University. Philippe Kruchten is Professor of Software Engineering at the University of British Columbia in Vancouver. He is worldfamous as the chief designer of the Rational Unified Process (RUP) and currently he is doing research on Agile Architectures. He will give this course specially for our Master Computer Science and Master Information Sciences students. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 9 van 56

Software Project Management 6.0 X_405058 Compulsory Optional Courses Theoretical Computer Science Compulsory choice Theoretical Computer Science at least 6 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Distributed Algorithms Period 4 6.0 X_400211 Protocol Validation 6.0 X_400117 Optional Courses Business Semantics Management Compulsory Courses Period 6 3.0 X_405068 Coding and Cryptography Periode 1 6.0 X_405041 Developing Services for the Cloud 6.0 X_405074 Distributed Algorithms Period 4 6.0 X_400211 Internet programming 6.0 X_405082 Operating Systems Periode 4 6.0 X_405067 Protocol Validation 6.0 X_400117 Scientific Writing in English Periode 2, Periode 3, Periode 4, Periode 5 Software Project Management 3.0 X_400592 6.0 X_405058 Software Testing Period 5 6.0 X_400439 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 10 van 56

Distributed Systems Periode 2 6.0 X_400130 History and Philosophy of the Information Society Research variant Multimedia Period 2 3.0 X_405043 Literature Study Ac. Year (September) 6.0 X_400277 Master Project Ac. Year (September) 36.0 X_400442 Project Informatiekunde Semester 2 9.0 X_400058 Service Oriented Design Periode 1 6.0 X_405061 Software Architecture Period 2 6.0 X_400170 Software Asset Management Software Configuration Management Period 1 6.0 X_400412 Period 4 6.0 X_400413 Software Mining Period 5 6.0 X_405009 Multimedia is a rapidly developing application and research area. Because of the arrival of broadband Internet we speak of digital convergence, the combination of formerly disjoint media, as in interactive television. Connected with the efficient use of multimedia is the rich palette of research questions in the field of authoring, information retrieval, human computer interaction, software architecture and 3Dgraphics. In the specialization Multimedia there is special attention for the use of 3D virtual environments for the disclosure of multimedia information. Depending on interest and expertise, authoring and design problems can have the focus, or more technical aspects in the field of software architecture communication and 3D graphics. In the specialization Multimedia there is special attention for the use of 3D virtual environments for the disclosure of multimedia information. The progamme consists of 120 credits compulsory courses 87 credits (including a Master Project of 36 credits) compulsory choices Mathematics at least 3 credits compulsory choices Theoretical computer Science at least 6 credits optional courses 27 credits Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Master Coordinator: Prof.dr. A. Eliens K room T333 T +31 (0) 20 598 7741 E a.eliens@few.vu.nl Opleidingsdelen: Individuele vakken Compulsory Optional Courses Mathematics Computer Science special course Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 11 van 56

Verplichte keuze vakken Theoretical Computer Science Keuzevakken Compulsory Courses Individuele vakken FEW individueel vak intern 6.0 X_INDVAKI_09 Compulsory Optional Courses Mathematics Compulsory choice Mathematics at least 3 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Coding and Cryptography Periode 1 6.0 X_405041 Probability and Statistics 4.0 X_400178 Computer Science special course This course is taught this year only at our University. Philippe Kruchten is Professor of Software Engineering at the University of British Columbia in Vancouver. He is worldfamous as the chief designer of the Rational Unified Process (RUP) and currently he is doing research on Agile Architectures. He will give this course specially for our Master Computer Science and Master Information Sciences students. Software Project Management Verplichte keuze vakken Theoretical Computer Science 6.0 X_405058 Compulsory choice Theoretical Computer Science at least 6 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 12 van 56

Distributed Algorithms Period 4 6.0 X_400211 Protocol Validation 6.0 X_400117 Keuzevakken Coding and Cryptography Periode 1 6.0 X_405041 Distributed Algorithms Period 4 6.0 X_400211 Internet programming 6.0 X_405082 Protocol Validation 6.0 X_400117 Scientific Writing in English Periode 2, Periode 3, Periode 4, Periode 5 Compulsory Courses 3.0 X_400592 Computer Graphics Period 2 6.0 X_400106 Distributed Systems Periode 2 6.0 X_400130 History and Philosophy of the Information Society Intelligent Multimedia Technology Period 2 3.0 X_405043 Period 2 6.0 X_400441 Literature Study Ac. Year (September) 6.0 X_400277 Master Project Ac. Year (September) 36.0 X_400442 Multimedia Authoring Periode 1 6.0 X_400440 Software Architecture Period 2 6.0 X_400170 Research variant Formal Methods Software Verification Because of the increasing complexity of software, the automatic verification of specifications becomes ever more important. Since the number of states of a system easily reaches astronomical proportions, complete testing is impossible and partial testing often insufficient. This is especially important for safetycritical or even lifecritical systems. This specialization is concerned with formal methods for the specification and verification of software systems. Three theoretical disciplines play a central role: term rewriting, process algebra and coinduction. Tools developed from process algebra are used in protocol Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 13 van 56

validation. Term rewriting is used in the execution of equational specifications and lies at the basis of functional programming and proof checking. Coinduction is the prime method for analyzing infinitary processes. Furthermore, there are several verification methods originating from logic, like model checking, in which temporal logic is used, and type theory. Typical courses: Logical Verification, Protocol Validation, Term Rewriting Systems. The progamme consists of 120 credits compulsory courses 63 credits (including a Master Project of 36 credits) compulsory choices Software Engineering 6 credits compulsory choices Theoretical Computer Science at least 6 credits other compulsory choice 6 credits compulsory choices Mathematics at least 3 credits compulsory choices Practical work Computer Science at least 6 credits optional courses 30 credits Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Master Coordinator: Dr. R.C. de Vrijer K room U341 T +31 (0) 20 598 7770 E rc.de.vrijer@few.vu.nl Opleidingsdelen: Individuele vakken Compulsory Optional Courses Theoretical Computer Science Compulsory Optional Courses Mathematics Computer Science special course Verplichte keuze vakken TCS CSFMSV Compulsory Choise Practical Work CSFMSV Compulsory Optional Courses Software Engineering CSFMSV Optional Courses Compulsory Courses Theoretical Computer Science Individuele vakken FEW individueel vak intern 6.0 X_INDVAKI_09 Compulsory Optional Courses Theoretical Computer Science Compulsory choice Theoretical Computer Science at least 6 credits, recommended are the courses below. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 14 van 56

Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Distributed Algorithms Period 4 6.0 X_400211 Protocol Validation 6.0 X_400117 Compulsory Optional Courses Mathematics Compulsory choice Mathematics at least 3 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Coding and Cryptography Periode 1 6.0 X_405041 Probability and Statistics 4.0 X_400178 Computer Science special course This course is taught this year only at our University. Philippe Kruchten is Professor of Software Engineering at the University of British Columbia in Vancouver. He is worldfamous as the chief designer of the Rational Unified Process (RUP) and currently he is doing research on Agile Architectures. He will give this course specially for our Master Computer Science and Master Information Sciences students. Software Project Management Verplichte keuze vakken TCS 6.0 X_405058 Students need to select a total of 6 credits or more from the following list. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 15 van 56

Computer and Network Security Period 5 6.0 X_400127 Neurale Netwerken Periode 1 6.0 X_400132 Quantum Computing Periode 4, Periode 5 6.0 X_418003 CSFMSV Compulsory Choise Practical Work Compulsory choice Practical Work Computer Science at least 6 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Computer Networks Practical Periode 5+6 6.0 X_405072 Network Programming Periode 5 6.0 X_405062 Operating Systems Practical Periode 5+6 6.0 X_405071 CSFMSV Compulsory Optional Courses Software Engineering Students need to select a total of 6 credits or more from the following list. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Service Oriented Design Periode 1 6.0 X_405061 Software Architecture Period 2 6.0 X_400170 Software Mining Period 5 6.0 X_405009 CSFMSV Optional Courses Advanced Logic Periode 4 6.0 X_405048 Coding and Cryptography Periode 1 6.0 X_405041 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 16 van 56

Computer Networks Practical Periode 5+6 6.0 X_405072 Core Logic Periode 1+2 6.0 X_437020 Internet programming 6.0 X_405082 Introduction to Lambda Calculus Periode 1+2 6.0 X_437022 Model Theory Periode 4+5 6.0 X_437024 Network Programming Periode 5 6.0 X_405062 Operating Systems Periode 4 6.0 X_405067 Operating Systems Practical Periode 5+6 6.0 X_405071 Scientific Writing in English Periode 2, Periode 3, Periode 4, Periode 5 Theory and Application of MultThreading Compulsory Courses Theoretical Computer Science 3.0 X_400592 Periode 5 6.0 X_437025 Voortgezette logica 4.0 X_400410 Distributed Systems Periode 2 6.0 X_400130 History and Philosophy of the Information Society Period 2 3.0 X_405043 Literature Study Ac. Year (September) 6.0 X_400277 Master Project Ac. Year (September) 36.0 X_400442 Term Rewriting Systems Period 2 6.0 X_400121 Research variant Technical Artificial Intelligence In this specialization the realisation of intelligent computer programs is the central subject. Artificial intelligence uses a great number of techniques from computer science and also plays a part in the development of these techniques, often inspired by human cognition. In this programme the student can choose between the existing techniques. Analysing, modelling and implementing of human knowledge, leading to a computer program that can reason with symbolic representations of this knowledge is the subject of Knowledge Technology. In Knowledge Discovery and Data Mining the computer is used for recognition of structures in raw data, from which conclusions can be drawn. The progamme consists of 120 Ec compulsory courses 81 Ec (including a Master Project of 36 Ec) compulsory choices Software Engineering 6 Ec compulsory choices Mathematics at least 3 Ec compulsory choices Theoretical Computer Science at least 6 Ec optional courses 24 Ec Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 17 van 56

mentor and approved by the Examination Board. Master Coordinator: dr. M. Hoogendoorn K room T320a T +31 (0) 20 598 7772 E m.hoogendoorn@few.vu.nl Opleidingsdelen: Individuele vakken Compulsory Optional Courses Mathematics Computer Science special course Compulsory Optional Courses Software Engineering Compulsory Optional Courses Theoretical Computer Science Optional Courses CSTAI Compulsory Courses Individuele vakken FEW individueel vak intern 6.0 X_INDVAKI_09 Compulsory Optional Courses Mathematics Compulsory choice Mathematics at least 3 credits, recommended are the courses below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Coding and Cryptography Periode 1 6.0 X_405041 Probability and Statistics 4.0 X_400178 Computer Science special course This course is taught this year only at our University. Philippe Kruchten is Professor of Software Engineering at the University of British Columbia in Vancouver. He is worldfamous as the chief designer of the Rational Unified Process (RUP) and currently he is doing research on Agile Architectures. He will give this course specially for our Master Computer Science and Master Information Sciences students. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 18 van 56

Software Project Management Compulsory Optional Courses Software Engineering 6.0 X_405058 Students need to select a total of 6 credits or more from the following list. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Service Oriented Design Periode 1 6.0 X_405061 Software Architecture Period 2 6.0 X_400170 Software Mining Period 5 6.0 X_405009 Compulsory Optional Courses Theoretical Computer Science Compulsory choice Theoretical Computer Science at least 6 credits, recommended is the course below. Note: Every programme, including the choice of optional courses, has to be discussed and agreed upon with the master coordinator or a personal mentor and approved by the Examination Board. Optional Courses Automated Reasoning in AI Period 5 6.0 X_400389 Coding and Cryptography Periode 1 6.0 X_405041 Data Mining Techniques Period 5 6.0 X_400108 Internet programming 6.0 X_405082 Mini Master Project AI Ac. Year (September) 6.0 X_400428 Operating Systems Periode 4 6.0 X_405067 Scientific Writing in English Periode 2, Periode 3, Periode 4, Periode 5 CSTAI Compulsory Courses 3.0 X_400592 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 19 van 56

Behaviour Dynamics Periode 1+2 6.0 X_400113 Distributed Systems Periode 2 6.0 X_400130 Evolutionary Computing Period 1 6.0 X_400111 History and Philosophy of the Information Society Advanced Logic Period 2 3.0 X_405043 Intelligent Web Applications Periode 1 6.0 X_405055 Knowledge Management and Modeling Period 1+2 6.0 X_400125 Literature Study Ac. Year (September) 6.0 X_400277 Master Project Ac. Year (September) 36.0 X_400442 Neurale Netwerken Periode 1 6.0 X_400132 Vakcode X_405048 (405048) Periode Periode 4 Coördinator dr. R.D.A. Hendriks Docent(en) dr. R.D.A. Hendriks Lesmethode(n) Hoorcollege, Werkcollege Doelgroep maiktiia, maitli, maicvar, mcsfmsv Advances in Computer Architecture Vakcode X_418047 (418047) Periode Periode 2 Algorithms in Sequence Analysis Vakcode X_405050 (405050) Periode Periode 2 Coördinator prof. dr. J. Heringa Docent(en) prof. dr. J. Heringa Lesmethode(n) Hoorcollege, Werkcollege Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 20 van 56

Inhoud vak Theory: Dynamic programming, database searching, pairwise and multiple alignment, probabilistic methods including hidden markov models, pattern matching, entropy measures, evolutionary models, and phylogeny. Practical: Programming own alignment algorithm based on dynamic programming Reverse translation and dynamic programming Homology searching and pattern recognition using biological and disease examples Multiple alignment of biological sequences Entropybased functional residues prediction Programming own implementation of Hidden Markov Models Onderwijsvorm 13 Lectures: 2 twohour lectures per week 6 computer practicals: two hours per week Literatuur Course material on bb.vu.nl Books: Durbin, R., Eddy, S.R., Krogh, A., Mitchison, G.. Biological Sequence Analysis. Cambridge University Press, 1998, 350 pp., ISBN 0521629713. Recommended reading: Marketa Zvelebil and Jeremy O. Baum Understanding Bioinformatics Garland Science 2008 ISBN10: 0815340249 Vereiste voorkennis Bachelor in any science discipline (including medicine). Basic programming skills and an interest in biological problems. Overige informatie Signing up via bb.vu.nl is mandatory. The course is taught in English. Automated Reasoning in AI Course code X_400389 (400389) Period Period 5 Language of tuition English Faculty Coordinator dr. K.S. Schlobach Teaching staff dr. A.C.M. ten Teije, dr. K.S. Schlobach Teaching method(s) Lecture, Seminar Course objective Since its early days Artificial Intelligence has employed logic as a mean to provide generic solutions for computationally and conceptually difficult practical problems. The aim of the course is to make the students familiar with a number of popular logic based representation and reasoning mechanisms for Artificial Intelligence. Furthermore, students should have the capability to transfer the learned techniques to other problems and to Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 21 van 56

other representation mechanisms. Course content The course will be structured in three modules. In each of these modules a practical problem will be introduced, a logic based representation proposed, and the basic techniques for automated reasoning in this language studied in a practical, hands on, way. In a nutshell, we plan to cover: propositional Logic for scheduling, and satisfiability checking with Davis Putnam; Allen's interval logic for Planning, with constraint propagation in Temporal Constraint Networks; description logics for classification, with Tableau calculi for subsumption. Form of tuition In period 5 there will be lectures and practical sessions, plus significant time for self study and practical work. In period 6 there will be regular meetings to support for the work on a larger project. Type of assessment 3 practical assignments Course reading Selected scientific papers. Entry requirements Basic knowledge in logic is an advantage, but not required, as is some familiarity with programming. Target group mai Remarks For further information see the AR in AI blackboard site. Behaviour Dynamics Vakcode X_400113 (400113) Periode Periode 1+2 Coördinator dr. O. Sharpanskykh Docent(en) dr. O. Sharpanskykh Lesmethode(n) Hoorcollege Doel vak To learn how to identify, specify and predict different types of behaviour; to understand how externally observable behaviour emerges from internal mechanisms; to be able to construct computational behavioural models and to perform analysis based on these models using software tools Bioinformatics of Large Systems Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 22 van 56

Vakcode X_405063 (405063) Periode Periode 5 Doel vak A theoretical and practical bioinformatics course on computational methods in proteomics, genomics, gene regulation, signalling, microarray experiments, proteinprotein interactions, and datamining. Goals: At the end of the course, students will be aware of the issues, methodology and available bioinformatics tools, so to become a creative bioinformatics problem solver and tools creator. At the end of the course, students will have handson experience in handling large biological datasets. Inhoud vak Theory: proteomics (mass spectrometry), genomics, gene regulation, signalling, microarray experiments, proteinprotein interactions, and datamining, nextgeneration sequencing, pattern recognition, ontologies, and GRID computing, Petri nets. Practical: Assignment biological data clustering (in R) Assignment Gene regulation / Signalling network modelling using Petri nets. Assignment Pattern detection Assignment PPI networks Onderwijsvorm 13 Lectures (4 twohour lectures per week); 6 computer practicals (2 twohour sessions per week). Toetsvorm Assignment results and oral or written exam (depending on number of course students). Literatuur Course material on bb.vu.nl Marketa Zvelebil and Jeremy O. Baum Understanding Bioinformatics Garland Science 2008 ISBN10: 0815340249 Vereiste voorkennis Bachelor in any science discipline (including medicine), or thirdyear BSc students. Basic programming skills (R) and an interest in biological problems. Doelgroep mbio, mcshpdc Overige informatie Signing up via bb.vu.nl is mandatory. The course is taught in English. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 23 van 56

Biosystems Data Analysis Vakcode X_437001 (437001) Periode Periode 3 Business Semantics Management Course code X_405068 () Period Period 6 Credits 3.0 Language of tuition English Faculty Coordinator dr. P.G.M. De Leenheer Teaching staff dr. P.G.M. De Leenheer Teaching method(s) Lecture, Seminar Course objective The course Online Information systems is limited to the study of traditional "closed" information systems intended for a specific organization. The functional requirements are known beforehand and the meaning of business terms and rules are sufficiently clear and uniformly valid within the organizational context. This course broadens the concept of information system to "open" information system where "semantic interoperability" with its environment is a pain point. The origin of the problem lies in the fact that it is not known in advance with which systems in its environment and according to what policies and rules an open system must be able to exchange information. To support semantic interoperability, system owners should agree on and standardise the meaning of business terms and rules among participating systems. Ontologies are dynamic models that capture the meaning of business terms and rules. Hence, they underpin solutions for semantic interoperability and many other semantic applications that are studied in the course Ontology Engineering. The purpose of this course is to learn the Business Semantics Management methodology that enables a business community to collaboratively define the meaning of their business vocabularies and rules (read: business semantics) in an ontology. Next, this ontology (formatted in ORM, RDF or UML) is validated in diverse informationtechnical contexts. By deriving ontologies from business semantics managed on a business level, the entropy in the numerous data translations between business and IT can be partly remedied. Course content Short recap of the Online Information Systems terminology. Introduction of the concept of "open information system" and the problem of "semantic interoperability ". Introduction of the relationship between "business semantics" and its derivative "ontology" to solve the problem of Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 24 van 56

semantic interoperability on the technical level. Learning to handle the OMG SBVR (http://www.omg.org/spec/sbvr/1.0/) standard and the Business Semantics Management methodology for building business vocabularies and rules in SBVR, and automatically deriving ontologies from them. Validate a variety of ontologies in diverse semantic applications. Form of tuition The red thread is a roleplaying game in which students form groups each representing a stakeholder organization in a business community. Using the webbased environment for Business Semantics Management, the community collaboratively defines an ontology that enables semantic interoperation between their information systems. This is done step by step by following the BSM methodology. First, a governance model that defined the roles and responsibilities for each of the stakeholders within the community is set. Next, the community determines which are the main terms for which a semantic agreement is necessary. This is followed by a reconciliation process resulting in a unified ontology that captures the meaning of these terms and their associated rules sets. This ontology is then validated by applying it in the community. Finally, we discuss possible extension points for the method and references to other courses such as ontology engineering. Every team conclude their findings in a written report. Type of assessment team project Course reading Lecture notes, exercises, and slides provided by the lecturer. A webbased software environment for BSM. Thematic papers that elaborate on selected topics. Recommended background knowledge Online informatiesystemen Target group mcsse, mis Cluster and Grid Computing Course code X_400362 (400362) Period Period 4 Language of tuition English Faculty Coordinator dr. ing. T. Kielmann Teaching staff dr. ing. T. Kielmann Teaching method(s) Lecture Course objective Students shall both explore the area of Cluster and Grid Computing and develop their skills in critical assessment of scientific literature. Course content Both Cluster and Grid computing are areas of rapid technical developments. Many technical developments are still in flux. We Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 25 van 56

investigate resource management and scheduling, remote data access, network and other performance issues, as well as software architecture and programming models for grids. Form of tuition Introductory lecture, followed by a seminar part and practical programming assignments. In the seminar part, students explore topic areas of Cluster and Grid Computing in small groups, present their findings in a presentation session and prepare a report. The practical programming assignments are to be addressed individually. Type of assessment Both parts contribute 50% to the grade: (i) seminar presentation and report (ii) programming assignments Course reading Various research articles as available online. Entry requirements Parallel Programming (code 400161) Target group mpdcs, mcshpdc Remarks Participation in the course is limited; priority is given to students of the M. Sc. programme in Parallel and Distributed Computer Systems, and to students following the HPDC specialization of; the Msc in Computer Science. Registration for the course is required before the first lecture by sending email to the lecturer; first come first serve. Coding and Cryptography Vakcode X_405041 (405041) Periode Periode 1 Coördinator prof. dr. R.M.H. de Jeu Docent(en) prof. dr. R.M.H. de Jeu Lesmethode(n) Hoorcollege Doel vak To give an introduction the theory of error correcting codes and to cryptography. Literatuur Will be announced in class Computational Biology Vakcode X_418044 (418044) Periode Periode 4 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 26 van 56

Computational Finance Course code X_418045 (418045) Period Period 4+5 Language of tuition English Faculty Teaching method(s) Lecture Course content The course description is available on: http://studiegids.uva.nl/sgs/website_en Target group mcshpdc Remarks Course registration is compulsory via http://studieweb.student.uva.nl before 2 August 2010 includes registration for the examination. Computational Genomics and Proteomics Vakcode X_400436 (400436) Coördinator prof. dr. J. Heringa Computer and Network Security Course code X_400127 (400127) Period Period 5 Language of tuition English Faculty Coordinator dr. ir. H.J. Bos Teaching staff dr. ir. H.J. Bos Teaching method(s) Lecture Course objective Introductory course on security with a scope that includes systems work. At the end of the course students will understand the basic notion of memory corruption attacks (buffer overflows, format strings, etc), SQL injection, crosssite scriting attacks, and other vectors Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 27 van 56

used by computer hackers. Also, they will be able to understand and apply cryptography. Course content The course covers a wide spectrum of security issues. We explicitly aim wider than cryptography, as we want to show students how hackers penetrate systems. Part of the course will be handson: in lab assignments, student will carry out and investigate attacks in a controlled environment. This involves programming at the both the highest and lowest levels (say SQL and assembly). However, we will also discuss cryptography and trust infrastructures. Form of tuition Lectures and practical assignments Type of assessment Written exam (50%) and practical assignments (50%). Course reading No set book. All material will be made available during the course. Entry requirements No formal requirements, except a keen interest. Programming experience in C strongly recommended. Target group mcs, mpdcs Remarks http://www.few.vu.nl/~herbertb/sec/ Computer Graphics Course code X_400106 (400106) Period Period 2 Language of tuition English Faculty Coordinator dr. ing. T. Kielmann Teaching staff dr. ing. T. Kielmann Teaching method(s) Lecture Course objective The students shall get theoretical insights and practical knowledge that allows them to implement graphics applications and to understand how such applications get executed on current graphics hardware. Course content the course has a topdown structure, starting with the applications. Topics of the lecture are: graphics programming with OpenGL color, input, interaction transformations (translation, rotation, scaling, shear) 3dimensional viewing (projections, perspective) light and shading Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 28 van 56

discrete techniques, buffers, texture mapping modeling (object hierarchies, scene graphs) advanced topics (curves and surfaces, programmable shaders) Form of tuition Class sessions consist of lecture elements and practical exercises. Towards the end of the course, an individual programming project will be done by which students apply what they have learned throughout the class. All programming exercises and the project will be based on OpenGL and the programming language Java. It is highly recommended that students bring their own laptop computer to the class sessions in order to perform the practical exercises. Type of assessment Written exam (code 4001061) and programming project (code 4001062). The project contributes 2/3 to the final grade. The exam contributes 1/3. Both parts need to be graded sufficient or better in order to get the credit points for the course 400106. Course reading Edward Angel, Interactive Computer Graphics, 5th edition. Addison Wesley. Entry requirements Project Programmeren (400559) Target group mcs, mpdcs Remarks The classes are given in period 2; the programming project is continued in period 3. Computer Networks Practical Vakcode X_405072 (405072) Periode Periode 5+6 Coördinator ir. M.P.H. Huntjens Docent(en) ir. M.P.H. Huntjens Lesmethode(n) Hoorcollege Onderwijsvorm Practical computer work Toetsvorm Practical computer work. Aanbevolen voorkennis Mandatory: Computer Networks (400487). Strongly recommended: Operating Systems (400011) Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 29 van 56

Concurrency and Multithreading Vakcode X_405064 (405064) Periode Periode 5 Coördinator prof. dr. W.J. Fokkink Docent(en) prof. dr. W.J. Fokkink Lesmethode(n) Hoorcollege, Werkcollege Doel vak This course provides a comprehensive presentation of the foundations and programming principles for multicore machines. Toetsvorm Written exam (which counts for 70% of the final mark) and two programming assignments (which together count for 30% of the final mark). Literatuur Maurice Herlihy, Nir Shavit, The Art of Multiprocessor Programming, Morgan Kaufmann, 2008. Concurrent Systems Course code X_418046 (418046) Period Period 4 Language of tuition English Faculty Teaching method(s) Lecture Course content The course description is available on: http://studiegids.uva.nl/sgs/website_en Target group mcshpdc Remarks Course registration is compulsory via http://studieweb.student.uva.nl before 2 August 2010 includes registration for the examination. Core Logic Vakcode X_437020 (437020) Periode Periode 1+2 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 30 van 56

Data Mining Techniques Course code X_400108 (400108) Period Period 5 Language of tuition English Faculty Coordinator dr. Z. Szlavik Teaching staff dr. Z. Szlavik Teaching method(s) Lecture Course objective The aim of the course is that students acquire data mining knowledge and skills that they can apply in a business environment. How the aims are to be achieved: Students will acquire knowledge and skills mainly through the following: an overview of the most common data mining algorithms and techniques (in lectures), a survey of typical and interesting data mining applications, and practical assignments to gain "hands on" experience. The application of skills in a business environment will be simulated through various assignments of the course. Course content The course will provide a survey of basic data mining techniques and their applications for solving real life problems. After a general introduction to Data Mining we will discuss some "classical" algorithms like Naive Bayes, Decision Trees, Association Rules, etc., and some recently discovered methods such as boosting, Support Vector Machines, and colearning. A number of successful applications of data mining will also be discussed: marketing, fraud detection, text and Web mining, possibly bioinformatics. In addition to lectures, there will be an extensive practical part, where students will experiment with various data mining algorithms and data sets. The grade for the course will be based on these practical assignments (i.e., there will be no final examination). Form of tuition Lectures and compulsory practical work. Lectures are planned to be interactive: there will be small questions, oneminute discussions, following an algorithm on paper, looking for patterns in a dataset about you (!), filling in missing pieces in a table, coming up with a number of creative solutions to a small problem, etc. Type of assessment Practical assignments (i.e. there is no exam). There will be three assignments, some (parts) of these will be done individually, some in groups of two. There is a possibility to get a grade without doing these assignments: one (!) group can be selected (based on interviews conducted by the lecturer) to do a real research project instead (which be warned will most likely to involve more work, but it can also be more rewarding). Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 31 van 56

Course reading Ian H. Witten, Eibe Frank, Data Mining: Practical Machine Learning Tools and Techniques, Morgan Kaufman, (Second Edition) 2005. Additionally, a collection of articles in electronic form (BB). Entry requirements Kansrekening en Statistiek of Algemene Statistiek (knowledge of statistics and probabilities) or equivalent. Recommended: Machine Learning. Target group mbmi, mcs, mai, mbio Developing Services for the Cloud Vakcode X_405074 () Coördinator dr. P. Lago Distributed Algorithms Course code X_400211 (400211) Period Period 4 Language of tuition English Faculty Coordinator prof. dr. W.J. Fokkink Teaching staff prof. dr. W.J. Fokkink Teaching method(s) Lecture, Seminar Course objective To obtain a good understanding of concurrency concepts and a large range of distributed algorithms. Course content Snapshots, graph traversal, termination detection, garbage collection, deadlock detection, routing, election, minimal spanning trees, anonymous networks, fault tolerance, failure detection, synchronization, consensus, mutual exclusion,selfstabilization, online scheduling. Type of assessment Written examen (plus a takehome exercise sheet that can provide up to 0,5 bonus point). Remarks The homepage of the course is at http://www.cs.vu.nl/~tcs/da/ Distributed Systems Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 32 van 56

Vakcode X_400130 (400130) Periode Periode 2 Coördinator prof. dr. ir. M.R. van Steen Docent(en) prof. dr. ir. M.R. van Steen Lesmethode(n) Hoorcollege Evolutionary Computing Course code X_400111 (400111) Period Period 1 Language of tuition English Faculty Coordinator prof. dr. A.E. Eiben Teaching staff prof. dr. A.E. Eiben Teaching method(s) Lecture Course objective To learn about computational methods based on Darwinian principles of evolution. To illustrate the usage of such methods as problem solvers and as simulation, respectively modelling tools.to gain handson experience in performing experiments. Course content The course is treating various algorithms based on the Darwinian evolution theory. Driven by natural selection (survival of the fittest), an evolution process is being emulated and solutions for a given problem are being "bred". During this course all "dialects" within evolutionary computing are treated (genetic algorithms, evolutiestrategieën, evolutionary programming, genetic programming, and classifier systems). Applications in optimisation, constraint handling and machine learning are discussed. Specific subjects handled include: various genetic structures (representations), selection techniques, sexual and asexual genetic operators, (self)adaptivity. If time permits, subjects in Artificial Life and Artificial Societies, and Evolutionary Art will be handled. Handsonexperience is gained by a compulsory pogramming assignment. Form of tuition Oral lectures and compulsory pogramming assignment. Type of assessment Written exam and pogramming assignment (weighted average). Course reading Eiben, A.E., Smith, J.E., Introduction to Evolutionary Computing. Springer, 2003 ISBN 3540401849. Slides available from http://www.cs.vu.nl/~gusz/ecbook/ecbook.html. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 33 van 56

Target group mbmi, mai, mcs, mpdcs FEW individueel vak intern Vakcode X_INDVAKI_09 () Fundamentals of Bioinformatics Vakcode X_405052 (405052) Periode Periode 1 Coördinator prof. dr. J. Heringa Docent(en) prof. dr. J. Heringa Lesmethode(n) Hoorcollege, Werkcollege Inhoud vak Theory: Evolution, Genomes, Sequences, Biomolecular Structure, Thermodynamics, Statistics, ProteinProtein Interactions Practical: Exercises during/in between lectures Project in groups to solve major bioinformatics problems. The groups will be composed to include each of the three major background areas: bioinformatics, biology and computer science,. Cooperation will be encouraged and graded (!). Literatuur course material (slides, scientific papers) on bb.vu.nl Marketa Zvelebil and Jeremy O. Baum Understanding Bioinformatics Garland Science 2008 ISBN10: 0815340249 Vereiste voorkennis Bachelor in any science discipline (including medicine), or strong programming background. An interest in programming and biological problems. Aanbevolen voorkennis Inleiding Bioinformatica I' or equivalent Overige informatie Signing up via bb.vu.nl is mandatory. Genome Analysis Course code X_430047 (430047) Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 34 van 56

Period Period 1 Language of tuition English Faculty Coordinator prof. dr. J. Heringa Course objective A 1 month practical bioinformatics course about genome analysis. The course provides an introduction to genomics, the biological and algorithmic principles of genome analysis, as well as their practical implications. Goals: At the end of the course, the student will be aware of the major issues, methodology and available algorithms in genome analysis. At the end of the course, the student will have handson experience in tackling biological problems in genome analysis. Course content Theory: Genomic databases, Sequence alignment, dynamic programming, database searching, gene prediction, and further appropriate downstream genomics analysis techniques Practical: Practical assignments (a.o. multiple sequence alignment, homology searching) Reading, discussing and presenting seminal genomics papers Form of tuition OnetoOne assignment introductions Handson support Active participation Type of assessment Assignments, presentation results and oral or written exam. Course reading Xiong, J., Essential Bioinformatics. Cambridge University Press, 2006 (ISBN13: 9780521600828). Ecourse material, articles and overheads. Entry requirements Bachelor course Genomics or equivalent. Target group Third or fourth year students Computer Science, Mathematics, Chemistry or Physics; Master students Bioinformatics, Biomolecular Sciences, Biology and Biomedical Sciences Remarks The course is taught in English. Course registration is compulsory: Contact the coördinator at j.heringa@few.vu.nl. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 35 van 56

History and Philosophy of the Information Society Course code X_405043 (405043) Period Period 2 Credits 3.0 Language of tuition English Faculty Coordinator dr. ir. T. Koetsier Teaching staff dr. ir. T. Koetsier Teaching method(s) Lecture Course content This course consists of two parts. Part one (3 credit points) is devoted to an "Introduction to the History and the Philosophy of the Information Age". Part one is taught by Teun Koetsier. Part two (1 credit point), devoted to the legal aspects of the information society, is taught by lawyers from the Computer/Law Institute of the Vrije Universiteit Form of tuition Lectures ( in English). Type of assessment Written exam (in English). Course reading To be announced on the Blackboard page of the course. Digital material will be made available there as well. Entry requirements None. Target group 2IMM, 3IMM, mai, mbmi, mcs, mis Intelligent Multimedia Technology Course code X_400441 (400441) Period Period 2 Language of tuition English Faculty Coordinator prof. dr. A.P.W. Eliens Teaching staff prof. dr. A.P.W. Eliens Teaching method(s) Lecture Course objective The course aims to provide practical and theoretical knowledge about the application of intelligent multimedia technology in the development of componentbased multimedia applications. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 36 van 56

Course content The course will cover several topics, including: research and development of multimedia and game applications rich internet application(s) AJAX / Flex 3 SDK XMLbased multimedia X3D/VRML, SVG, SMIL, XIMPEL web services for game and multimedia application development mashups componentbased approach to webbased multimedia The course takes an explorative approach in investigating the potential of the various technologies and services for multimedia and (serious) game applications. Students are required to take an active role in exploring tools, APIs and SDKs, and are required to present their findings. The course will focus on the practical work of the students, organized in a series of assignments. Form of tuition Lectures and practicum. Type of assessment Essay and practicum assignment(s). Course reading Online reference material(s) Entry requirements Multimedia Authoring, or proficiency with VRML, and preferrably basic knowledge of XML. Target group mcsmm, and interested students. Remarks For information see: www.cs.vu.nl/~eliens/imt. Intelligent Web Applications Vakcode X_405055 (405055) Periode Periode 1 Docent(en) R.J. Hoekstra Lesmethode(n) Hoorcollege Internet programming Vakcode X_405082 () Coördinator dr. S. Voulgaris Docent(en) dr. S. Voulgaris Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 37 van 56

Lesmethode(n) Hoorcollege Doel vak Guide the student through the design and development of Network and Web applications. Inhoud vak The course discusses the principles for understanding, designing, and developing Internet applications. This includes programming the network (sockets, threads, RPC, RMI), programming the web interface (servlets, PHP, Javascript, AJAX), and setting up secure communication channels. Throughout the course, as well as in the context of the lab assignments, attention is paid to practical issues of applying these concepts. Onderwijsvorm Lectures combined with lab assignments Toetsvorm Final exam plus lab assignments Literatuur Course slides Vereiste voorkennis Knowledge of C, Java Aanbevolen voorkennis Systems Programming (X_400377) preferred: Computer Networks, Distributed Systems Doelgroep maicis, maics, maiktiia, maitai, mcsfmsv, mcshpdc, mcsiwt, mcs MM, mcsse, mcstai, mpdcs Introduction to Lambda Calculus Vakcode X_437022 (437022) Periode Periode 1+2 Knowledge Management and Modeling Course code X_400125 (400125) Period Period 1+2 Language of tuition English Faculty Coordinator dr. A.C.M. ten Teije Teaching staff dr. A.C.M. ten Teije Teaching method(s) Lecture Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 38 van 56

Course content Knowledge management is a relatively new discipline which has as its aim the efficiency improvement of the production factor "knowledge" and of the related business processes (knowledge creation, distribution, application and maintenance). The course "Knowledge Management and Modeling" is concerned with the organizational aspects of knowledge management, as well as the question how knowledge can be described with the support of modern informationmodeling techniques. These knowledge models can be used to develop knowledge based systems. The notion of patternbased knowledge modeling is a key issue in the knowledge management process. Students carry out a knowledgemanagement project in small project groups in a problem domain and organization of choice. Form of tuition Lectures, assignments, group project. Type of assessment Assignment, project reports. Course reading Schreiber, Akkermans, Anjewierden, de Hoog, Shadbolt, van de Velde, Wielinga: Knowledge Engineering & Management. The MIT Press, Cambridge MA, 2000, ISBN 0262193000. Target group mis, mai Literature Study Course code X_400277 (400277) Period Ac. Year (September) Language of tuition English Faculty Coordinator dr. B. Crispo Course content As the title says the course consists of carrying out a literature study on a topic chose in agreement with your supervisor. Select a topic of your interest or a course that you particularly like. Contact the the person in charge of the research area/course you picked and discuss with him/her the possibility to carry out a literature study under his/her supervision. Once agreed on the topic the study is articulated in three phases: 1. You have, indipendently without help of your supervisor, to conduct a search of related bibliographic material (i.e. papers, reports, etc.) 2. Prepare a slideshow (using any technology and/or tool you feel more apropriate) that introduces the topic to an audience of computer scientist that are however not necessarily expert on the topic presented. Following the introduction the presentation should illustrate and explain the findings of your study. 3. Give a conferencestyle talk to present the content of your study supported by the slides you just prepared. The talk will be given Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 39 van 56

to an audience of CS Master students and possibly scientific staff. The presentation will last 20 minutes with an additional time of 510 minutes for questions. 4. Write an essay (4/5 pages) reporting the findings of your study. You have to contact the teacher to arrange the schedule of your talk or for any further information about procedural matters. The presence of your supervisor at the talk is very welcome but not required. Type of assessment Presentation, essay and bibliography. Grading: You will be graded with respect to your presentation in term of both technical content and presentation skills, to the bibliography you selected and to the essay you wrote. Each of these aspects will account for 1/3 of the final grade. Target group mcs, maitli Remarks Period: Variable Master Project Course code X_400442 (400442) Period Ac. Year (September) Credits 36.0 Language of tuition English Faculty Course objective The Master Project is the place in the study where scientific and professional skills are trained most extensively. The Master Project; will always involve an element of originality or creativity, for example in performing a design task or in contributing to the solution or the analysis of a scientific problem. Other important elements of the Master Project are the cooperation with professionals and possibly with other students, planning the project, and documenting and presenting the final results. Course content The Master project concludes the Master programme. It is either in the form of a graduation project in one of the research groups of the Department of Computer Science, or as an internship in a company. In most cases it will be performed as an individual project but it can be a group project as well. For additional information and rules we refer to the website of Exact Sciences. There you will also find links to the web pages of the research groups of the Department of Computer Science, with options for master projects. Form of tuition The Master Project has always to be supervised by a staff member, in the case of an internship in cooperation with a supervisor in the company. Internships proposed by the student him/herself need approval in advance from a member; of staff, who will cooperate with supervising the project. Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 40 van 56

Type of assessment The final grade will be based on the quality of the research, the written thesis and an oral presentation. Target group mcs Remarks You will find useful documentation on all aspects of internships and the Master Project at the website of the Internship Office. This office; can give you als advise about internships. Mini Master Project AI Course code X_400428 (400428) Period Ac. Year (September) Language of tuition English Faculty Coordinator dr. M. Hoogendoorn Course objective Gaining deeper insight into a specific topic in AI. Form of tuition Individual project and written report. Type of assessment The end grade is based on both the project and the written report. Remarks Depending on the interest of the student, a specific topic is selected and an individual supervisor is assigned. Model Theory Vakcode X_437024 (437024) Periode Periode 4+5 Multimedia Authoring Vakcode X_400440 (400440) Periode Periode 1 Nederlands Coördinator prof. dr. A.P.W. Eliens Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 41 van 56

Network Programming Vakcode X_405062 (405062) Periode Periode 5 Coördinator dr. S. Voulgaris Onderwijsvorm Lectures combined with lab assignments. Aanbevolen voorkennis Systems Programming (400377); preferred: Computer Networks, Distributed Systems. Doelgroep mcsfmsv, mcsiwt, mcshpdc, mpdcs Neurale Netwerken Vakcode X_400132 (400132) Periode Periode 1 Coördinator dr. W.J. Kowalczyk Docent(en) dr. W.J. Kowalczyk Lesmethode(n) Hoorcollege, Practicum Operating Systems Vakcode X_405067 (405067) Periode Periode 4 Coördinator dr. M.R. Rieback Lesmethode(n) Hoorcollege Doel vak Get an insight into the internals of operating systems for singleprocessor machines. Inhoud vak This course gives an introduction to the internals of Operating Systems. The following topics are covered: processes, synchronization, memory allocation, multiprogramming, input / output, Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 42 van 56

protection. The course focuses on the example of the MINIX system. Onderwijsvorm Lectures Toetsvorm Written exam Literatuur Tanenbaum, A.S., Woodhull, A.S., Operating Systems, Design and Implementation 3rd edition. PrenticeHall, 2006. Aanbevolen voorkennis Recommended: Computer Systems (X_401030) Overige informatie Students who have included the course Bedrijfssystemen (400011) in their Bachelor's program must not follow this course for their Master's program. Operating Systems Practical Vakcode X_405071 (405071) Periode Periode 5+6 Coördinator ir. M.P.H. Huntjens Docent(en) ir. M.P.H. Huntjens Lesmethode(n) Hoorcollege Onderwijsvorm Practical computer work Toetsvorm Practical computer work. Parallel Programming Course code X_400161 (400161) Period Period 1 Language of tuition English Faculty Coordinator prof. dr. ir. H.E. Bal Teaching staff prof. dr. ir. H.E. Bal Teaching method(s) Lecture Course content This lecture discusses how programs can be written that run in parallel on a large number of processors, with the goal of reducing execution time. The class has a brief introduction into parallel computing Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 43 van 56

systems (architectures). The focus of the class, however, is on programming methods, languages, and applications. Both traditional techniques (like message passing) and more advanced techniques (like parallel objectoriented languages) will be discussed. In addition, attention is paid to implementation aspects of several languages. Finally, several parallel applications are discussed, including Nbody simulations, search algorithms, and multimedia content analysis. The class fits well with existing research projects within the department of Computing Systems. It is a good basis for MSc. projects in the area of parallel programming, which use the parallel computing systems of the department. Form of tuition Class with separate practicum (6 ECTS). Type of assessment Written exam. Course reading To be announced. Entry requirements Knowledge about the first part of the class Parallel Programming is recommended (introduction into parallel programming, MPI, and Java). Target group mcs, mpdcs Parallel Programming Practical Vakcode X_400162 (400162) Periode Periode 2+3 Coördinator prof. dr. ir. H.E. Bal Performance Analysis of Communication Networks Course code X_400165 (400165) Period Period 1+2 Language of tuition English Faculty Coordinator prof. dr. R.D. van der Mei Teaching staff prof. dr. R.D. van der Mei Teaching method(s) Lecture Course objective The student will acquire basic knowledge of: quantitative models for predicting and analyzing the performance of communication networks; Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 44 van 56

traffic models; traffic management techniques; performance evaluation and approximation techniques, performance measurement techniques. The student will gain experience in the development and analysis of performance models and will learn how to tackle practical performance problems arising in the telecommunications industry. Course content Over the past few years the use of communication services (WWW, mobile voice telephony, mobile Internet access, PC banking, on line ticket reservation, on line games, peer to peer applications, video services) has experienced tremendous growth. Consequently, communication networks are expected to handle huge amounts of (digital) information, and in many situations the available amounts of transmission or processing capacity is a limiting factor, which in many cases leads to degradation of the Quality of Service (QoS). A key factor for the commercial success of communication services in the competitive telecommunications market is the ability to deliver a high and predictable QoS level to the customers (in terms of response times, throughput and availability) in a cost effective manner. Typical questions that will be addressed during the course are: What does the traffic in the network look like? How can we measure performance of the network? How many customers can a given network handle with good quality? How can we predict the performance of a service in the network? How do we deal with traffic problems in the network? In addition to the basic theory of performance models for communication networks, the application of the theory to solve practical problems will play a central role. Form of tuition The course is 2 hours per week. Practical homework assignments will be distributed. Type of assessment On the basis of both the homework assignments and a written exam. Course reading Background reading material will be put on the course Website. Entry requirements Basic knowledge of stochastics and computer networks. Target group mbmi, mcs, mpdcs, mect Remarks This course might be helpful for master students Mathematics. Probability and Statistics Vakcode X_400178 (400178) Credits 4.0 Coördinator dr. F. Camia Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 45 van 56

Project Informatiekunde Vakcode X_400058 (400058) Periode Semester 2 Credits 9.0 Nederlands Coördinator prof. dr. ir. J.L. Top Docent(en) prof. dr. ir. J.L. Top Lesmethode(n) Hoorcollege Literatuur Collegedictaat. Doelgroep 3IMM, mcsse Protocol Validation Course code X_400117 (400117) Language of tuition English Faculty Coordinator prof. dr. W.J. Fokkink Teaching staff prof. dr. W.J. Fokkink Teaching method(s) Lecture, Practical Course objective Learning to use formal techniques for specification and validation of communication protocols. Course reading Wan Fokkink, Modelling Distributed Systems, Springer 2007. Quantum Computing Vakcode X_418003 (418003) Periode Periode 4, Periode 5 Scientific Visualisation and Virtual Reality Course code X_418049 (418049) Period Period 1 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 46 van 56

Language of tuition Faculty Teaching method(s) English Lecture Course content The course description is available on: http://studiegids.uva.nl/sgs/website_en Target group mcshpdc Remarks Course registration is compulsory via http://studieweb.student.uva.nl before 2 August 2010 includes registration for the examination. Scientific Writing in English Vakcode X_400592 (400592) Periode Periode 2, Periode 3, Periode 4, Periode 5 Credits 3.0 Lesmethode(n) Hoorcollege Doel vak The aim of this course is to provide the writing student with the essential linguistic means for producing English academic texts which are effective, idiomatically and stylistically appropriate and grammatically correct. Inhoud vak The initial focus in the course lies on the form of scientific texts in the Exact Sciences: Abstract (or summary) Introduction Methods Results Discussion General course outline Introducing the topics Academic and technical writing in English The characteristics of different kinds of scientific texts How scientific writing is judged and assessed Where do you find your information and how do you present it? How to avoid committing plagiarism Who am I writing for? What do I want to say? Your readership Key parts of an academic article: title, abstract, introduction, methods, results and discussion Writing the actual article Paragraph and sentence construction: how do I link paragraphs together? Writing simple and complex sentences. Active and passive sentences. Argumentation : how do I put an argument? How do I frame my own Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 47 van 56

opinion? Should I use I or we? Writing correct English Use of apostrophes and colons Word order, verb tenses, time and tense Avoiding mistakes typically made by Dutch writers Common spelling mistakes You will be making considerable use of peer assessment: examining fellow students written work and giving them feedback. This method provides useful insights into how a text might be improved. The process of providing someone else with feedback on their text is something that you will find very instructive. Onderwijsvorm The course is focused on selftuition. The plenary sessions concentrate on the process of writing and the product of writing. Homework is part of the course. With each topic, participants work through a phased series of exercises that usually conclude with the requirement to write a short piece of text. The instructor will append extensive written remarks to this text. Toetsvorm There will be no examination. However, students will receive their credits only when they have participated in all classes (presence is obligatory) and also when they have handed in the assignments satisfactorily. Students will receive a 'pass' when they have finished the course. Literatuur The reader `Writing a Scientific Article' can be obtained at the TaalcentrumVU in the Metropolitan (4th floor). The costs are 20 euro. Vereiste voorkennis Bachelor Exact Sciences Doelgroep Compulsory for mai, mcs, mmns,mmath, mbmi & msfm. Optional for mis, mbio, mpdcs, mch, mdds, mphys. Service Oriented Design Vakcode X_405061 (405061) Periode Periode 1 Coördinator dr. P. Lago Docent(en) dr. P. Lago Lesmethode(n) Hoorcollege Doel vak Learn advanced design techniques applicable to large serviceoriented software systems. Be able to select among them and apply them for a specific system. Be able to reason about and assess the design Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 48 van 56

decisions. Inhoud vak The lectures explain the concepts related to the emerging paradigm of software Service Orientation and Service Oriented Architecture (SOA). The lectures provide the students with knowledge about how to identify the requirements for a serviceoriented software system, how to map them on business services and transform them into complex networks of software services. Special emphasis is given to the design reasoning techniques for crucial decision making, service identification, SOA design and migration. Each year experts from academia and industry are invited to give guest lectures. The students participate in small teams to piecemeal develop understanding of various serviceoriented aspects, and work on and assigned SOA design project. Onderwijsvorm Lectures and group work. Toetsvorm Written reports of the assignments. Teamwork. Literatuur Material handed out by the lecturer and on Blackboard. Software Architecture Course code X_400170 (400170) Period Period 2 Language of tuition English Faculty Coordinator prof. dr. J.C. van Vliet Teaching staff prof. dr. J.C. van Vliet Teaching method(s) Lecture Course objective Get acquainted with the field of software and information architecture. Understand the drivers behind architectural decisions. Be able to develop and reason about an architecture of a non trivial system. Course content Students work in groups to develop an architecture for a fictitious system. They have to develop different representations (called views) of the architecture. These different representations emphasize different concerns of people that have a stake in the system. Each group will also be asked to assess ("test") the architecture of another group for certain quality attributes. Form of tuition Group work with a number of assignments Type of assessment Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 49 van 56

Written reports of the assignments, presentation, exam. Course reading Len Bass et al, Software Architecture in Practice second edition. AddisonWesley, 2003. Software Asset Management Course code X_400412 (400412) Period Period 1 Language of tuition English Faculty Coordinator prof. dr. C. Verhoef Teaching staff prof. dr. C. Verhoef Teaching method(s) Lecture Course objective Gain insight in IT costs, benefits, risks, and returns on information technology. Course content In this class we treat several techniques to aid in software cost estimation. We discuss how IT migrates from cost issue to strategic asset, and how to come to grips with this important production factor. We provide insight in how to support decision making on IT investment issues. Examples from the Financial and Insurance industry, and independent software vendors are discussed. With IT benchmarks we obtain insight in the risks of IT developmtn and the operational costs of IT. We introduce the notion of an IT portfolio, and how to perform quantitative analyses with it, to aid in justifying IT investments. Form of tuition Seminar with presentations of staff and students. Type of assessment Essay on selected topics from articles. You can do this individually or in a group of 3 persons max. Course reading Articles and chapters from books. Entry requirements Software Engineering (400071), a little statistical background is helpful. Target group mcs, mis, mbmi, mai Software Configuration Management Course code X_400413 (400413) Period Period 4 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 50 van 56

Language of tuition Faculty Coordinator Teaching staff Teaching method(s) English dr. R.L. Krikhaar dr. R.L. Krikhaar Lecture Course objective The goal of the course is to learn the basic concepts and principles of Software Configuration Management and to learn how to select and apply them in a real world context. Course content Software Configuration Management (SCM) is required to control evolving software systems. This course introduces the basic concepts and principles underlying software configuration management, a. o. change control, version management, build management and release management. Tools are inevitable for SCM, therefore a number of SCM tools are compared to the discussed concepts and one or two of them are practiced. New research areas of SCM are discussed: multi disciplined configuration management, multi sites CM and CM for multiple products (product families). In addition, the lectures will also cover SCM experiences in industry. Form of tuition lectures; working lectures (article reviews); practice (workshop with a commercial SCM tool). Type of assessment review of articles (presentation); SCM study in industry (paper). Course reading SCM book (to be announced before course starts); articles (to be selected during course). Entry requirements Bachelor Informatica, especially: 400071 Software Engineering; 400067 Project Software Engineering. Target group mcs Software Mining Course code X_405009 (405009) Period Period 5 Language of tuition English Faculty Teaching staff dr. R. Premraj Teaching method(s) Lecture, Practical Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 51 van 56

Course objective From this course, students to extract knowledge from large software engineering artifacts such as version archives and bug databases and use the knowledge to make software developers produce higher quality code, that too more efficiently. Course content Software development results in a huge amount of data: changes are recorded in version archives, bugs are reported to issue tracking system, features are discussed in emails and newsgroups. This course will cover methods and techniques to mine this data. Specifically, the course will present recent research on software evolution, bug detection and prediction, guiding software development, code reuse and search, as well as program analysis techniques such as impact analysis and feature location. The course will also give an introduction to empirical software engineering, showing how to conduct quantitative and qualitative studies. Form of tuition Lectures and practical work Type of assessment Written/oral exam (to be decided at start of the lecture). Course reading Relevant research papers will be indicated at the end of each lecture. Target group mis, mcs Software Project Management Vakcode X_405058 (405058) Doel vak Get a basic understanding of the management aspects of software development projects: the issues at stake, the role of the project managers, and some of the techniques applicable to small or large projects. Inhoud vak This course introduces the concepts, issues, techniques, practices of software project management, and places them in the contexts of more general management framework, such as the PMBOK, software engineering processes, such as the RUP or agile processes, and standards. We define the key characteristics of a software project and then cover the topics of time management: the software development lifecycle, phases, iterations, milestones, and the methods for estimation of effort, staffing level and schedule; the management of risk and quality; the management of scope, the management of changes and the control of progress; the management of software assets; the management of people, both individual and teams, and typical project organizations. The Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 52 van 56

course also introduces topics important to know for a software project manager and a software developer, such as: intellectual property rights, professional practice, intercultural issues, and ethics. Toetsvorm Weekly assignments and readings (using Blackboard). Final examination: closed book, 40% of the final mark. Literatuur a) Textbook (optional): Bob Hughes & Mike Cotterell, Software Project Management, 4th ed, McGrawHill (2005) or later edition: 5th ed (2008) b) Articles on Blackboard Vereiste voorkennis Software Engineering Doelgroep mcs, mis Overige informatie Students are required to sign up for this course at Blackboard and via TIS (https://tisvu.v.unl/tis/menu) at least 2 weeks before the course starts. For details, see the Blackboard system http://bb.vu.nl Software Testing Course code X_400439 (400439) Period Period 5 Language of tuition English Faculty Coordinator dr. N. SilvisCividjian Teaching staff dr. N. SilvisCividjian Teaching method(s) Lecture, Practical Course objective Familiarization with basic terminology in software testing. Familiarization with techniques and tools used for test generation, execution and adequacy measument. Familiarization with software testing literature in a specific area by independent reading of selected research publications. Course content Testing is a method to improve software quality. Realistically, software testing is a tradeoff between budget, time and quality. It is impossible to test everything so choices have to be made. Students learn how to make these choices and systematically test a software product based only on its requirements or when the code is also available. This course provides an introduction to software testing with an emphasis on technical activities like test generation, selection, prioritization and assessment. The course tries to answer a few Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 53 van 56

questions like: How to design test cases? When to stop testing? What to test when a new version of the product is ready? How to test a safety critical software? How to predict how many faults are in a program? During their practical assignments the students have to test small and large objectoriented software using the techniques learned in class and a set of testing tools. A few guest lectures showing examples of testing in industry are also planned. Topics: boundary value analysis, equivalence partitioning, decision table testing, combinatorial test design, control flow testing, data flow testing, mutation testing, regression testing, inspections, safety and reliability testing, fault and failure prediction. Form of tuition Lectures and compulsory practical assignments. Type of assessment Practical assignments and written exam. Course reading A. Mathur, Foundations of software testing, Pearson Education, AddisonWesley, 2008, *ISBN: * 9788131716601 Recommended background knowledge Programming proficiency in Java, Software engineering. Target group mcsse, mcsiwt Remarks All material is available in Blackboard. The course is taught in English. Structural Bioinformatics Vakcode X_405019 (405019) Periode Periode 4 Coördinator dr. ir. K.A. Feenstra Docent(en) dr. ir. K.A. Feenstra, dr. S. Abeln Lesmethode(n) Hoorcollege, Practicum Literatuur ` course material on bb.vu.nl Marketa Zvelebil and Jeremy O. Baum Understanding Bioinformatics Garland Science 2008 ISBN10: 0815340249 Term Rewriting Systems Course code X_400121 (400121) Period Period 2 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 54 van 56

Language of tuition English Faculty Coordinator dr. R.C. de Vrijer Course objective Learning the fundamental notions of term rewriting and getting acquainted with some more advanced topics in the field Course content Term rewriting systems (TRSs) provide for a natural formalism for specifying rules of computation and investigating their properties. TRSs are of basic importance for functional programming and for the implementation of abstract data types. Applications can also be found in theorem proving, proof checking and logic programming. Some topics that will be covered in the course are: abstract reduction systems; critical pairs and KnuthBendix completion; orthogonality and reduction strategies; termination (rpo's, monotone algebras); combinatory logic; decidability issues; infinitary rewriting. Form of tuition Lectures and practice sessions. Type of assessment Written examination. Course reading Course notes will be provided. Entry requirements Compulsory: Inleiding logica. Advised: Inleiding theoretische informatica. Target group mcs, mai, mmath Theory and Application of MultThreading Vakcode X_437025 (437025) Periode Periode 5 Voortgezette logica Vakcode X_400410 (400410) Credits 4.0 Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 55 van 56

Vrije Universiteit Amsterdam M Computer Science 20102011 862012 Pagina 56 van 56