Update Coming From Abroad Information authored by Jinghuai Lin's avatar Jinghuai Lin
...@@ -2,13 +2,12 @@ ...@@ -2,13 +2,12 @@
# Overview # Overview
## Registration Procedure ## Registration Procedure
* [Before your arrival in Würzburg](https://www.uni-wuerzburg.de/en/international/studying-in-wuerzburg/exchange-students/before-arrival-exchange-students/) * [Before your arrival in Würzburg](https://www.uni-wuerzburg.de/en/international/studying-in-wuerzburg/exchange-students/before-arrival-exchange-students/)
* [After your arrival in Würzburg](https://www.uni-wuerzburg.de/en/international/studying-in-wuerzburg/exchange-students/after-arrival-exchange-students/) * [After your arrival in Würzburg](https://www.uni-wuerzburg.de/en/international/studying-in-wuerzburg/exchange-students/after-arrival-exchange-students/)
* [International Office of the University of Würzburg](https://www.uni-wuerzburg.de/en/international/home/) * [International Office of the University of Würzburg](https://www.uni-wuerzburg.de/en/international/home/)
## Information for International Exchange Students ## Information for International Exchange Students
A typical semester for an international student that stays for one semester is structured as follows: A typical semester for an international student that stays for one semester is structured as follows:
...@@ -21,14 +20,11 @@ A typical semester for an international student that stays for one semester is s ...@@ -21,14 +20,11 @@ A typical semester for an international student that stays for one semester is s
Detailed information about the available courses for international students can be found in the list below. Detailed information about the available courses for international students can be found in the list below.
## Information for International Fulltime Students ## Information for International Fulltime Students
The [International Office of the University of Würzburg](https://www.uni-wuerzburg.de/en/international/home/) provides information and advice for international students who want to apply for or are already enrolled in one of our courses. The [International Office of the University of Würzburg](https://www.uni-wuerzburg.de/en/international/home/) provides information and advice for international students who want to apply for or are already enrolled in one of our courses.
Information about the application for international students can found on the pages of the [International Office](https://www.uni-wuerzburg.de/en/international/studying-in-wuerzburg/degree-programmes/application/). Information about the application for international students can found on the pages of the [International Office](https://www.uni-wuerzburg.de/en/international/studying-in-wuerzburg/degree-programmes/application/). Please contact the international office for advice.
Please contact the international office for advice.
# Incoming PhD # Incoming PhD
...@@ -677,8 +673,6 @@ For detailed information see [here](https://www.uni-wuerzburg.de/fileadmin/ext00 ...@@ -677,8 +673,6 @@ For detailed information see [here](https://www.uni-wuerzburg.de/fileadmin/ext00
</tr> </tr>
</table> </table>
# Modules for Incoming Exchange Students # Modules for Incoming Exchange Students
The modules listed on this page are offered for international exchange students and can be held in English. The modules listed on this page are offered for international exchange students and can be held in English.
...@@ -687,10 +681,8 @@ The modules listed on this page are offered for international exchange students ...@@ -687,10 +681,8 @@ The modules listed on this page are offered for international exchange students
--- ---
### HCI Master Seminar (5 ECTS) ### HCI Master Seminar (5 ECTS)
##### Description ##### Description
Sound research requires an in-depth reflection of prior approaches and the related work typically published in the scientific media (conference proceedings, journals, books, etc.). This course is an advanced course about typical scientific research work with a specific focus on topics from the field of human-computer interaction (HCI). Sound research requires an in-depth reflection of prior approaches and the related work typically published in the scientific media (conference proceedings, journals, books, etc.). This course is an advanced course about typical scientific research work with a specific focus on topics from the field of human-computer interaction (HCI).
...@@ -719,7 +711,7 @@ Participants will learn how to apply scientific methods from the HCI field. They ...@@ -719,7 +711,7 @@ Participants will learn how to apply scientific methods from the HCI field. They
##### Level ##### Level
- Master HCI or Computer Science (< 3 semesters) - Master HCI or Computer Science (\< 3 semesters)
--- ---
...@@ -739,16 +731,14 @@ After the course, the participants will have a solid understanding of how to sol ...@@ -739,16 +731,14 @@ After the course, the participants will have a solid understanding of how to sol
##### Required Prerequisites ##### Required Prerequisites
- Programming (> 10 ECTS) - Programming (\> 10 ECTS)
- Statistics (> 4 ECTS) - Statistics (\> 4 ECTS)
- Research Methods (> 4 ECTS) - Research Methods (\> 4 ECTS)
--- ---
### HCI Project Exhibition (5 ECTS) ### HCI Project Exhibition (5 ECTS)
##### Description ##### Description
Presentation and communication are important skills for application-oriented and practical aspects of various sciences. This is specifically true for Human-Computer Interaction (HCI). This course requires the participants to present the results of an associated project to a larger audience in a and exhibition-like setup. Presentation and communication are important skills for application-oriented and practical aspects of various sciences. This is specifically true for Human-Computer Interaction (HCI). This course requires the participants to present the results of an associated project to a larger audience in a and exhibition-like setup.
...@@ -757,14 +747,13 @@ Presentation and communication are important skills for application-oriented and ...@@ -757,14 +747,13 @@ Presentation and communication are important skills for application-oriented and
The participants will learn how to present their own work to a larger audience, how to plan, design and set-up the different parts of an own exhibition booth, and how to react individually to questions from the audience. The participants will learn how to present their own work to a larger audience, how to plan, design and set-up the different parts of an own exhibition booth, and how to react individually to questions from the audience.
##### Level ##### Level
- Master HCI or Computer Science. - Master HCI or Computer Science.
##### Required Prerequisites ##### Required Prerequisites
- Project (> 9 ECTS) - Project (\> 9 ECTS)
--- ---
...@@ -782,16 +771,16 @@ After the course, the students will have a broad understanding of the necessary ...@@ -782,16 +771,16 @@ After the course, the students will have a broad understanding of the necessary
##### Level ##### Level
- Bachelor HCI or Computer Science > 4 semesters. - Bachelor HCI or Computer Science \> 4 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Programming (> 10 ECTS) - Programming (\> 10 ECTS)
##### Recommended Prerequisites ##### Recommended Prerequisites
- Computer Graphics (> 4 ECTS) - Computer Graphics (\> 4 ECTS)
- Artificial Intelligence (> 4 ECTS) - Artificial Intelligence (\> 4 ECTS)
--- ---
...@@ -801,7 +790,6 @@ After the course, the students will have a broad understanding of the necessary ...@@ -801,7 +790,6 @@ After the course, the students will have a broad understanding of the necessary
### 3D User Interfaces (5 ECTS) ### 3D User Interfaces (5 ECTS)
##### Description ##### Description
This module will give students the opportunity to learn about the specificities of 3D User Interfaces (3DUI) development using Virtual, Augmented or Mixed Reality technologies. This module will give students the opportunity to learn about the specificities of 3D User Interfaces (3DUI) development using Virtual, Augmented or Mixed Reality technologies.
...@@ -818,17 +806,16 @@ Previous years, the assignment replicated the [IEEE 3DUI Contest 2011](http://co ...@@ -818,17 +806,16 @@ Previous years, the assignment replicated the [IEEE 3DUI Contest 2011](http://co
After the course, the students will gain a solid background on the theory and the methods to create your own 3D spatial interfaces. They will have a broad understanding of the particular difficulties of designing and developing spatial interfaces, as well as evaluating then. Students will also learn about traditional and novel 3D input/output devices (e.g. motion tracking system and Head-mounted Display). After the course, the students will gain a solid background on the theory and the methods to create your own 3D spatial interfaces. They will have a broad understanding of the particular difficulties of designing and developing spatial interfaces, as well as evaluating then. Students will also learn about traditional and novel 3D input/output devices (e.g. motion tracking system and Head-mounted Display).
##### Level ##### Level
- Master HCI or Computer Science - Master HCI or Computer Science
- Bachelor HCI or Computer Science > 4 semesters. - Bachelor HCI or Computer Science \> 4 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Programming (> 10 ECTS) - Programming (\> 10 ECTS)
- Real-Time Interactive Systems (> 4 ECTS) - Real-Time Interactive Systems (\> 4 ECTS)
- Computer Graphics (> 4 ECTS) - Computer Graphics (\> 4 ECTS)
--- ---
...@@ -853,21 +840,20 @@ A specific emphasize will be on stages like morphology and semantic analysis. Ty ...@@ -853,21 +840,20 @@ A specific emphasize will be on stages like morphology and semantic analysis. Ty
After the course, the students will be able to build their own multimodal interfaces. They will have a broad understanding of all the necessary steps involved and will know prominent algorithmic solutions for each of them. Student will learn about available tools for reoccurring tasks and their pros and cons. After the course, the students will be able to build their own multimodal interfaces. They will have a broad understanding of all the necessary steps involved and will know prominent algorithmic solutions for each of them. Student will learn about available tools for reoccurring tasks and their pros and cons.
##### Level ##### Level
- Master HCI or Computer Science - Master HCI or Computer Science
- Bachelor HCI or Computer Science > 4 semesters. - Bachelor HCI or Computer Science \> 4 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Programming (> 10 ECTS) - Programming (\> 10 ECTS)
- Machine Learning (> 4 ECTS) - Machine Learning (\> 4 ECTS)
##### Recommended Prerequisites ##### Recommended Prerequisites
- Real-Time Interactive Systems (> 4 ECTS) - Real-Time Interactive Systems (\> 4 ECTS)
- 3D User Interfaces (> 4 ECTS) - 3D User Interfaces (\> 4 ECTS)
--- ---
...@@ -879,18 +865,17 @@ Computer graphics studies methods for digitally synthesizing and manipulating vi ...@@ -879,18 +865,17 @@ Computer graphics studies methods for digitally synthesizing and manipulating vi
The course will cover topics about light and images, lighting models, data representations, mathematical formulations of movements, projection as well as texturing methods. Theoretical aspects of the steps involved in ray-tracing and the raster pipeline will be complemented by algorithmic approaches for interactive image syntheses using computer systems. Accompanying software solutions will utilize modern graphics packages and languages like OpenGL, GLSL and/or DirectX. The course will cover topics about light and images, lighting models, data representations, mathematical formulations of movements, projection as well as texturing methods. Theoretical aspects of the steps involved in ray-tracing and the raster pipeline will be complemented by algorithmic approaches for interactive image syntheses using computer systems. Accompanying software solutions will utilize modern graphics packages and languages like OpenGL, GLSL and/or DirectX.
##### Competencies/Qualification ##### Competencies/Qualification
After the course, the students will have a broad understanding of the underlying theoretical models of computer graphics. They will be able to implement a prominent variety of these models, to build their own interactive graphics applications, and to choose the right software tool for this task. After the course, the students will have a broad understanding of the underlying theoretical models of computer graphics. They will be able to implement a prominent variety of these models, to build their own interactive graphics applications, and to choose the right software tool for this task.
##### Level ##### Level
- Bachelor HCI or Computer Science > 3 semesters. - Bachelor HCI or Computer Science \> 3 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Programming (> 10 ECTS) - Programming (\> 10 ECTS)
##### Recommended Prerequisites ##### Recommended Prerequisites
...@@ -900,30 +885,27 @@ After the course, the students will have a broad understanding of the underlying ...@@ -900,30 +885,27 @@ After the course, the students will have a broad understanding of the underlying
### Interactive Artificial Intelligence (5 ECTS) ### Interactive Artificial Intelligence (5 ECTS)
##### Description ##### Description
Artificial Intelligence (AI) studies the science and engineering of making intelligent machines, that is, methods which let machines or software exhibit intelligent behavior. This course specifically concentrates on interactive methods applicable to novel human-computer interfaces and computer games. Artificial Intelligence (AI) studies the science and engineering of making intelligent machines, that is, methods which let machines or software exhibit intelligent behavior. This course specifically concentrates on interactive methods applicable to novel human-computer interfaces and computer games.
The course will cover topics about problem solving in general, search methods, semantic representation, logic and deduction methods, constraint satisfaction methods, as well as algorithmic approaches to apply these methods to interactive systems. The latter includes the identification of necessary software modules and requirements for AI-enabled systems as well as APIs for building so-called world interfaces. The course will cover topics about problem solving in general, search methods, semantic representation, logic and deduction methods, constraint satisfaction methods, as well as algorithmic approaches to apply these methods to interactive systems. The latter includes the identification of necessary software modules and requirements for AI-enabled systems as well as APIs for building so-called world interfaces.
##### Competencies/Qualification ##### Competencies/Qualification
After the course, the students will have a broad understanding of the underlying theoretical models and methods used in interactive Artificial Intelligence. They will be able to implement a prominent variety of these methods, to build their own intelligent interactive applications, and to choose the right software tool for this task. After the course, the students will have a broad understanding of the underlying theoretical models and methods used in interactive Artificial Intelligence. They will be able to implement a prominent variety of these methods, to build their own intelligent interactive applications, and to choose the right software tool for this task.
##### Level ##### Level
- Bachelor HCI or Computer Science > 4 semesters. - Bachelor HCI or Computer Science \> 4 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Programming (> 10 ECTS) - Programming (\> 10 ECTS)
--- ---
### <s> Multiplayer Online Games - Theory (5 ECTS) ### ~~Multiplayer Online Games - Theory (5 ECTS)~~
> `Important - Module Not Provided Anymore` > `Important - Module Not Provided Anymore`
...@@ -941,7 +923,6 @@ Students will be assessed through a written exam. ...@@ -941,7 +923,6 @@ Students will be assessed through a written exam.
Note: It is strongly recommended to also follow the module: Multiplayer Online Game - Practice (MOG-P) after participating to this course. Note: It is strongly recommended to also follow the module: Multiplayer Online Game - Practice (MOG-P) after participating to this course.
##### Competencies/Qualification ##### Competencies/Qualification
After the course, the students will gain a solid background on the theory and the methods to analyze the impact on games development of network hardware, protocols, architectures and topologies. After the course, the students will gain a solid background on the theory and the methods to analyze the impact on games development of network hardware, protocols, architectures and topologies.
...@@ -951,20 +932,20 @@ They will have a broad understanding of the particular difficulties of designing ...@@ -951,20 +932,20 @@ They will have a broad understanding of the particular difficulties of designing
##### Level ##### Level
- Master HCI or Computer Science - Master HCI or Computer Science
- Bachelor HCI or Computer Science > 4 semesters. - Bachelor HCI or Computer Science \> 4 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Algorithmen und Datenstrukturen (> 10 ECTS) - Algorithmen und Datenstrukturen (\> 10 ECTS)
- Softwaretechnik (> 10 ECTS) - Softwaretechnik (\> 10 ECTS)
- Programmierpraktikum (> 10 ECTS) - Programmierpraktikum (\> 10 ECTS)
- Software Quality (> 10 ECTS) - Software Quality (\> 10 ECTS)
##### Recommended Prerequisites ##### Recommended Prerequisites
- Real-Time Interactive Systems (> 4 ECTS) - Real-Time Interactive Systems (\> 4 ECTS)
- Computer Graphics (> 4 ECTS) - Computer Graphics (\> 4 ECTS)
- Developing Games (> 6 ECTS) - Developing Games (\> 6 ECTS)
--- ---
...@@ -974,14 +955,11 @@ They will have a broad understanding of the particular difficulties of designing ...@@ -974,14 +955,11 @@ They will have a broad understanding of the particular difficulties of designing
### Real-Time Interactive Systems (5 ECTS) ### Real-Time Interactive Systems (5 ECTS)
##### Description ##### Description
This course provides an introduction into the requirements, concepts, and engineering art of This course provides an introduction into the requirements, concepts, and engineering art of highly interactive human-computer systems. Such systems are typically found in perceptual computing, Virtual, Augmented, Mixed Reality, computer games, and cyber-physical systems. Lately, these systems are often termed Real-Time Interactive Systems (RIS) due to their common aspects.
highly interactive human-computer systems. Such systems are typically found in perceptual computing, Virtual, Augmented, Mixed Reality, computer games, and cyber-physical systems. Lately, these systems are often termed Real-Time Interactive Systems (RIS) due to their common aspects.
The course covers theoretical models derived from the requirements of the application area as well as common hands-on and novel solutions necessary to tackle and fulfill these requirements. The course covers theoretical models derived from the requirements of the application area as well as common hands-on and novel solutions necessary to tackle and fulfill these requirements. The first part of the course will concentrate on the conceptual principles characterizing real-time interactive systems. Questions answered are: What are the main requirements? How do we handle multiple modalities? How do we define the timeliness of RIS? Why is it important? What do we have to do to assure timeliness? The second part will introduce a conceptual model of the mission-critical aspects of time, latencies, processes, and events necessary to describe a system’s behavior. The third part introduces the application state, it’s requirements of distribution and coherence, and the consequences these requirements have on decoupling and software quality aspects in general. The last part introduces some potential solutions to data redundancy, distribution, synchronization, and interoperability.
The first part of the course will concentrate on the conceptual principles characterizing real-time interactive systems. Questions answered are: What are the main requirements? How do we handle multiple modalities? How do we define the timeliness of RIS? Why is it important? What do we have to do to assure timeliness? The second part will introduce a conceptual model of the mission-critical aspects of time, latencies, processes, and events necessary to describe a system’s behavior. The third part introduces the application state, it’s requirements of distribution and coherence, and the consequences these requirements have on decoupling and software quality aspects in general. The last part introduces some potential solutions to data redundancy, distribution, synchronization, and interoperability.
Along the way, typical and prominent state-of-the-art approaches to reoccurring engineering tasks are discussed. This includes pipeline systems, scene graphs, application graphs (aka field routing), event systems, entity and component models, and others. Novel concepts like actor models and ontologies will be covered as alternative solutions. The theoretical and conceptual discussions will be put into a practical context of today’s commercial and research systems, e.g., X3D, instant reality, Unity3d, Unreal Engine 4, and Simulator X. Along the way, typical and prominent state-of-the-art approaches to reoccurring engineering tasks are discussed. This includes pipeline systems, scene graphs, application graphs (aka field routing), event systems, entity and component models, and others. Novel concepts like actor models and ontologies will be covered as alternative solutions. The theoretical and conceptual discussions will be put into a practical context of today’s commercial and research systems, e.g., X3D, instant reality, Unity3d, Unreal Engine 4, and Simulator X.
...@@ -992,23 +970,22 @@ After the course, the students will have a solid understanding of the boundary c ...@@ -992,23 +970,22 @@ After the course, the students will have a solid understanding of the boundary c
##### Level ##### Level
- Master HCI or Computer Science - Master HCI or Computer Science
- Bachelor HCI or Computer Science > 4 semesters. - Bachelor HCI or Computer Science \> 4 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Software engineering, software quality (> 10 ECTS) - Software engineering, software quality (\> 10 ECTS)
- Programming (> 10 ECTS) - Programming (\> 10 ECTS)
- Computer graphics (> 4 ECTS) - Computer graphics (\> 4 ECTS)
##### Recommended Prerequisites ##### Recommended Prerequisites
- Perception and physiology (> 5 ETCS) - Perception and physiology (\> 5 ETCS)
--- ---
### Machine Learning (5 ECTS) ### Machine Learning (5 ECTS)
##### Description ##### Description
Machine learning is the science of getting computers to act without being explicitly programmed. In the past decade, machine learning has given us practical speech recognition, effective web search, self-driving cars, and a vastly improved understanding of the human genome. Machine learning is so pervasive today that you probably use it dozens of times a day without knowing it. It is one of today's prominent paradigms in HCI applicable in all areas where the understanding of user input of high variability, specifically for natural interactions using, e.g., gesture, speech, or eye-gaze, is paramount. Many researchers also think it is the best way to make progress towards human-level AI. Machine learning is the science of getting computers to act without being explicitly programmed. In the past decade, machine learning has given us practical speech recognition, effective web search, self-driving cars, and a vastly improved understanding of the human genome. Machine learning is so pervasive today that you probably use it dozens of times a day without knowing it. It is one of today's prominent paradigms in HCI applicable in all areas where the understanding of user input of high variability, specifically for natural interactions using, e.g., gesture, speech, or eye-gaze, is paramount. Many researchers also think it is the best way to make progress towards human-level AI.
...@@ -1021,26 +998,24 @@ This course provides a broad introduction to machine learning, data-mining, and ...@@ -1021,26 +998,24 @@ This course provides a broad introduction to machine learning, data-mining, and
After the course, the students will be able to solve machine learning tasks on their own using assistive technologies, e.g., like Octave. In addition, they will be able to derive main principles and apply these in own programs. Students will be able to choose the appropriate approach and tools to solve a given machine learning task in various application area, specifically in HCI. After the course, the students will be able to solve machine learning tasks on their own using assistive technologies, e.g., like Octave. In addition, they will be able to derive main principles and apply these in own programs. Students will be able to choose the appropriate approach and tools to solve a given machine learning task in various application area, specifically in HCI.
##### Level ##### Level
- Master HCI or Computer Science - Master HCI or Computer Science
- Bachelor HCI or Computer Science > 4 semesters. - Bachelor HCI or Computer Science \> 4 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Programming (> 10 ECTS) - Programming (\> 10 ECTS)
##### Recommended Prerequisites ##### Recommended Prerequisites
- Statistics (> 5 ETCS) - Statistics (\> 5 ETCS)
- Real-Time Interactive Systems (> 4 ECTS) - Real-Time Interactive Systems (\> 4 ECTS)
--- ---
### Software Quality (5 ECTS) ### Software Quality (5 ECTS)
##### Description ##### Description
How to develop high quality software? How to write good code? This module will give students teach how to recognize and write high quality software code. How to develop high quality software? How to write good code? This module will give students teach how to recognize and write high quality software code.
...@@ -1053,47 +1028,40 @@ Different programming languages will be used to highlight typical examples and k ...@@ -1053,47 +1028,40 @@ Different programming languages will be used to highlight typical examples and k
After the course, the students will gain a solid background on the theory and the methods to produce high quality code. They will also have a broad understanding of testing techniques and software requirements specifications. After the course, the students will gain a solid background on the theory and the methods to produce high quality code. They will also have a broad understanding of testing techniques and software requirements specifications.
##### Level ##### Level
- Master HCI or Computer Science - Master HCI or Computer Science
- Bachelor HCI or Computer Science > 2 semesters. - Bachelor HCI or Computer Science \> 2 semesters.
##### Required Prerequisites ##### Required Prerequisites
- Algorithmen und Datenstrukturen (> 10 ECTS) - Algorithmen und Datenstrukturen (\> 10 ECTS)
- Softwaretechnik (> 10 ECTS) - Softwaretechnik (\> 10 ECTS)
- Programmierpraktikum (> 10 ECTS) - Programmierpraktikum (\> 10 ECTS)
--- ---
### <s>Multiplayer Online Games - Practice (5 ECTS) ### ~~Multiplayer Online Games - Practice (5 ECTS)~~
> `Important - Module Not Provided Anymore` > `Important - Module Not Provided Anymore`
##### Description ##### Description
This module will give the students the opportunity to program multiplayer online games through the use of suitable libraries and middleware (e.g. game engine). This module will give the students the opportunity to program multiplayer online games through the use of suitable libraries and middleware (e.g. game engine). Students will be assessed through a team project, which will consist of developing and presenting multiplayer online games. This module will run as a _Game Lab_ for multiplayer online games. The first part will be mainly dedicated to learning different game technologies as well as reviewing basic game programming techniques and traditional online game architectures. During the second part, teams will work on their project while being supervised by lecturers and tutors. Each week teams will briefly present their progress and discuss future work, issues as well as potential solutions.
Students will be assessed through a team project, which will consist of developing and presenting multiplayer online games.
This module will run as a *Game Lab* for multiplayer online games.
The first part will be mainly dedicated to learning different game technologies as well as reviewing basic game programming techniques and traditional online game architectures.
During the second part, teams will work on their project while being supervised by lecturers and tutors. Each week teams will briefly present their progress and discuss future work, issues as well as potential solutions.
Note: It is strongly recommended to also follow the module: Multiplayer Online Game - Theory (MOG-T) in parallel or before participating to this practical course. Note: It is strongly recommended to also follow the module: Multiplayer Online Game - Theory (MOG-T) in parallel or before participating to this practical course.
##### Competencies/Qualification ##### Competencies/Qualification
After the course, the students will have gained practical skills to implement multiplayer online games, using industry standard libraries and game engines. After the course, the students will have gained practical skills to implement multiplayer online games, using industry standard libraries and game engines.
##### Level ##### Level
- Master HCI or Computer Science - Master HCI or Computer Science
- Bachelor HCI or Computer Science > 4 semesters. - Bachelor HCI or Computer Science \> 4 semesters.
##### Recommended Prerequisites ##### Recommended Prerequisites
- Algorithmen und Datenstrukturen - Algorithmen und Datenstrukturen
- Softwaretechnik - Softwaretechnik
- Programmierpraktikum - Programmierpraktikum
...@@ -1111,7 +1079,6 @@ This module will allow the students to learn and practice the skills essential t ...@@ -1111,7 +1079,6 @@ This module will allow the students to learn and practice the skills essential t
The module will give a first overview of intra-process and extra-process communication techniques. The module will give a first overview of intra-process and extra-process communication techniques.
This module will give an overview of networking protocols and thread libraries and familiarize the students with multithreaded and distributed programming paradigms, focusing in particular on the real-time interactive systems (RIS) domain (such as video games, virtual reality, or mixed reality applications). This module will give an overview of networking protocols and thread libraries and familiarize the students with multithreaded and distributed programming paradigms, focusing in particular on the real-time interactive systems (RIS) domain (such as video games, virtual reality, or mixed reality applications).
Issues faced when developing a concurrent or distributed application will be tackled, including thread synchronization and network protocol reliability. Classical and innovative design patterns and architectures will also be studied. Issues faced when developing a concurrent or distributed application will be tackled, including thread synchronization and network protocol reliability. Classical and innovative design patterns and architectures will also be studied.
...@@ -1124,8 +1091,7 @@ Students will be assessed through a written exam. ...@@ -1124,8 +1091,7 @@ Students will be assessed through a written exam.
- Inter- and extra- process communications - Inter- and extra- process communications
- Threads models (lightweight processes) in high-level languages such as Java,C# or C++ and inter-threads and external communications and synchronization - Threads models (lightweight processes) in high-level languages such as Java,C# or C++ and inter-threads and external communications and synchronization
- Design and development of a concurrent and networked application using a suitable API - Design and development of a concurrent and networked application using a suitable API Communication Protocols (e.g., Ipv6, UDP, TCP, HTTP, RTP and SSL/TLS)
Communication Protocols (e.g., Ipv6, UDP, TCP, HTTP, RTP and SSL/TLS)
- Stream and datagram sockets - Stream and datagram sockets
- Distributed architectures (e.g., clients-server, services-based architectures) - Distributed architectures (e.g., clients-server, services-based architectures)
- Abstractions for concurrent and distributed applications: - Abstractions for concurrent and distributed applications:
...@@ -1133,34 +1099,29 @@ Students will be assessed through a written exam. ...@@ -1133,34 +1099,29 @@ Students will be assessed through a written exam.
- communication models, - communication models,
- distributed objects models - distributed objects models
##### Competencies/Qualification ##### Competencies/Qualification
This module aims to: This module aims to:
1. Provide the students with an understanding of computer networks systems. 1. Provide the students with an understanding of computer networks systems.
2. Develop the students' ability to design and develop concurrent and networked applications using a variety of languages and suitable APIs, and through adequate design patterns and communication models.
3. Provide an overview of different concurrent programming models, such as threads and processes, and the different communication models they can support.
4. Describe the classical networking protocols and communication models on private networks and the Internet.
5. Describe the issues faced when developing distributed applications with strong real-time interactive requirements such as digital games, virtual reality or mixed reality applications.
1. Develop the students' ability to design and develop concurrent and networked applications using a variety of languages and suitable APIs, and through adequate design patterns and communication models. ##### Prerequisites
1. Provide an overview of different concurrent programming models, such as threads and processes, and the different communication models they can support.
1. Describe the classical networking protocols and communication models on private networks and the Internet.
1. Describe the issues faced when developing distributed applications with strong real-time interactive requirements such as digital games, virtual reality or mixed reality applications.
##### Prerequisites ##
Targeted Level Targeted Level
- Bachelor Games Engineering >= 3 semesters. - Bachelor Games Engineering \>= 3 semesters.
Recommended Level Recommended Level
- Bachelor of Science >= 3 semesters. - Bachelor of Science \>= 3 semesters.
- Master HCI or Computer Science - Master HCI or Computer Science
- Bachelor HCI or Computer Science > 3 semesters. - Bachelor HCI or Computer Science \> 3 semesters.
##### Recommended previous knowledge ### ##### Recommended previous knowledge
- Algorithm and Data Structure - Algorithm and Data Structure
- Software Developments - Software Developments
...@@ -1170,3 +1131,37 @@ Recommended Level ...@@ -1170,3 +1131,37 @@ Recommended Level
##### Literature ##### Literature
Provided during the lecture. Provided during the lecture.
---
### Principles of Realtime Interactive Systems
##### Description
This course provides an introduction into the requirements, concepts, and engineering art of highly interactive human-computer systems. Such systems are typically found in perceptual computing, Virtual, Augmented, Mixed Reality, computer games, and cyber-physical systems. Lately, these systems are often termed Real-Time Interactive Systems (RIS) due to their common aspects or more recently eXtended Reality (XR).
The course covers theoretical models derived from the requirements of the application area as well as common hands-on and novel solutions necessary to tackle and fulfill these requirements. The first part of the course will concentrate on the conceptual principles characterizing real-time interactive systems. Questions answered are: What are the main requirements? How do we handle multiple modalities? How do we define the timeliness of RIS? Why is it important? What do we have to do to assure timeliness? The second part will introduce a conceptual model of the mission-critical aspects of time, latencies, processes, and events necessary to describe a system’s behavior. The third part introduces the application state, it’s requirements of distribution and coherence, and the consequences these requirements have on decoupling and software quality aspects in general. The last part introduces some potential solutions to data redundancy, distribution, synchronization, and interoperability.
Along the way, typical and prominent state-of-the-art approaches to reoccurring engineering tasks are discussed. This includes pipeline systems, scene graphs, application graphs (aka field routing), event systems, entity and component models, and others. Novel concepts like actor models and ontologies will be covered as alternative solutions. The theoretical and conceptual discussions will be put into a practical context of today’s commercial and research systems, e.g., X3D, instant reality, Unity3d, Unreal Engine 4, and Simulator X.
##### Competencies/Qualification
After the course, the students will have a solid understanding of the boundary conditions defined by both, the physiological and psychological characteristics of the human users as well as by the architectures and technological characteristics of today’s computer systems. Participants will gain a solid understanding about what they can expect from today’s technological solutions. They will be able to choose the appropriate approach and tools to solve a given engineering task in this application area and they will have a well-founded basis enabling them to develop alternative approaches for future real-time interactive systems.
##### Prerequisites
##### Level
##### Required
- Software engineering, software quality (> 10 ECTS) Programming (> 10 ECTS)
- Computer graphics (> 4 ECTS)
##### Recommended
- Perception and physiology (> 5 ETCS)
##### Literature
- Provided during the lecture.