Wahlmodul Angewandte Informatik (STG Jahr 2) (T2INF4901)

Werbung
DUALE HOCHSCHULE
Baden-Württemberg
Studienbereich Technik
Wahlmodul Angewandte Informatik (STG Jahr 2) (T2INF4901)
Formale Angaben zum Modul
Studiengang
Studienrichtung
Vertiefung
Informatik
Angewandte Informatik
Kommunikationsinformatik
Modulbezeichnung
Sprache
Nummer
Version
Modulverantwortlicher
Wahlmodul Angewandte Informatik (STG Jahr 2)
Deutsch
T2INF4901
9
Prof. Friedemann Stockmayer
Verortung des Moduls im Studienverlauf
Semester
Voraussetzungen für die Teilnahme
-
Modulart
Moduldauer
Lokales Vertiefungsmodul
1
Eingesetzte Lehr- und Prüfungsformen
Lehrformen
Vorlesung, Vorlesung, Labor, Vorlesung, Übung, Vorlesung, Übung, Labor
Lehrmethoden
Laborarbeit, Lehrvortrag, Diskussion, Lehrvortrag, Diskussion, Fallstudien, Lehrvortrag, Diskussion, Gruppenarbeit
Prüfungsleistung
Benotung
Prüfungsumfang (in min)
Klausur
Standardnoten
120
Workload und ECTS
Workload insgesamt (in h)
davon Präsenzzeit (in h)
davon Selbststudium (in h)
ECTS-Punkte
222,0
144,0
78,0
5
Sachkompetenz
Im Rahmen eines vorgegebenen Auswahlkataloges besteht die Möglichkeit zur spezifischen Erweiterung oder Vertiefung des
Curriculums Kommunikationsinformatik.
Selbstkompetenz
-
Sozial-ethische Kompetenz
-
Qualifikationsziele und Kompetenzen
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 1
Lerneinheiten und Inhalte
Lehr- und Lerneinheiten
Präsenz
Selbststudium
Programmiertechniken für eingebettete Systeme
,0
,0
- Definition von eingebetteten Systemen
- Einführung; Wiederholung in C++
- Konzepte zur effizienten Programmierung in C++
- Speicherverwaltung und Allokationstechniken
- Implementierung von Zustandsautomaten
- Code wartbar schreiben
- Umgang mit statischer Code-Analyse
In dem praktisch ausgerichteten Teil der Vorlesung geht es um Datenübertragung, das Parsen und das Verarbeiten von Daten. Die Teilnehmenden lösen Aufgaben und
diskutieren diese im Anschluss in der Gruppe. Als Werkzeuge dienen Linux mit g++ oder clang.
Skriptsprachen
36,0
39,0
Skriptsprachen kommen vor allem für die prototypische Entwicklung in unterschiedlichen Bereichen zum Einsatz (z.B. Web-Anwendungen, Tools, Kommunikations- und
Netz-Dienste). Im Rahmen dieser Unit wird eine Scriptsprache (z.B. Python) erlernt und praktisch geübt.
- Funktion einer Scriptsprache: Beziehung Skript - Interpreter
- Umgang mit numerischen Daten, Strings
- Objekte und Operatoren
- Charakteristische Datenstrukuren, Dictionaries, Listen, Tupel
- Funktionen und Module
- Grafische Benutzerschnittstellen
Funktionale Programmierung
36,0
39,0
- Programmieren mit Funktionen
- Rekursive Definitionen
- Pattern Matching
- Funktionen als Datenwerte
- Funktionen höherer Ordnung
- Die Funktionen map und fold
- Das Konzept der Monaden Funktionale - Auswertungsstrategien: Strikte Auswertung (call-by-value), nicht strikte Auswertung (call-by-name), Lazy-Evaluation
(call-by-need)
- Überblick über unterschiedliche funktionale Sprache: sml, caml/ocaml, Haskell, Miranda, Lisp/Scheme, Lambda-Kalkül ,
Semantic Web
36,0
39,0
36,0
39,0
36,0
39,0
- Kurze Einfuehrung in Semantische Technologien
- Die Idee von Linked Data
- Das Resource Description Framework (RDF): Tripel und URLs
- RDF Syntax: XML und TTL
- Die Anfragesprache SPARQL
- Semantik in RDF: RDF Schema (RDFS) und die Web Ontology Language (OWL)
- Zusammenarbeit der einzelnen Komponenten: Der
Semantic Web Layer Cake
Assemblerprogrammierung
- Prozessorfamilie 8051
-Entwicklungsumgebung
µVision der Firma Keil in der Demo Version
- Unbewertete Übungen :
z. B. Serielle Schnittstelle, Analog Digital Umsetzer,
- Bewerteter Programmentwurf :
Bearbeitungszeitraum ca. 3 Wochen
- Thema: wird noch bekanntgegeben
C# /.Net 1
-Überblick über das .NET Framework: Die Entwicklungsumgebung VS2008 / SharpDevelop / Monodevelop, .NET Framework-Tools
-Grundlagen der CLR: Reference Types vs. Value Types, Boxing und Unboxing, Schnittstellen und Generika, Events und Delegates, Ausnahmebehandlung, Automatische
Speicherverwaltung
-Ein- und Ausgabe: String-Handling und RegEx, Zugriff auf das Dateisystem, Streams (FileStream, MemoryStream, CompressionStreams, ...)
-Listen (Queue, Stack, Dictionary, ...)
-Serialisierung
-Debugging von .NET-Applikationen: Debugger-Klasse / Trace-Klasse, Debugger-Attribute, Breakpoints
- Oberflächenprogrammierung mit Windows Forms:.Kennenlernen grundlegender UI-Controls (z.B. Panels, Buttons, TextBox, Labels, ...),Dialogfenster (OpenFileDialog,
SaveFileDialog, …)
MDI vs. SDI, Asynchrones Programmieren mit dem BackgroundWorker-Control, Drag & Drop, Drucken, Lokalisierung / Globalisierung von Anwendungen
Ausblick auf .NET 3.0/.NET 3.5, Windows Presentation Foundation
C++
15.05.2017
36,0
Modulbeschreibung für Bachelor Studiengänge an der DHBW
39,0
Seite 2
- Geschichtliche Einordnung der Sprache C++
- Entwicklungsgeschichte
- Wesentliche Sprachmerkmale
- Vor- und Nachteile der Sprache C++
- Unterschiede zur Sprache Java
- Dateiorganisation in C++ , Modulkonzept, Header- und Implementierungsfile
- Hauptprogramm, Programmeintrittspunkt
- Ein- und Ausgabestream, Namespace
- Übersetzen und Binden
- Formatierte Ausgabe, Strings aus der Sprache C, ANSI/ISO Klasse ‚string’
- Präprozessor
- Zeiger, Objektinstanzen
- Konstruktor/Destruktor
- void* Zeiger und NULL Zeiger
- Initialisierungen in C++
- Kopieren von Objekten, flache Kopie, tiefe Kopie
- Copy Konstruktor
- Überladen des Assignment Operators
- Symbolische Konstanten
- Initialisieren von Klassenattributen, konstante Attribute
- Rein lesende Methoden, ‚const’ nach Methodensignatur
- Aufzählungstypen, -konstanten
- Datenstrukturen mit ‚struct’
- Call by value, Call by pointer, Call by reference
- Default-Parameter
- Überladen von Operatoren
- Vererbung, Konstruktoren bei der Vererbung
- Friend Klasse, Sichtbarkeitsregeln
- Mehrfachvererbung
- Zugriffskontrolle bei Vererbung
- Virtuelle Methoden, Polymorphie
- Abstrakte Klassen
- ‘const’ vor Parametern einer Funktion/Methode
- ‚const’ vor dem Rückgabewert einer Funktion/Methode
Emotional Computing
36,0
39,0
36,0
39,0
Linux 1
- Grundsätzliches/Einleitung: Geschichte, Was ist eigentliche Linux, Unterschiede Windows/Linux, Lizenzen, Distributionen, Support, Dokumentationskonzepte
-Installation und erste praktische Erfahrungen: Knoppix, Suse oder eine andere Major-Distribution, KDE- und andere Oberflächen
-Shell/Konsole: Shell und ihre Kommandos, Pipes
Benutzer, Dateirechte, Prozesse, Bootprozess von Linux, Runlevels
- Dateisystem: Dateitypen, Standardfilesystem (FHS), Logdateien
- Netzwerk: Einleitung/Netzkonfiguration, Eatzgebiete von Linux im Netzwerk, Servertypen (inetd/standalone)
ypische Server und wichtige Implementierung (ssh, mail, http, op3, imap, NIS, ldap, X11), Fehlersuche im Netzwerk, pratische Übungen für apache/nfs/samb, Sicherheit im
Netzwerk
-Verschiedenes: vmware und andere OS-Emulatoren, Echtzeitlinux,
Linux auf embedded-Devices
Programmierbare Logik
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
- Digitaltechnik:Automaten, Taktsynchrone Logik
- Bausteine und deren Architektur zur Integration digitaler Systeme
- Entwurfsschritte: Spezifikation, Kodierung, Simulation, Synthese, Fitting
- Hardwarebeschreibungssprache VHDL
- Werkzeuge, Entwicklungsumgebung
- Vollständiger Entwurf einschließlich Dokumentation
Agile Prozesse
- Das agile Manifest
- XP-Programming
- Crystal Clear
- Test Driven Development
Spoken Language Processing
-Einführung: Sprachverstehen und Spracherzeugung beim Menschen
-Spracherkennung
-Sprachkodierung
-Sprachsynthese
-Verfahren zur Verbesserung der Sprachqualität
-Entwurf von Sprachdialogsystemen
-Sprachübertragung in paketbasierten Netze
Grundlagen Maschineller Lernverfahren
- Einführung in das Maschinelle Lernen - Symbolische Lernverfahren
- Grundlagen Neuronaler Netze
- Probabilistische Lernmodelle
- Entwurf und Implementierung ausgewählter Techniken für eine Anwendung
Agentenbasierte Systeme
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 3
- Grundlagen von Agenten und Agentensystemen
- Aufbau von Agenten und Agentensystemen
- Kommunikation in Agentensystemen
- Co-operatives Problemlösen
- Grundlagen der Spieltheorie
- Agenten im Software Engineering
- Agentenframeworks
- Ontologien
- Mobile Agenten (u.a. Internetanwendung, Webcrawler etc.)
- Einsatzgebiete von Agenten in eCommerce, Mensch-Maschine Schnittstellen, Virtuellen Umgebungen, Simulation sozialer Strukturen und Information Retrieval Anwendung
von Agentensystemen
- Entwurf und Implementierung interagierender Agenten für praktische Anwendungen unter Nutzung von Agentenframeworks
Evolutionary Computing
36,0
39,0
36,0
39,0
- Historie und Grundprinzipien von Evolutionären Algorithmen
- Grundprinzipien (Mutation, Rekombination, Mating-Pool-Auswahlverfahren, Fitness-Funktion, Generationenmodelle)
- Anwendung genetischer Algorithmen auf einfache Probleme (Systemidentifikation, Optimierung und Simulation)
- Anwendung auf komplexe Probleme der Informatik (NP)
- Entwurf und Implementierung eines Evolutionären Algorithmus zur Lösung einer gegebenen Problemstellung.
- Analyse und Auswertung der Arbeitsweise Evolutionärer Algorithmen.
Ausgewählte Themen der Informatik
Es werden ausgewählte Inhalte aus der Informatik, wie z.B. dem Web Enginnerin, Software Engieeing, Compilerbau, etc. vertieft behandelt.
Advanced Project Management
36,0
39,0
-This Advanced Project Management (APM) Course is a process-oriented, practical Project Management course that focuses on the Application of Project Management to a
real-life project. APM builds on the Project Management Institute’s Guide to the Project Management Body of Knowledge (PMBOK® Guide, 5th Edition) to provide a solid
framework and context for managing projects.
After successfull completion of the three PM-courses the student will…
-have a solid knowledge of PM tools and techniques such as
The triple constraint of project management, The project management knowledge areas and process groups (PMI®), Project Charter, Project Scope Document, Work
Breakdown Structure, Project Schedule, Critical Path Analysis, Project Management Plan, Communication Matrix, Status Reports, Change Requests / Change Management,
Risk Register, Jour Fixe.
- Be familiar enough with Microsoft Project to help plan and manage projects
- Differentiate good and bad project management through sharing his/her own experiences of good and bad project management
- Be able to apply the knowledge and skills developed in this class to other settings (e.g. workplace)
- Have tools and techniques ready to lead project teams effectively
- Be acquainted with tools and techniques to monitor and control the scope and time of a project
-Have practical experience in a project with a tangible result under real-life conditions, such as limited resources, time-pressure, changing scope, conducted in a
team-setting
Global- (IT) - World - Global Skills
36,0
39,0
- Introduction and Reflection – Global (IT) World
- Working in Diverse Team
- Intercultural Relations Skills
- Effective Negotiations
- Intercultural Conflict Resolution
Ziel des Seminars ist es eine globale Perspektive zu entwickeln und den Bezug zur internationalen IT Welt zu verstehen. Dieses Seminar findet in englischer Sprache statt.
Grundkenntnisse in Englisch werden vorausgesetzt.
Mobile & Web Prototyping
36,0
39,0
Das Ziel dieser Wahlpflichtveranstaltung ist, die notwendigen Programmiersprachen, Technologien und Konzepte zu vermitteln, um in der Lage zu sein sehr schnell Mobile
Anwendungen zu entwickeln. Dies umfasst sowohl die eigentliche App als auch den Server mit Datenbank (Backend).
Für die Entwicklung der App wird werden Grundlagen der Programmiersprache Swift behandelt, sowie eine Einführung in iOS gegeben. Darauf aufbauend wird vorgestellt,
wie man mit "Javascript" für mehrere mobile Plattformen entwickeln kann ("Apache Cordova"). Als Vorgehensmodell für das Entwickeln wird ebenfalls die Methodik "Design
Thinking" präsentiert. Alle Inhalte werden abschließend als Labor/Projekt in Kombination angewendet und bewertet.
Inhalte:
• Grundlagen Swift
• Grundlagen iOS
• Grundlagen Javascript
• Cross Plattform Technologie am Beispiel von Apache Cordova (Phonegap)
• Grundlagen Node.js
• Vorgehensweise: Design Thinking
• Labor/Projekt: Entwicklung einer App (nativ oder cross plattform) mit Node.js Backend
Cloud Computing
36,0
,0
36,0
39,0
36,0
39,0
-Warum Cloud Computing? Einführung
-Grundlagen des Cloud-Computing
-Architekturen und Anbieter
-Besonderheiten der Cloud
-Software-Technologien für die Cloud
-Strategien für die Migration in die Cloud
-Realisierung der Cloud (Warehouse Scale Datacenter, WSC)
-Trends
Professional English Communication
The course “Professional English Communication” focuses on different forms
of communication in the academic and professional business environment. Communication
includes listening, speaking, writing, and presenting in English language. This course will be
held mostly in English language, and provides opportunities for experienced
English speakers as well as students who want to work on their English skills starting from a basic level.
Cross Plattform Web Development
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 4
- Grundlagen Javascript
- Grundlagen Node.js
- HTTP Server mit Express JS
- MongoDB und Mongoose
- Angular JS
- Ionic Framework
- Apache Cordova
- Websockets und evtl. Wunschthemen
Die Inhalte werden stets praktisch angewendet. So wird während der
Vorlesung gemeinsam eine beispielhafte Anwendung entwickelt.
Matlab/Simulink und Swift 2 für IOS
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
- Bedienung von Xcode 7
- Einführung Swift 2
- Grundlagen iOS-Programmierung (Auto-Layout, Model-View-Controller, Protokolle, Delegates, etc.)
- Einführung Simulink
- Simulink Code-Generierung am Beispiel Stateflow und Integration in iOS-Projekte
Minimizing EMF Risk
Betrachtungsweise der Physik elektromagnetischer Felder
- Grundlagen
- Elektrische Wechselfelder (Niederfrequenz, NF)
- Magnetische Wechselfelder (NF)
- Elektromagnetische Wellen (Hochfrequenz, HF)
- Elektrisches und magnetisches Gleichfeld
- Darstellung von Feldgrößen in Dezibel
Feldmesstechnik aus baubiologischer Sicht
- Diskussion der verschiedenen Messverfahren für die oben aufgelisteten
Feldarten
- Einführung in die NF- und HF- Messgeräte sowie in den Spektrumanalysator
Messtechnik Labor I: Durchführung von Messungen niederfrequenter
elektrischer und magnetischer Felder sowie hochfrequenter
elektromagnetischer Felder
- Einsatz und Übung der Handhabung der NF- und HF-Messgeräte
- Durchführung von Messungen an speziell präparierten Messplätzen
- Messprotokolle als Teil des Leistungsnachweises
Maßnahmen zur Feldreduzierung in Gebäuden (speziell Schlafplätzen)
- Niederfrequente elektrische Wechselfelder (Abschalten, Abkoppeln,
Abschirmen)
- Niederfrequente magnetische Wechselfelder (Netzsysteme, Schirmung,
Oberschwingungen)
- Hochfrequente elektromagnetische Wellen (großflächige Abschirmung, HFStörungen
in der Elektroanlage)
- Büro und Schlafplätze, Elektronik, Beleuchtung
Messtechnik Labor II: Durchführung einer Schlafplatzmessung, Analyse des
IST-Zustands sowie Ableitung und Umsetzung von Maßnahmen zur
Feldreduzierung
- NF- und HF-Messung eines präparierten Schlafplatzes
- Ermittlung aller Feldquellen
- Ableiten von Maßnahmen zur Minimierung der Felder
- Erstellung eines Messprotokolls als zweiter Teil des Leistungsnachweises
Diskussion der Auswirkungen elektromagnetischer Felder auf Mensch und
Umwelt aus wissenschaftlicher und medizinischer Sicht
- Historie der Entwicklung der Grenzwerte zum Schutz von Mensch und
Umwelt
- Vorstellung und Diskussion internationaler wissenschaftlicher
Untersuchungen
Microservices mit Docker und Node.js: Eine Praktische Einführung
- Node.js: Einführung in die Programmiersprache, praktische Übungen, warum ideal geeignet für Microservices
- Microservices: Konzepte, Vorteile, Design Prinzipien, Relation zu SOA
- Design und Entwicklung einer komplexeren Anwendung bestehend aus mehreren Microservices
- Docker: Konzepte, praktisches Arbeiten mit Docker, Deployment der Anwendung mit Docker
- Zusammenfassung, weiterführende Diskussion: DevOps, Management, Monitoring, Sicherheit
App-Entwicklung mit Swift
- Überblick über mobile Betriebssysteme
- Einführung in die Entwicklungsumgebung Xcode
- iOS-Entwicklung mit Swift
- Oberflächen-Entwicklung mit dem Interface Builder
- Swift auf anderen Plattforme
Internet of Things
- Einführung in das Thema Internet of Things
- Anwendungsgebiete
- Technologien
- Kommunikationsprotokolle
- Sensorik und Datenerfassung
- Plattformen
Film and Special Effects
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 5
Die Vorlesung ist unterteilt in einen theoretischen und einen praktischen Teil.
Im Theorieteil werden zunächst allgemeine Grundkenntnisse der modernen
Filmproduktion vermittelt. Hierbei wird auch eingehend das Thema Postproduction (z.B.
cut, color grading, audio, einfache und fortgeschrittene 2D special effects sowie die Arbeit
mit diverser Software wie etwa Adobe Premiere pro oder Adobe After Effects, etc.)
behandelt. In der Praxisphase wird ein kompletter Kurzfilm incl. diverser einfacher Special Effects
produziert.
Besonderheiten und Voraussetzungen
Besonderheiten
-
Voraussetzungen
-
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 6
Literatur
-Learning Python, Mark Lutz, O´Reilly
- oder alternative Literatur, passend zur Sprache
- Thiemann, Peter, Grundlagen der funktionalen Programmierung, 1994
- Teubner-Pepper, Peter; Hofstedt, Petra, Funktionale Programmierung Sprachdesign und Programmiertechnik. 2006, Springer, Berlin
- Smolka, Gert, Programmierung - eine Einführung in die Informatik mit Standard ML, 2008, Oldenbourg
- Simon Peyton Jones [editor], Haskell 98 language and libraries, the revised report, December 2002, http://haskell.org/onlinereport
- Bryan O Sullivan, Donald Bruce Stewart, and John Goerzen, Real World Haskell.O Reilly, 2009
-
- Kofler,M : Linux 2011: Debiam Fedore, openSue, Ubuntu, Addison-Wesley, 2010
-Kofler, M: Linux- Kommandoreferenz, Addison-Wesley, 2010
- D.J. Barett, Torsten Wilhelm: Lunix kurz und gut, O'Reilly
- Kent Beck: Extreme Programming - Alistair Cockburn: Agile Software-Entwicklung für kleine Teams, Mitp-Verlag 2005
- Andrew Hunt, David Thomas: Pragmatisch Programmieren: unit-Tests mit JUnit, Hanser Fachbuchverlag, 2005
- Kent Beck: Test Driven Development-by Example, Addison-Wesley, 2002
- Frank Westphal: Testfetriebene Entwicklung mit Junit & Fit. Wie software änderbar bleibt, D-Punkt verlag, 2005
-Fundamentals of Speech Recognition, Lawrence Richard Rabiner, PTR Prentice Hall, 1993, ISBN 0130151572
-Statistical Methods for Speech Recognition, Frederick Jelinek A Bradford Book, ISBN: 0262100665
-Speech and Audio Signal Processing: Processing and Perception of Speech and Music Ben Gold, Nelson Morgan, Dan Ellis, Wiley-Interscience; 2 edition (August 23, 2011),
ISBN: 0470195363
-Speech and Language Processing (2nd Edition) [hardcover] D. Jurafsky, J. Martin, Publisher: Pearson Prentice Hall; 2 edition (May 26, 2008), ISBN-10:
0131873210
- Toshinori Munakata,"Fundamentals of the new Artificial Intelligence", Springer Verlag, aktuelle Auflage
- Christoph Beierle,Gabriele Kern-Isberner, "Methoden Wissensbasierter Systeme - Grundlagen - Algorithmen - Anwendungen", Vieweg Verlag, aktuelle Auflage
- Rüdiger Brause, "Neuronale Netze", B.G.Teubner Stuttgart, aktuelle Auflage
- Ethem Alpaydin,"Introduction to Machine Learning", MIT Press, aktuelle Auflage
- J. Russel, Peter Norvig, "Künstliche Intelligenz - Ein moderner Ansatz", Pearson Studium, aktuelle Auflage
- M.Wouldridge,"An Introduction to Multi Agent Systems", John Wiley & Sons, aktuelle Auflage
- Toshinori Munakata,"Fundamentals of the new Artificial Intelligence", Springer Verlag, aktuelle Auflage
- A.E.Eiben, J.E.Smith, "Introduction to Evolutionary Computing", Springer Verlag, aktuelle Auflage
aktuelle Literatur wird in der Vorlesung bekanntgegeben.
-Information Technology Project Management – Sixth Edition, Schwalbe, Kathy. ISBN-13: 978-1111221751
-A guide to the Project Management Body of Knowledge (PMBOK® Guide) 5th Edition, (This is not the same as earlier editions. Get the FIFTH Edition only!), Project
Management Institute, Inc, ISBN 13: 978-1935589679
-The Stanley Foundation. (1996). Educating for the global community: A framework for community colleges
- The Swift Programming Language Swift Programming Series, https://swift.org/documentation/#the-swift-programming-language, Apple Inc.
- iOS Programming (Big Nerd Ranch Guides), Pearson Education (Us); Auflage: 5 Rev ed. , ISBN: 978-0134390734
- Swift Programming: The Big Nerd Ranch Guide(Big Nerd Ranch Guides), Pearson Education (Us)
ISBN: 978-0134398013
- Matlab - Simulink - Stateflow, Grundlagen, Toolboxen, Beispiele 8., aktualisierte Auflage
De Gruyter Oldenbourg Verlag, München, 2014
ISBN: 978-3-486-85910-2
-
Formale Angaben zum Modul
Studiengang
Studienrichtung
Vertiefung
Informatik
Angewandte Informatik
-
Modulbezeichnung
Sprache
Nummer
Version
Modulverantwortlicher
Wahlmodul Angewandte Informatik (STG Jahr 2)
Deutsch
T2INF4901
9
Prof. Friedemann Stockmayer
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 7
Verortung des Moduls im Studienverlauf
Semester
Voraussetzungen für die Teilnahme
4. Sem.
Modulart
Moduldauer
Lokales Profilmodul
1
Eingesetzte Lehr- und Prüfungsformen
Lehrformen
Vorlesung, Vorlesung, Labor, Vorlesung, Übung, Vorlesung, Übung, Labor
Lehrmethoden
Laborarbeit, Lehrvortrag, Diskussion, Lehrvortrag, Diskussion, Fallstudien, Lehrvortrag, Diskussion, Gruppenarbeit
Prüfungsleistung
Benotung
Prüfungsumfang (in min)
Klausur
Standardnoten
120
Workload und ECTS
Workload insgesamt (in h)
davon Präsenzzeit (in h)
davon Selbststudium (in h)
ECTS-Punkte
222,0
144,0
78,0
5
Sachkompetenz
Im Rahmen eines vorgegebenen Auswahlkataloges besteht die Möglichkeit zur spezifischen Erweiterung oder Vertiefung des
Curriculums Kommunikationsinformatik.
Selbstkompetenz
-
Sozial-ethische Kompetenz
-
Qualifikationsziele und Kompetenzen
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 8
Lerneinheiten und Inhalte
Lehr- und Lerneinheiten
Präsenz
Selbststudium
Programmiertechniken für eingebettete Systeme
,0
,0
- Definition von eingebetteten Systemen
- Einführung; Wiederholung in C++
- Konzepte zur effizienten Programmierung in C++
- Speicherverwaltung und Allokationstechniken
- Implementierung von Zustandsautomaten
- Code wartbar schreiben
- Umgang mit statischer Code-Analyse
In dem praktisch ausgerichteten Teil der Vorlesung geht es um Datenübertragung, das Parsen und das Verarbeiten von Daten. Die Teilnehmenden lösen Aufgaben und
diskutieren diese im Anschluss in der Gruppe. Als Werkzeuge dienen Linux mit g++ oder clang.
Skriptsprachen
36,0
39,0
Skriptsprachen kommen vor allem für die prototypische Entwicklung in unterschiedlichen Bereichen zum Einsatz (z.B. Web-Anwendungen, Tools, Kommunikations- und
Netz-Dienste). Im Rahmen dieser Unit wird eine Scriptsprache (z.B. Python) erlernt und praktisch geübt.
- Funktion einer Scriptsprache: Beziehung Skript - Interpreter
- Umgang mit numerischen Daten, Strings
- Objekte und Operatoren
- Charakteristische Datenstrukuren, Dictionaries, Listen, Tupel
- Funktionen und Module
- Grafische Benutzerschnittstellen
Funktionale Programmierung
36,0
39,0
- Programmieren mit Funktionen
- Rekursive Definitionen
- Pattern Matching
- Funktionen als Datenwerte
- Funktionen höherer Ordnung
- Die Funktionen map und fold
- Das Konzept der Monaden Funktionale - Auswertungsstrategien: Strikte Auswertung (call-by-value), nicht strikte Auswertung (call-by-name), Lazy-Evaluation
(call-by-need)
- Überblick über unterschiedliche funktionale Sprache: sml, caml/ocaml, Haskell, Miranda, Lisp/Scheme, Lambda-Kalkül ,
Semantic Web
36,0
39,0
36,0
39,0
36,0
39,0
- Kurze Einfuehrung in Semantische Technologien
- Die Idee von Linked Data
- Das Resource Description Framework (RDF): Tripel und URLs
- RDF Syntax: XML und TTL
- Die Anfragesprache SPARQL
- Semantik in RDF: RDF Schema (RDFS) und die Web Ontology Language (OWL)
- Zusammenarbeit der einzelnen Komponenten: Der
Semantic Web Layer Cake
Assemblerprogrammierung
- Prozessorfamilie 8051
-Entwicklungsumgebung
µVision der Firma Keil in der Demo Version
- Unbewertete Übungen :
z. B. Serielle Schnittstelle, Analog Digital Umsetzer,
- Bewerteter Programmentwurf :
Bearbeitungszeitraum ca. 3 Wochen
- Thema: wird noch bekanntgegeben
C# /.Net 1
-Überblick über das .NET Framework: Die Entwicklungsumgebung VS2008 / SharpDevelop / Monodevelop, .NET Framework-Tools
-Grundlagen der CLR: Reference Types vs. Value Types, Boxing und Unboxing, Schnittstellen und Generika, Events und Delegates, Ausnahmebehandlung, Automatische
Speicherverwaltung
-Ein- und Ausgabe: String-Handling und RegEx, Zugriff auf das Dateisystem, Streams (FileStream, MemoryStream, CompressionStreams, ...)
-Listen (Queue, Stack, Dictionary, ...)
-Serialisierung
-Debugging von .NET-Applikationen: Debugger-Klasse / Trace-Klasse, Debugger-Attribute, Breakpoints
- Oberflächenprogrammierung mit Windows Forms:.Kennenlernen grundlegender UI-Controls (z.B. Panels, Buttons, TextBox, Labels, ...),Dialogfenster (OpenFileDialog,
SaveFileDialog, …)
MDI vs. SDI, Asynchrones Programmieren mit dem BackgroundWorker-Control, Drag & Drop, Drucken, Lokalisierung / Globalisierung von Anwendungen
Ausblick auf .NET 3.0/.NET 3.5, Windows Presentation Foundation
C++
15.05.2017
36,0
Modulbeschreibung für Bachelor Studiengänge an der DHBW
39,0
Seite 9
- Geschichtliche Einordnung der Sprache C++
- Entwicklungsgeschichte
- Wesentliche Sprachmerkmale
- Vor- und Nachteile der Sprache C++
- Unterschiede zur Sprache Java
- Dateiorganisation in C++ , Modulkonzept, Header- und Implementierungsfile
- Hauptprogramm, Programmeintrittspunkt
- Ein- und Ausgabestream, Namespace
- Übersetzen und Binden
- Formatierte Ausgabe, Strings aus der Sprache C, ANSI/ISO Klasse ‚string’
- Präprozessor
- Zeiger, Objektinstanzen
- Konstruktor/Destruktor
- void* Zeiger und NULL Zeiger
- Initialisierungen in C++
- Kopieren von Objekten, flache Kopie, tiefe Kopie
- Copy Konstruktor
- Überladen des Assignment Operators
- Symbolische Konstanten
- Initialisieren von Klassenattributen, konstante Attribute
- Rein lesende Methoden, ‚const’ nach Methodensignatur
- Aufzählungstypen, -konstanten
- Datenstrukturen mit ‚struct’
- Call by value, Call by pointer, Call by reference
- Default-Parameter
- Überladen von Operatoren
- Vererbung, Konstruktoren bei der Vererbung
- Friend Klasse, Sichtbarkeitsregeln
- Mehrfachvererbung
- Zugriffskontrolle bei Vererbung
- Virtuelle Methoden, Polymorphie
- Abstrakte Klassen
- ‘const’ vor Parametern einer Funktion/Methode
- ‚const’ vor dem Rückgabewert einer Funktion/Methode
Emotional Computing
36,0
39,0
36,0
39,0
Linux 1
- Grundsätzliches/Einleitung: Geschichte, Was ist eigentliche Linux, Unterschiede Windows/Linux, Lizenzen, Distributionen, Support, Dokumentationskonzepte
-Installation und erste praktische Erfahrungen: Knoppix, Suse oder eine andere Major-Distribution, KDE- und andere Oberflächen
-Shell/Konsole: Shell und ihre Kommandos, Pipes
Benutzer, Dateirechte, Prozesse, Bootprozess von Linux, Runlevels
- Dateisystem: Dateitypen, Standardfilesystem (FHS), Logdateien
- Netzwerk: Einleitung/Netzkonfiguration, Eatzgebiete von Linux im Netzwerk, Servertypen (inetd/standalone)
ypische Server und wichtige Implementierung (ssh, mail, http, op3, imap, NIS, ldap, X11), Fehlersuche im Netzwerk, pratische Übungen für apache/nfs/samb, Sicherheit im
Netzwerk
-Verschiedenes: vmware und andere OS-Emulatoren, Echtzeitlinux,
Linux auf embedded-Devices
Programmierbare Logik
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
- Digitaltechnik:Automaten, Taktsynchrone Logik
- Bausteine und deren Architektur zur Integration digitaler Systeme
- Entwurfsschritte: Spezifikation, Kodierung, Simulation, Synthese, Fitting
- Hardwarebeschreibungssprache VHDL
- Werkzeuge, Entwicklungsumgebung
- Vollständiger Entwurf einschließlich Dokumentation
Agile Prozesse
- Das agile Manifest
- XP-Programming
- Crystal Clear
- Test Driven Development
Spoken Language Processing
-Einführung: Sprachverstehen und Spracherzeugung beim Menschen
-Spracherkennung
-Sprachkodierung
-Sprachsynthese
-Verfahren zur Verbesserung der Sprachqualität
-Entwurf von Sprachdialogsystemen
-Sprachübertragung in paketbasierten Netze
Grundlagen Maschineller Lernverfahren
- Einführung in das Maschinelle Lernen - Symbolische Lernverfahren
- Grundlagen Neuronaler Netze
- Probabilistische Lernmodelle
- Entwurf und Implementierung ausgewählter Techniken für eine Anwendung
Agentenbasierte Systeme
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 10
- Grundlagen von Agenten und Agentensystemen
- Aufbau von Agenten und Agentensystemen
- Kommunikation in Agentensystemen
- Co-operatives Problemlösen
- Grundlagen der Spieltheorie
- Agenten im Software Engineering
- Agentenframeworks
- Ontologien
- Mobile Agenten (u.a. Internetanwendung, Webcrawler etc.)
- Einsatzgebiete von Agenten in eCommerce, Mensch-Maschine Schnittstellen, Virtuellen Umgebungen, Simulation sozialer Strukturen und Information Retrieval Anwendung
von Agentensystemen
- Entwurf und Implementierung interagierender Agenten für praktische Anwendungen unter Nutzung von Agentenframeworks
Evolutionary Computing
36,0
39,0
36,0
39,0
- Historie und Grundprinzipien von Evolutionären Algorithmen
- Grundprinzipien (Mutation, Rekombination, Mating-Pool-Auswahlverfahren, Fitness-Funktion, Generationenmodelle)
- Anwendung genetischer Algorithmen auf einfache Probleme (Systemidentifikation, Optimierung und Simulation)
- Anwendung auf komplexe Probleme der Informatik (NP)
- Entwurf und Implementierung eines Evolutionären Algorithmus zur Lösung einer gegebenen Problemstellung.
- Analyse und Auswertung der Arbeitsweise Evolutionärer Algorithmen.
Ausgewählte Themen der Informatik
Es werden ausgewählte Inhalte aus der Informatik, wie z.B. dem Web Enginnerin, Software Engieeing, Compilerbau, etc. vertieft behandelt.
Advanced Project Management
36,0
39,0
-This Advanced Project Management (APM) Course is a process-oriented, practical Project Management course that focuses on the Application of Project Management to a
real-life project. APM builds on the Project Management Institute’s Guide to the Project Management Body of Knowledge (PMBOK® Guide, 5th Edition) to provide a solid
framework and context for managing projects.
After successfull completion of the three PM-courses the student will…
-have a solid knowledge of PM tools and techniques such as
The triple constraint of project management, The project management knowledge areas and process groups (PMI®), Project Charter, Project Scope Document, Work
Breakdown Structure, Project Schedule, Critical Path Analysis, Project Management Plan, Communication Matrix, Status Reports, Change Requests / Change Management,
Risk Register, Jour Fixe.
- Be familiar enough with Microsoft Project to help plan and manage projects
- Differentiate good and bad project management through sharing his/her own experiences of good and bad project management
- Be able to apply the knowledge and skills developed in this class to other settings (e.g. workplace)
- Have tools and techniques ready to lead project teams effectively
- Be acquainted with tools and techniques to monitor and control the scope and time of a project
-Have practical experience in a project with a tangible result under real-life conditions, such as limited resources, time-pressure, changing scope, conducted in a
team-setting
Global- (IT) - World - Global Skills
36,0
39,0
- Introduction and Reflection – Global (IT) World
- Working in Diverse Team
- Intercultural Relations Skills
- Effective Negotiations
- Intercultural Conflict Resolution
Ziel des Seminars ist es eine globale Perspektive zu entwickeln und den Bezug zur internationalen IT Welt zu verstehen. Dieses Seminar findet in englischer Sprache statt.
Grundkenntnisse in Englisch werden vorausgesetzt.
Mobile & Web Prototyping
36,0
39,0
Das Ziel dieser Wahlpflichtveranstaltung ist, die notwendigen Programmiersprachen, Technologien und Konzepte zu vermitteln, um in der Lage zu sein sehr schnell Mobile
Anwendungen zu entwickeln. Dies umfasst sowohl die eigentliche App als auch den Server mit Datenbank (Backend).
Für die Entwicklung der App wird werden Grundlagen der Programmiersprache Swift behandelt, sowie eine Einführung in iOS gegeben. Darauf aufbauend wird vorgestellt,
wie man mit "Javascript" für mehrere mobile Plattformen entwickeln kann ("Apache Cordova"). Als Vorgehensmodell für das Entwickeln wird ebenfalls die Methodik "Design
Thinking" präsentiert. Alle Inhalte werden abschließend als Labor/Projekt in Kombination angewendet und bewertet.
Inhalte:
• Grundlagen Swift
• Grundlagen iOS
• Grundlagen Javascript
• Cross Plattform Technologie am Beispiel von Apache Cordova (Phonegap)
• Grundlagen Node.js
• Vorgehensweise: Design Thinking
• Labor/Projekt: Entwicklung einer App (nativ oder cross plattform) mit Node.js Backend
Cloud Computing
36,0
,0
36,0
39,0
36,0
39,0
-Warum Cloud Computing? Einführung
-Grundlagen des Cloud-Computing
-Architekturen und Anbieter
-Besonderheiten der Cloud
-Software-Technologien für die Cloud
-Strategien für die Migration in die Cloud
-Realisierung der Cloud (Warehouse Scale Datacenter, WSC)
-Trends
Professional English Communication
The course “Professional English Communication” focuses on different forms
of communication in the academic and professional business environment. Communication
includes listening, speaking, writing, and presenting in English language. This course will be
held mostly in English language, and provides opportunities for experienced
English speakers as well as students who want to work on their English skills starting from a basic level.
Cross Plattform Web Development
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 11
- Grundlagen Javascript
- Grundlagen Node.js
- HTTP Server mit Express JS
- MongoDB und Mongoose
- Angular JS
- Ionic Framework
- Apache Cordova
- Websockets und evtl. Wunschthemen
Die Inhalte werden stets praktisch angewendet. So wird während der
Vorlesung gemeinsam eine beispielhafte Anwendung entwickelt.
Matlab/Simulink und Swift 2 für IOS
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
36,0
39,0
- Bedienung von Xcode 7
- Einführung Swift 2
- Grundlagen iOS-Programmierung (Auto-Layout, Model-View-Controller, Protokolle, Delegates, etc.)
- Einführung Simulink
- Simulink Code-Generierung am Beispiel Stateflow und Integration in iOS-Projekte
Minimizing EMF Risk
Betrachtungsweise der Physik elektromagnetischer Felder
- Grundlagen
- Elektrische Wechselfelder (Niederfrequenz, NF)
- Magnetische Wechselfelder (NF)
- Elektromagnetische Wellen (Hochfrequenz, HF)
- Elektrisches und magnetisches Gleichfeld
- Darstellung von Feldgrößen in Dezibel
Feldmesstechnik aus baubiologischer Sicht
- Diskussion der verschiedenen Messverfahren für die oben aufgelisteten
Feldarten
- Einführung in die NF- und HF- Messgeräte sowie in den Spektrumanalysator
Messtechnik Labor I: Durchführung von Messungen niederfrequenter
elektrischer und magnetischer Felder sowie hochfrequenter
elektromagnetischer Felder
- Einsatz und Übung der Handhabung der NF- und HF-Messgeräte
- Durchführung von Messungen an speziell präparierten Messplätzen
- Messprotokolle als Teil des Leistungsnachweises
Maßnahmen zur Feldreduzierung in Gebäuden (speziell Schlafplätzen)
- Niederfrequente elektrische Wechselfelder (Abschalten, Abkoppeln,
Abschirmen)
- Niederfrequente magnetische Wechselfelder (Netzsysteme, Schirmung,
Oberschwingungen)
- Hochfrequente elektromagnetische Wellen (großflächige Abschirmung, HFStörungen
in der Elektroanlage)
- Büro und Schlafplätze, Elektronik, Beleuchtung
Messtechnik Labor II: Durchführung einer Schlafplatzmessung, Analyse des
IST-Zustands sowie Ableitung und Umsetzung von Maßnahmen zur
Feldreduzierung
- NF- und HF-Messung eines präparierten Schlafplatzes
- Ermittlung aller Feldquellen
- Ableiten von Maßnahmen zur Minimierung der Felder
- Erstellung eines Messprotokolls als zweiter Teil des Leistungsnachweises
Diskussion der Auswirkungen elektromagnetischer Felder auf Mensch und
Umwelt aus wissenschaftlicher und medizinischer Sicht
- Historie der Entwicklung der Grenzwerte zum Schutz von Mensch und
Umwelt
- Vorstellung und Diskussion internationaler wissenschaftlicher
Untersuchungen
Microservices mit Docker und Node.js: Eine Praktische Einführung
- Node.js: Einführung in die Programmiersprache, praktische Übungen, warum ideal geeignet für Microservices
- Microservices: Konzepte, Vorteile, Design Prinzipien, Relation zu SOA
- Design und Entwicklung einer komplexeren Anwendung bestehend aus mehreren Microservices
- Docker: Konzepte, praktisches Arbeiten mit Docker, Deployment der Anwendung mit Docker
- Zusammenfassung, weiterführende Diskussion: DevOps, Management, Monitoring, Sicherheit
App-Entwicklung mit Swift
- Überblick über mobile Betriebssysteme
- Einführung in die Entwicklungsumgebung Xcode
- iOS-Entwicklung mit Swift
- Oberflächen-Entwicklung mit dem Interface Builder
- Swift auf anderen Plattforme
Internet of Things
- Einführung in das Thema Internet of Things
- Anwendungsgebiete
- Technologien
- Kommunikationsprotokolle
- Sensorik und Datenerfassung
- Plattformen
Film and Special Effects
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 12
Die Vorlesung ist unterteilt in einen theoretischen und einen praktischen Teil.
Im Theorieteil werden zunächst allgemeine Grundkenntnisse der modernen
Filmproduktion vermittelt. Hierbei wird auch eingehend das Thema Postproduction (z.B.
cut, color grading, audio, einfache und fortgeschrittene 2D special effects sowie die Arbeit
mit diverser Software wie etwa Adobe Premiere pro oder Adobe After Effects, etc.)
behandelt. In der Praxisphase wird ein kompletter Kurzfilm incl. diverser einfacher Special Effects
produziert.
Besonderheiten und Voraussetzungen
Besonderheiten
-
Voraussetzungen
-
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 13
Literatur
-Learning Python, Mark Lutz, O´Reilly
- oder alternative Literatur, passend zur Sprache
- Thiemann, Peter, Grundlagen der funktionalen Programmierung, 1994
- Teubner-Pepper, Peter; Hofstedt, Petra, Funktionale Programmierung Sprachdesign und Programmiertechnik. 2006, Springer, Berlin
- Smolka, Gert, Programmierung - eine Einführung in die Informatik mit Standard ML, 2008, Oldenbourg
- Simon Peyton Jones [editor], Haskell 98 language and libraries, the revised report, December 2002, http://haskell.org/onlinereport
- Bryan O Sullivan, Donald Bruce Stewart, and John Goerzen, Real World Haskell.O Reilly, 2009
-
- Kofler,M : Linux 2011: Debiam Fedore, openSue, Ubuntu, Addison-Wesley, 2010
-Kofler, M: Linux- Kommandoreferenz, Addison-Wesley, 2010
- D.J. Barett, Torsten Wilhelm: Lunix kurz und gut, O'Reilly
- Kent Beck: Extreme Programming - Alistair Cockburn: Agile Software-Entwicklung für kleine Teams, Mitp-Verlag 2005
- Andrew Hunt, David Thomas: Pragmatisch Programmieren: unit-Tests mit JUnit, Hanser Fachbuchverlag, 2005
- Kent Beck: Test Driven Development-by Example, Addison-Wesley, 2002
- Frank Westphal: Testfetriebene Entwicklung mit Junit & Fit. Wie software änderbar bleibt, D-Punkt verlag, 2005
-Fundamentals of Speech Recognition, Lawrence Richard Rabiner, PTR Prentice Hall, 1993, ISBN 0130151572
-Statistical Methods for Speech Recognition, Frederick Jelinek A Bradford Book, ISBN: 0262100665
-Speech and Audio Signal Processing: Processing and Perception of Speech and Music Ben Gold, Nelson Morgan, Dan Ellis, Wiley-Interscience; 2 edition (August 23, 2011),
ISBN: 0470195363
-Speech and Language Processing (2nd Edition) [hardcover] D. Jurafsky, J. Martin, Publisher: Pearson Prentice Hall; 2 edition (May 26, 2008), ISBN-10:
0131873210
- Toshinori Munakata,"Fundamentals of the new Artificial Intelligence", Springer Verlag, aktuelle Auflage
- Christoph Beierle,Gabriele Kern-Isberner, "Methoden Wissensbasierter Systeme - Grundlagen - Algorithmen - Anwendungen", Vieweg Verlag, aktuelle Auflage
- Rüdiger Brause, "Neuronale Netze", B.G.Teubner Stuttgart, aktuelle Auflage
- Ethem Alpaydin,"Introduction to Machine Learning", MIT Press, aktuelle Auflage
- J. Russel, Peter Norvig, "Künstliche Intelligenz - Ein moderner Ansatz", Pearson Studium, aktuelle Auflage
- M.Wouldridge,"An Introduction to Multi Agent Systems", John Wiley & Sons, aktuelle Auflage
- Toshinori Munakata,"Fundamentals of the new Artificial Intelligence", Springer Verlag, aktuelle Auflage
- A.E.Eiben, J.E.Smith, "Introduction to Evolutionary Computing", Springer Verlag, aktuelle Auflage
aktuelle Literatur wird in der Vorlesung bekanntgegeben.
-Information Technology Project Management – Sixth Edition, Schwalbe, Kathy. ISBN-13: 978-1111221751
-A guide to the Project Management Body of Knowledge (PMBOK® Guide) 5th Edition, (This is not the same as earlier editions. Get the FIFTH Edition only!), Project
Management Institute, Inc, ISBN 13: 978-1935589679
-The Stanley Foundation. (1996). Educating for the global community: A framework for community colleges
- The Swift Programming Language Swift Programming Series, https://swift.org/documentation/#the-swift-programming-language, Apple Inc.
- iOS Programming (Big Nerd Ranch Guides), Pearson Education (Us); Auflage: 5 Rev ed. , ISBN: 978-0134390734
- Swift Programming: The Big Nerd Ranch Guide(Big Nerd Ranch Guides), Pearson Education (Us)
ISBN: 978-0134398013
- Matlab - Simulink - Stateflow, Grundlagen, Toolboxen, Beispiele 8., aktualisierte Auflage
De Gruyter Oldenbourg Verlag, München, 2014
ISBN: 978-3-486-85910-2
-
15.05.2017
Modulbeschreibung für Bachelor Studiengänge an der DHBW
Seite 14
Herunterladen