6
Zürcher Fachhochschule www.zhaw.ch/engineering Inhalte des Informatikstudiums Im Bachelorstudiengang Informatik werden neben aktuellen Themen grundlegende Konzepte und Methoden vermittelt. Im Fokus der ersten beiden Studienjahre stehen die wichtig- sten Informatikdisziplinen, die breit aufgestellt und aufeinan- der abgestimmt sind. Im letzten Studienjahr können die Studierenden die Themenschwerpunkte individuell gestalten: Über 40 Wahlmodule erlauben ihnen eine persönliche Profilie- rung und Vertiefung. Wahlmodule im Studiengang Informatik (Auszug) Unsere Wahlmodule haben einen Praktikumsanteil von 50 Prozent. Advanced Software Engineering 1 und 2 Im ersten Modul lernen Studierende, wie die Wünsche von Benutzern an neue Software ermittelt werden können (Prozesse, Requirements Engineering) und welche möglichen Software-Strukturen sich zur Gestaltung komplexer Systeme anbieten (Software-Architektur). Im zweiten Modul lernen sie, mit welchen Methoden sie die Qualität erstellter Software steigern können (Softwarekonstruktion, Testing). Weiter geht es darum, die Software nach ihrer Erstellung im Alltag zu pflegen und zu unterhalten (Maintenance und Operations).

Wahlmodule im Studiengang Informatik

  • Upload
    doandan

  • View
    218

  • Download
    1

Embed Size (px)

Citation preview

Zürcher Fachhochschule www.zhaw.ch/engineering

Inhalte des InformatikstudiumsIm Bachelorstudiengang Informatik werden neben aktuellenThemen grundlegende Konzepte und Methoden vermittelt.

Im Fokus der ersten beiden Studienjahre stehen die wichtig-sten Informatikdisziplinen, die breit aufgestellt und aufeinan-der abgestimmt sind. Im letzten Studienjahr können dieStudierenden die Themenschwerpunkte individuell gestalten:Über 40 Wahlmodule erlauben ihnen eine persönliche Profilie-rung und Vertiefung.

Wahlmodule im Studiengang Informatik (Auszug)Unsere Wahlmodule haben einen Praktikumsanteil von 50 Prozent.

Advanced Software Engineering 1 und 2Im ersten Modul lernen Studierende, wie die Wünsche von Benutzern an neue Software ermittelt werdenkönnen (Prozesse, Requirements Engineering) und welche möglichen Software-Strukturen sich zurGestaltung komplexer Systeme anbieten (Software-Architektur).

Im zweiten Modul lernen sie, mit welchen Methoden sie die Qualität erstellter Software steigern können(Softwarekonstruktion, Testing). Weiter geht es darum, die Software nach ihrer Erstellung im Alltag zupflegen und zu unterhalten (Maintenance und Operations).

Zürcher Fachhochschule www.zhaw.ch/engineering

Cloud Computing 1 und 2Unterrichtssprache Englisch

Die Studierenden erlernen die wichtigen Aspektevon Cloud Computing: Was definiert CloudComputing? Welches sind die fundamentalenKonzepte? Welche Technologien werden einge-setzt? Welche Mehrwerte und welche Risiken sinddamit verbunden?

Im zweiten Modul erlernen die Studierenden diewichtigen Aspekte um Applikationen als Service inder Cloud zu betreiben: Wie werden Applikationenausgebreitet und wie verwaltet? Was sind die fun-damentalen Architekturen für Applikationen undServices in der Cloud? Welche Technologienwerden eingesetzt? Welche Mehrwerte und welcheRisiken sind damit verbunden?

Communication Networks and Services 1 und 2Unterrichtssprache Englisch

Das erste Modul behandelt die wesentlichenAspekte privater und öffentlicher Kommunikations-netze und vermittelt einen vertieften Einblick in dieInternet-Protokollwelt. Einige Themen: Dynami-sche Routingprotokolle wie OSPF, EIGRP und IS-IS; IPv6; Remote Access und Mobilität; IP Multi-casting; interaktive Multimediadienste wie Voiceover IP, Conferencing und Unified Communica-tions and Collaboration; Streaming MediaServices.

Das zweite Modul behandelt Funktionsweise,Dienste und Nutzung der dominierenden Netz-werktechnologien. Dies umfasst Backbone- undZugangstechnik, Mobilfunknetze, Unternehmens-netze sowie softwaredefinierte und virtualisierteNetzwerkfunktionen. Dabei kommen auch Planungund betriebliche Aspekte zur Sprache.

Digitale Signalverarbeitung 1 und 2Im ersten Modul wird den Studierenden vermittelt,wie Digitalisierung und digitale Synthese analogerSignale, Analyse und Filterung digitaler Signale,Filterentwurf (IIR & FIR) und effiziente Implementa-tion funktionieren.

Im Fokus des zweiten Moduls stehen adaptiveSysteme mit LMS- & LS-Algorithmen, zufällige Sig-nale, spezielle FIR-Fliter (IFIR, FRM), effiziente

Filiterung mit der FFT und Multiratenfilterung.

DotNet Technologie und Frameworks 1 und 2.NET ist ein in der Industrie weitverbreitetes Fra-mework für die Anwendungs- und Systementwick-lung und die entsprechende Qualifikation wird inder Praxis gesucht. Sie beinhaltet einerseits dieProgrammiersprachen C# und VB.NET und ande-rerseits die umfangreiche und ausgereifte Klassen-bibliothek. Hinzu kommt die VisualStudio IDE, mitder effizient in verschiedenen Programmierspra-chen und Architekturparadigmen entwickelt wer-den kann – von JavaScript bis C# und angefangenvon einfachen Web Anwendungen bis hin zu AzureCloud Services. Mit .NET Core werden auch nichtMicrosoft Plattformen (z.B. Linux) unterstützt.

Information Engineering 1 und 2Wie macht man unstrukturierte Daten (natürlich-sprachiger Text, aber auch Multimedia) nutzbar?Die Studierenden lernen die zugrundeliegendenMechanismen im Detail kennen und wenden diesepraktisch an. Es wird ergründet, wie diese Mecha-nismen in der Google Websuche, aber auch inRecommender-Services wie Netflix und Amazonzum Einsatz kommen. Zudem lernen Sie, wiestrukturierte Daten aufbereitet, modelliert und fürdie Analyse bereitgestellt werden. Weitere Themensind Aufbau und Nutzung von skalierbarenAnalysesystemen mit Big Data-Technologie.

Internet of Things 1 und 2Unterrichtssprache English

Nach dem ersten Modul sollen die Studenten inder Lage sein, Backbone-Systeme für das Internetder Dinge zu entwerfen und umzusetzen. DasModul ist top-down strukturiert und führt von denrelevanten Backbone-Architekturen, über die Netz-werkprotokolle bis zu nützlichen Dienstprogram-men. Weitere Themen: Protokolle für die ServiceDiscovery und das Netzwerk-Management sowiedie aktuellen Transfermechanismen. DenAbschluss bildet eine Einführung in die relevanteHardware, die im zweiten Modul verwendet wird.

Im zweiten Modul wird das Internet der Dinge ausder Sicht von auf ressourcenbeschränkten, einge-betteten Systemen behandelt. Der Fokus liegt aufden Hardware- und Software-Herausforderungen

Zürcher Fachhochschule www.zhaw.ch/engineering

bei deren Umsetzung. Das Material wird durchverschiedene reale Anwendungsbeispiele ergänztin Bereichen wie zum Beispiel Gebäudeauto-mation, Wearables, medizinische Anwendungen,Sensorik und Umwelt etc.

Künstliche Intelligenz 1 und 2Computergegner in Games, schnellste Routenim Navi, optimierte Flugpläne, Diagnoseunter-stützung im Spital, Chatbots im Web – all diesenfaszinierenden Anwendungen liegen Verfahrender «Künstlichen Intelligenz» (KI) zu Grunde. Eswerden Verfahren betrachtet für die Lösungkomplexer Problemstellungen aus dem Alltag,die zuvor nur der Mensch selbst lösen konnte(inkl. Deep Learning / Machine Learning).

Microcomputer Systems 1 und 2Microcontroller steuern und regeln über Sensorenund Aktoren unzählige Bereiche unseres Lebens.Asynchrone Ereignisse von verschiedenartigenSchnittstellen müssen rechtzeitig und energieopti-miert verarbeitet werden. Das erste Modul vermit-telt Hardware- und Software-Techniken, um solcheSysteme erfolgreich zu realisieren.

Heutige eingebettete Systeme verfügen über leis-tungsfähige Multicore Prozessoren mit GPU, DSP,Memory Management, Hardware Video Codecsund performanten Eingabe- und Ausgabe-Schnitt-stellen: Man spricht von Hybriden MulticoreProzessoren, deren Programmierung besondereHerausforderungen bezüglich Echtzeitfähigkeit undProzessorauslastung erfordert. Dies ist das Themades zweiten Moduls. Um die umfangreichen OpenSource Software Resourcen zu nutzen, bietet sichLinux als Programmierplattform an.

Mobile Applications 1 und 2Neben den Eigenschaften und Möglichkeiten derwichtigsten Mobilplattformen liegt der Fokus imersten Modul auf dem Entwerfen der Benutzer-schnittstellen mobiler Applikationen und demUmsetzen der Applikationen im Web sowie aufeiner der vorherrschenden Mobilplattformen(aktuell iOS). Themen des zweiten Moduls sind dasEntwickeln nativer Applikationen für eine weitereMobilplattform (derzeit Android) und Möglichkeitenplattformübergreifender Entwicklung (derzeit React

Native). Ausserdem werden aktuelle Entwicklungenim Mobilbereich vorgestellt und diskutiert.

Software and System Security 1 und 2Unterrichtssprache Englisch

Ohne sichere Software und Systeme wären vieleInternet-basierte Dienste und mobile Apps garnicht denkbar, weil die Risiken für Anbieter undAnwender viel zu hoch wären – z.B. e-Banking,e-Shopping und Bezahlsysteme auf dem Smart-phone. Im ersten Modul lernen die Studierenden,wie man Bedrohungen und mögliche Attacken aufein Softwaresystem identifiziert und darauf basie-rend die Software so konzipiert und entwickelt,dass sie sicher ist. Des Weiteren geht es darum,Verwundbarkeiten in Software selbst aufzuspürenund auszunutzen, denn sichere Software kannman nur dann entwickeln, wenn man die Angriffs-möglichkeiten versteht und über Hacking-Skillsverfügt.

Im zweiten Modul liegt der Fokus auf der IT Infra-struktur als Ganzes. Die Studierenden erwerbenWissen und Fähigkeiten, die für die Sicherungund Prüfung von Informationssystemen zentralsind. Neben dem Sinn und Zweck von InformationSecurity Management Systemen (ISMS) und derKenntnis der Bedrohungslandschaft, stehen insbe-sondere auch die Themen Penetration-Testingund Exploitation sowie Malwaretechnologienauf dem Programm. Auf Verteidigerseite lernensie mehr über die Funktionsweise und die Grenzenvon Anti-Malware Technologien und «SecurityInformation Event Management» (SIEM) Systemenund über die Herausforderungen und Chancen beider Nutzung und Absicherung von mobilen Platt-formen.

Service Engineering 1 und 2Die Studierenden lernen innovative IT-basierte Ser-vices (z.B. mobile Services) mit hoher CustomerExperience systematisch und kundenzentriert zuentwerfen und zu entwickeln. Neben den techni-schen Aspekten sind dabei auch die ökonomi-schen und organisatorischen Aspekte wichtig. InService Engineering 1 lernen sie alle notwendigenGrundlagen dazu kennen.

Zürcher Fachhochschule www.zhaw.ch/engineering

In Service Engineering 2 wenden die Studierendendiese an. Dort entwickeln sie in einem heteroge-nen Team einen innovativen Service von der Ideebis zur prototypischen Umsetzung. Sie haben da-bei auch Gelegenheit an einer internationalenChallenge teilzunehmen.

Visual Computing 1 und 2Das erste Modul führt die Studierenden ins ThemaVisual Computing ein: Theorie der 2D- und 3D-Computergrafik, Grafik-HW (GPU), Geometrie-Repräsentationen, Datenvisualisierung, 3D-Model-lierung (mit Blender), Web-basierte 2D- und 3D-Anwendungsentwicklung, Segmentierung undVisualisierung von medizinischen Bildern.

Im zweiten Modul vertiefen die Studierenden ihrWissen in Visual Computing mit Fokus aufOpenGL/WebGL- und GPU-Shader-Programmie-rung. Weiter geht es um 3D-Interaktion undComputer-Animation. Zudem lernen die Studieren-den Techniken und Anwendungen von VirtualReality, Augmented Reality und 3D-Printing.

Algorithmen für schwereOptimierungsproblemeViele relevante Optimierungsprobleme könnennicht in angemessener Zeit optimal gelöst werden.In dieser Vorlesung werden verschiedene algorith-mische Ansätze untersucht, solche schwerenProbleme zumindest annähernd zu lösen. Die Stu-dierenden lernen Approximationsalgorithmen ken-nen, die beweisbar nur um einen gewissen Faktorvom Optimum abweichen. Für schwierigere Prob-leme lernen sie parametrisierte Algorithmen undden Einsatz von Heuristiken kennen. Die Cache-Verwaltung von Betriebssystemen setzt Algorith-men ein, die ihre Eingabe nur stückweise erhalten.Diese Online-Algorithmen werden darauf unter-sucht, wie gut Lösungen approximiert werdenkönnen.

BildverarbeitungIn diesem Modul können die grundlegenden Ver-fahren und Methoden der Bildverarbeitung kennengelernt werden wie z.B. diverse Bild-Transformati-onen, Filterung z.B. für die Detektion von Kantenoder Ecken, Restauration von verzerrten oderverrauschten Bildern, Extraktion von Bildkompo-

nenten anhand bestimmter Formen, Bild-Segmen-tierung in Regionen und Objekte,Objektbeschrei-bung und Merkmalsextraktion, Objekterkennungund Merkmalsklassifizierung. Im Praktikum könnendie Verfahren in kleinen Aufgaben angewendetwerden (Matlab, Python, OpenCV). Zudem könnenin einem Miniprojekt verschiedene Methoden derBildverarbeitung in einem anspruchsvollerenKontext eingesetzt werden.

eHealth TechnologiesUnterrichtssprache Englisch

Das Modul führt die Studierenden ein in eHealth-Technologien wie klinische Informationssysteme,elektronisches Patientendossier, medizinischeBildgebung, Mobile Health (mHealth) und medizini-sche Entscheidungssysteme. Lerninhalte des Mo-duls sind Grundlagen und Trends von eHealth, uminnovative Software-Projekte im Gesundheitswe-sen zu unterstützen.

Einführung in die QuanteninformatikDiese Vorlesung vermittelt die physikalischen undmathematischen Grundkonzepten der Quanten-informatik und diskutiert wichtige Anwendungender Quantenkryptographie und präsentiert Algo-rithmen des Quantencomputing. Darüber hinausvermittelt die Vorlesung einen soliden Einstieg indie Quantenmechanik und diskutiert technischeFragen der Realisierung.

Embedded Software EngineeringEmbedded Systeme steuern technische Prozesse,indem sie auf Ereignisse reagieren. Das Modulvermittelt einen systematischen Ansatz, um dieSoftware für Embedded Systeme zu entwickeln.Es wird gezeigt, wie reaktive Systeme vollständigin UML (Unified Modeling Language) modelliertwerden, um Codes für das Zielsystem zu generie-ren.Themen: Architektur und Vorgehen, Modellie-rungvon reaktiven Systemen mit kooperierendenState-Machines, Verbindung des EmbeddedSystems mit den Technischen Prozessen,Einhaltung von Echtzeitbedingungen.

Zürcher Fachhochschule www.zhaw.ch/engineering

Funktionale ProgrammierungDas Modul bietet eine Einführung in die Technikenund Paradigmen der funktionalen Programmie-rung. Der Fokus liegt sowohl im Aufbau einessoliden theoretischen Fundaments wie auch aufder Betrachtung verschiedener Anwendungssze-narien der funktionalen Programmierung.

Game DevelopmentGame-Entwicklung umfasst Themen wie Spiel-mechanik, Level-Design, 2D und 3D Assets,Charakter-Design, Physiksimulation, sowie Sound-Effekte. In Übungen werden diese Themen mitUnity praktisch umgesetzt.

Image ProcessingUnterrichtssprache Englisch

Das Modul Bildverarbeitung wird auch auf Englischangeboten.(Inhalt siehe unter Modul «Bildverarbeitung»).

Internet Service PrototypingUnterrichtssprache Englisch

Wie funktionieren Doodle, Google und Netflix?Wie kann man schnell den eigenen Internetdienstaufsetzen, ohne Qualität einzubüssen? DiesesModul führt systematisch zum eigenen Dienst.Dabei wird sichergestellt, dass die Anwendungsar-chitektur die Möglichkeiten moderner Cloud-Platt-formen ausreizt.

Mathematik: KryptologieIn diesem Modul werden die grundlegenden Algo-rithmen moderner Verschlüsselungsverfahren ausmathematischer Sicht erkundet. Dabei liegt eingrosses Gewicht auch auf der experimentellen Sei-te: Innerhalb eines Java-Frameworks können dieAlgorithmen selbst implementiert werden. Dabeierleben die Studierenden zum Beispiel, was es inpunkto Laufzeit heisst, Primzahlen mit einer Bitlän-ge von 2000 Bit zu generieren oder Zahlen dieserGrössenordnung zu potenzieren.

Multicore und Parallel ComputingFast alle aktuellen Rechnersysteme von Server,Laptop bis zu Handy enthalten Multicore Prozes-soren und GPUs. Wie programmiert und testetman diese Software und was ist dabei anders alsbei der herkömmlichen Programmierung? Das

Modul MPC gibt eine Einführung in Analyse, Ent-wurf, Implementierung, Testing und PerformanceAnalyse von Software und Algorithmen für paralleleSysteme und verwendet dazu unter anderem einenAnsatz mit Patterns, wie er aus der objektorientie-ren Programmierung bekannt ist.

Natural User InterfacesNatural User Interfaces (NUI) sind Benutzerschnitt-stellen, die möglichst natürlich bedient werdenkönnen. Das heute am meisten verbreitete NUI istdie touch-basierte graphische Benutzerschnittstel-le, die heute auf fast allen mobilen Geräten anzu-treffen ist. In diesem Modul lernen die Studieren-den, wie sie ein NUI mit guter Usability und UserExperience nutzerzentriert entwerfen, basierendauf einem vorgegebenen Framework implementie-ren und bezüglich Usability testen.

Operations ResearchDie Optimierung komplexer betrieblicher und tech-nischer Prozesse bedingt häufig den Einsatz quan-titativer Methoden. Das Modul gibt eine Einführungin die Theorie und Anwendung der mathemati-schen Optimierung, wobei insbesondere Modelleund Methoden der linearen Optimierung, derdiskreten Optimierung und der Graphentheoriebehandelt werden.

Programmiersprachen und -ParadigmenZiel dieses Moduls ist es, die wichtigsten Program-mierparadigmen wie objektorientierte, logischeund funktionale Programmierung zu verstehenund zu wissen, wie diese Paradigmen in einigenausgewählten Programmiersprachen eingesetztwerden.

Scientific ComputingUnterrichtssprache Englisch

Zusätzlich zu Theorie und Experiment hat sich daswissenschaftliche Rechnen als dritter Ansatz etab-liert, offene Fragen der Wissenschaft und Technikzu lösen. Die verwendeten Methoden bestehenunter anderem aus mathematischer Modellierung,Optimierung, Simulation, Datenauswertung undVisualisierung. Das Modul liefert eine Einführungin wissenschaftliches Rechnen und dessen An-wendung auf relevante Beispiele für Studierendeder Informatik.

Zürcher Fachhochschule www.zhaw.ch/engineering

System on Chip DesignEin FPGA (Field Programmable Gate Array) ist eineprogrammierbare digitale Schaltung. Im Gegensatzzum Mikroprozessor sind im FPGA die logischenGatter und Flip-Flops, also die Grundbausteine,aus denen ein Mikroprozessor aufgebaut ist, nichtfest, sondern frei programmierbar. Mit einemFPGA lassen sich also beliebige logische Schal-tungen entwerfen. In jüngster Zeit werden soge-nannte SoC-FPGAs (System on Chip-FPGA) ange-boten, die zusätzlich zur programmierbaren Logikauch fest verdrahtete, sehr leistungsfähige Prozes-soren enthalten, die sich mit der programmierba-ren Logik kombinieren lassen. In diesem Modulwerden die Grundlagen zum Entwurf mit Soc-FPGAs vermittelt.

Verteilte SystemeVerteilte Systeme hat Tanenbaum als eine«Ansammlung von unabhängigen Computern, dieals einheitliches System erscheinen» definiert.Dabei unterliegen kleine Sensorgeräte wie z.B.Fitbit (IoT), über Google und Amazon Cloud bis hinzu Streaming Diensten wie z.B. Netflix denselbengrundlegenden Architektur(grund-) Prinzipien. DerInhalt: Einführung: Was sind die Anforderungenan ein verteiltes System – Skalierbarkeit –Transparenz – Ausfallsicherheit – Heterogenität.Grundlagen: Begriffe und Pattern verteilterSysteme. Standards für verteilte Systeme: Dienste,Protokolle und Anwendungsgebiete.Infrastrukturen für verteilte Systeme: Vonunternehmensinternen über öffentliche bis hin zuglobalen Plattformen Konzeption und Bau einesverteilten Systems als praktische Übung.

Weitere Module wählbar aus anderenStudiengängenBusiness DynamicsCommunication Navigation SurveillanceCommunication Navigation Surveillance -IntegrationForesight und SzenarienGeschäftsmodelle in Energie- und UmwelttechnikHöhere Analysis

Stand Januar 2018, Änderungen vorbehalten

Kontakt

Bei inhaltlichen FragenProf. Dr. Olaf SternLeiter Studiengang InformatikZHAW School of EngineeringTechnikumstrasse 98400 Winterthur+41 (0) 58 934 82 [email protected]

Bei administrativen AngelegenheitenJennifer HohlSachbearbeiterin StudiengangsekretariatZHAW School of EngineeringTechnikumstrasse 98400 Winterthur+41 (0) 58 934 [email protected]