Allgemeine Grundlagen (Pflichtmodule)

Werbung
Vorläufiges Modulhandbuch
für 1.-4. Semester
für den Bachelorstudiengang „Mobile Computing“
an der Hochschule für angewandte Wissenschaften Hof
Allgemeine Grundlagen (Pflichtmodule)
Wissenschaftliches Arbeiten
Die Studierenden kennen die wissenschaftliche Methode und wissen wie man
vorgeht, um wissenschaftliche Arbeiten anzufertigen, sich Inhalte selbst zu erarbeiten, zu reflektieren sowie eine konstruktiv-kritische Haltung gegenüber
Inhalten einzunehmen.
Lehrinhalte
• Wissenschaftstheorie
• Recherche und Bewerten von Quellen und Inhalten
• Argumentationstheorie
• Wissenschaftliches Dokumentieren
• Wissenschaftlicher Schreibstil
• Zielgerichtetes, effizientes Lernen
• Kreativitätstechniken
• Wissenschaftsethik
Voraussetzungen keine
Formales
Prüfung: Klausur60, ECTS: 3, SWS:2
Lernziele
Gestaltung und Präsentation
Sicherer Umgang mit den grundlegenden Techniken und Werkzeugen der visuellen Gestaltung. Die Vorlesung vermittelt die Grundlagen des klassischen
Designs und die zugehörigen Gestaltungsparameter. Visuelle Wahrnehmungsfähigkeit und -kompetenz wird trainiert und ausgebildet. Die Studierenden
lernen Gestaltung in einzelne Gesichtspunkte zu unterteilen und einzuordnen
und entsprechend der jeweiligen Kommunikationsziele einzusetzen.
Lehrinhalte
Aufbauend auf der menschlichen Wahrnehmung werden einzelne Gestaltungsgesetze anhand praxisnaher Beispiele erläutert. Mit Hilfe unterschiedlicher Designergebnisse wird das Beurteilungsvermögen der Studierenden geschult. Im Rahmen der Semesteraufgaben wird das konzeptionelle Arbeiten
schrittweise an fachspezifischen Problemen geschult. Durch Vertiefung der
Teildisziplinen wie Farbe, Formen, Layout, Typographie und Bildsprache werden detailliert grundlegende gestalterische Fähigkeiten erlernt.
Voraussetzungen keine
Formales
Prüfung: Studienarbeit/Präsentation, ECTS: 5, SWS:4
Lernziele
Diskrete Mathematik für Informatiker
Lernziele
Lehrinhalte
Voraussetzungen
Die Studierenden kennen mathematische Konzepte, die der Informatik
zugrunde liegen.
• Logik, Aussagenlogik, Prädikatenlogik und Beweistheorie
• Mengen, Relationen, Abbildungen, Boolsche Algebra
• Natürliche Zahlen, Zahlen und Zahlentheorie
• Gruppen, Ringe, Körper, Folgen und Reihen
• Matrizen
• Graphentheorie
keine
Prüfung: SchrPr90, ECTS: 5, SWS:4
Formales
Grundlagen der Informationstechnik
Lernziele
Lehrinhalte
Voraussetzungen
Formales
Die Studierenden kennen die Prinzipien digitaler Informationsverarbeitung
und verstehen die Funktionsweise von Rechnern.
Sie wissen wie Zahlen, Texte und multimediale Daten im Computer repräsentiert werden und können die grundlegenden Abläufe zur Verarbeitung von
Daten erklären.
• Grundbegriffe der Informationstechnik
• Funktionseinheiten von Rechnern
• Funktionsweise von Rechnern
• Binärdaten, digitale Kodierung von Integer und Gleitkommazahlen
• ASCII, Unicode
• Automatentheorie, Schaltnetze, KV-Diagramme
• von-Neumann-Architektur, CPU-Aufbau
• Maschinenbefehle, Assembler, Register, Speicheradressierung
• Hardware-Komponenten und Peripherie
Keine
Prüfung: SchrPr90, ECTS: 5, SWS:4
Englisch für Informatiker
Lernziele
Lehrinhalte
Voraussetzungen
Formales
Die Studierenden haben ihre Englischkenntnisse aus der Schule vertieft und
sind insb. mit technischen Fachbegriffen aus der Informatik vertraut. Sie können sich anhand aktueller Texte über Aspekte der Informatik schriftlich und
mündlich äußern
Es wird angeleitet, die englische Sprache fach- und berufsbezogen im internationalen Kontext anzuwenden. Kenntnis ausgewählter Bereiche der Fachterminologie des Englischen. Verständnis und adäquate Darstellung von Sachverhalten aus dem IT-Bereich.
keine
Prüfung: SchrPr90, ECTS: 5, SWS:4
Informatik (Pflichtmodule)
Objektorientierte Programmierung I
Lernziele
Lehrinhalte
Die Studierenden erwerben grundlegende Kenntnisse der objektorientierten Programmierung mit Hilfe der Programmiersprache Java. Sie können Konsolen- Programme selbst entwickeln, vorgegebene Programme verstehen und Ideen daraus in
eigene Projekte einfließen lassen.
• Datentypen und Operatoren
• Kontrollstrukturen
• Referenzen
• Arrays
• Klassen und Objekte
• Vererbung
• Polymorphismus
• Packages und Sichtbarkeitsregeln
• Ausnahmebehandlung
• Bibliotheksklassen
• Ein- und Ausgabe, Datei-Handling
Objektorientierte Programmierung II
Lernziele
Lehrinhalte
Die Studierenden sind in der Lage, größere Programme mit grafischer Benutzeroberfläche in Java zu erstellen.
Die Programme sollen eine persistente Datenverwaltung, Verteilungs- und Parallelisierungsaspekte sowie eine ansprechende graphische Oberfläche aufweisen.
• Entwicklung graphischer Benutzeroberflächen mit Swing
o Elementare Komponenten in Swing (z.B. Label, Textfelder, Buttons, Listen)
o Layout-Manager
o Event-Handling und Event-Listener
o Fenster, Panes und Panels
o Komplexere Komponenten in Swing (z.B. Menues, Tables)
• Grundlagen der parallelen Programmierung (Threads)
• Grundlagen der verteilten Programmierung (Sockets)
• Einfache OO-Patterns (Observer / Model-View-Controller)
Software Engineering I
Die Studierenden kennen die grundlegenden Ziele, Methoden, Techniken und Vorgehensweisen des Software-Engineering. Sie sind in der Lage diese Methoden eigenständig anzuwenden um technisch saubere, klar strukturierte Programme zu schreiben.
Lehrinhalte • Die Phasen der Softwareentwicklung
• Grundlagen der Vorgehensmodelle für die Softwareentwicklung
• Grundlagen von UML
• Klassendiagramme
• Objektdiagramme
• Zustandsdiagramme
• Sequenzdiagramme
• Kommunikationsdiagramme
• Grundlagen der Design-Pattern
• Modultests
Literaturliste - siehe Vorlesung Medienform Beamer, Tafel, Overhead
Lernziele
Software Engineering II
Die Studierenden kennen die Probleme größerer Softwareprojekte und der industriellen Softwareentwicklung. Sie sind in der Lage, Softwareprojekte über die reine
Programmierung hinaus professionell abzuwickeln und im Team zu planen, zu entwickeln und zu testen.
Lehrinhalte • Vertiefung von Phasenmodellen
• Systemanalyse, Systementwurf
• Use-Case-Diagramme
• Aktivitätsdiagramme
• Komponenten-Diagramme
• Systemtest
• Agile Methoden
• Überblick Projektmanagement
Literaturliste - siehe Vorlesung Medienform Beamer, Tafel, Overhead
Lernziele
Algorithmen und Datenstrukturen
Lernziele
Lehrinhalte
Die Studierenden sind mit typischen Datenstrukturen der Informatik sowie mit Algorithmen auf diesen Datenstrukturen, insbesondere Such- und Sortieralgorithmen,
vertraut und haben die Fähigkeit, diese hinsichtlich ihrer Effizienz zu analysieren und
zu bewerten. Sie sind in der Lage, für gegebene Aufgabenstellungen geeignete Datenstrukturen und Algorithmen auszuwählen und in Java zu programmieren.
• Komplexitätsanalyse von Algorithmen
• Felder, Listen, Bäume, Stacks und Queues
• Rekursion
• Einfache Sortieralgorithmen (z.B. Insertionsort, Selektionsort)
• Effiziente Sortieralgorithmen (z.B. Mergesort, Heapsort)
• Binäre Suchbäume (z.B. AVL-Bäume)
• Perfekt ausgeglichene Suchbäume (z.B. 2-3-4-Bäume, B-Bäume)
• Backtracking-Algorithmen
• Hashverfahren
• Abstrakte Datentypen, Generics
• Collections in Java (z.B. auf der Basis von List, Map, Set)
Datenbanken I
Lernziele
Lehrinhalte
Die Studierenden sind in der Lage aus einer gegebenen Problemstellung ein angemessenes Datenmodell zu erzeugen, mit SQL Befehlen anzulegen und abzufragen
• Relationen-Kalkül
• Entity Relationship Modelle
• Normalformen
• SQL SELECT, INSERT, UPDATE, DELETE
• VIEWS
• Indizes zur Verbesserung der Abfragegeschwindigkeit
Rechnernetze I
Lernziele
Lehrinhalte
Die Studierenden verstehen den Schichtenaufbau des Internet in Theorie und Praxis
und kennen die Funktionsweise ausgewählter Netzwerkdienste der Anwendungsebene bis hin zu Übertragung auf der physikalischen Ebene.
• Netzwerktopologien
• ISO/OSI-Schichtenmodell
• Physische Grundlagen der Datenübertragung (OSI-Schicht 1)
• Grundlegende Protokolle der OSI-Schichten 2-4
(z.B. TCP und UDP, Routingprotokolle, IPv4 und IPv6)
• Ausgewählte Anwendungsprotokolle (OSI-Schichten 5-7, z.B. smtp, pop3, http)
• Grundlagen der Netzwerksicherheit
Web Development I
Lernziele
Lehrinhalte
Die Studierenden haben Einsicht in die grundlegenden Techniken, die bei der Entwicklung modernen Web-Anwendungen eingesetzt werden.
• Konzeption und Architektur einer Web-Anwendung
• Einführung und Vertiefung grundlegender Techniken
(z.B. HTML, CSS, JavaScript, jQuery)
• Einführung in eine Skriptsprache( z.B. Python, PHP, Ruby oder Groovy)
• Servlet Programmierung mit Java
• Webdesign und Usability
Formale Sprachen
Lernziele
Lehrinhalte
Kenntnisse von Methoden zum Einlesen strukturierter Daten in interne Datenstrukturen sowie die Fähigkeit, diese Methoden anzuwenden
• Formale Beschreibung und Einlesen strukturierter Daten:
• Grundlagen der Automaten- und Komplexitätstheorie
• Formale Sprachen: Grammatiken, Chomsky-Hierarchie, rekursiver absteigender
Parser
• XML: Struktur, Document Type Definition, XML-Parser
Mobile Computing (Pflichtmodule)
Interfacedesign für Mobile Devices
Lernziele
Lehrinhalte
Die Studierenden kennen bewährte Design-Patterns für Mobilgeräte und können selbständig Benutzeroberflächen entwerfen, die für die Touch-Bedienung
mit dem Finger geeignet ist.
• Grundlagen des Interface Design (Wireframes, Screendesigns)
• Anpassung von Benutzeroberflächen für Touch-Bedienung
• Responsive Web Design
• Design Patterns für Smartphones
• Design Patterns für Tablets
• Flexible Anpassungen für Portrait- und Landscape Modus
Voraussetzungen Erfolgreiche Teilnahme an Gestalten und Präsentation
Formales
Prüfung: StA, ECTS: 5, SWS:4
Smartphone Programming I
Lernziele
Lehrinhalte
Die Studierenden können einfache mobile Apps für eine ausgewählte Smartphone Plattform erstellen (z.B. Android).
• Programmierrelevante Ausstattungsmerkmale von Smartphones
• Überblick über das Android Betriebssystem
• Grundlegende Android Programmierkonzepte (Activities, Intents, …)
• Gestaltung von Oberflächen mit XML
• Benachrichtigungen, Kontextmenüs und Navigation
• Event-Handler und der Activity Lifecycle
• Verwendung von Ressourcen inkl. Internationalisierung
• Anpassen von Anwendungen an unterschiedliche Auflösungen
• Umgang mit einer integrierten Entwicklungsumgebung und dem Emulator
• Testen mit Testframeworks, z.B. Robotium
Voraussetzungen Erfolgreiche Teilnahme an Grundlagen der Informationstechnik und OOP I
Formales
Prüfung: StA, ECTS: 5, SWS:4
Smartphone Programming II
Lernziele
Lehrinhalte
Die Studierenden kennen die Möglichkeiten HTML5-basierter WebApps und
können für eine gegebene Problemstellung sinnvoll entscheiden, ob eine native
App oder eine WebApp die bessere Wahl ist. Sie können selbständig eine App
entwickeln, die fortgeschrittene Funktionen beinhaltet, wie das Verwenden der
Kamera, GPS, Accelerometer oder anderer Sensoren, sowie das Zusammenspiel
mit Telefonanwendungen wie Kontakte und Kalender.
• Fortgeschrittene Programmiertechniken in Android
•
o Datentransfer mit Intents
o Datenpersistenz und Content Provider
o Background Threads
o Sensor Manager und das Auslesen von Sensoren
o In-App Payment
o 2D und 3D Grafik in Android
Möglichkeiten und Grenzen von HTML5 WebApps mit Phonegap
Voraussetzungen Erfolgreiche Teilnahme an SmartPhone Programming I und OOP I+II
Formales
Prüfung: schrPr90 + Testate, ECTS: 5, SWS:4
Tablet Computing I
Lernziele
Lehrinhalte
Die Studenten können einfache native Apps für Tablet-Computer mit dem iOS
Betriebssystem entwickeln
• Einführung in die Programmiersprache Objective-C
• Einführung in die Entwicklungsumgebung
• Überblick über das iOS Betriebssystem
• Grundlegende Programmierkonzepte von iOS
• Umsetzung des MVC Paradigmas in iOS
• Entwurf von Benutzeroberflächen mit Storyboard
• Konzepte zur Entwicklung von rotationsinvarianten Bedienoberflächen
• Einführung in die 2D Grafik-Programmierung
• Persistente Datenspeicherung
Voraussetzungen Teilnahme an den Vorlesungen OOP I/II und Software Engineering I/II
Formales
Prüfung: SchrPr90, ECTS: 5, SWS:4
Tablet Computing II
Lernziele
Lehrinhalte
Die Studenten können komplexere native Apps für iOS Systeme entwickeln und
werden mit der Entwicklung von HTML-Web-Apps vertraut gemacht
• Vertiefung der Kenntnisse in Objective-C
• Programmierung mit iCloud
• Einführung in CoreImage
• UI Customization
• inApp Purchase
• Integration von Social Frameworks
• Entwicklung von parallel arbeitenden Apps
• Entwicklung barrierefreier Apps
• Unterschiede der HTML-Web-App zu Android
Voraussetzungen Teilnahme an den Vorlesungen OOP I/II, Software Engineering I/II, Tablet Computing I und Smartphone Programming I/II
Formales
Prüfung: SchrPr90, ECTS: 5, SWS:4
Praktikum Programmierung für Mobile Devices
Lernziele
Lehrinhalte
Die Studierenden können eine komplexe App für eine Mobil-Plattform ihrer
Wahl in Teamarbeit konzipieren, planen und umsetzen. Sie berücksichtigen
dabei Randbedingungen wie unterschiedliche Gerätetypen, Benutzererwartungen bzgl. Hoch- und Querformat, sowie technische und formale Best Practices.
Anwenden der erlernten Kenntnisse aus Veranstaltungen in den Bereichen
Programmierung , Software Engineering und Smartphone bzw. Tablet Computing im Rahmen eines praxisnahen Softwareprojekts.
Dieses Projekt soll grundsätzlich auch Teamarbeit beinhalten und mindestens
die Phasen "Spezifikation", "Implementierung" und "Validierung" eines Entwicklungsprozesses umfassen.
Voraussetzungen Keine
Formales
Prüfung: StA, ECTS: 5, SWS:4
NoSQL Datenbanken
Lernziele
Lehrinhalte
Die Studierenden kennen verschiedene Typen von DBMS sind in der Lage selbständig
zu entscheiden, welcher Typ für eine gegebene Problemstellung am besten geeignet
ist. Sie können darüber hinaus eigene Lösungen auf Basis von HTML5 Indexed DB
oder einer JSON-basierten DB entwickeln.
• Übersicht über Typen von DB Systemen von spalten-orientierten über dokumenten-orientierte bis hin zu Graphendatenbanken
• Details und praktische Übungen zu HTML5 Indexed DB
• Details und praktische Übungen zu einer dokumenten-orientierten DB
• Abfragen in verteilten Umgebungen mit Map Reduce
• Datenmodellierung für NoSQL Datenbanken
Web Development II
Lernziele
Lehrinhalte
Die Studierenden sind in der Lage Web-basierte Anwendungen mit modernen Methoden, Techniken und Werkzeugen zu entwickeln.
• Kombinierte Anwendung der Techniken aus Web-Development I
• MVC-Architektur
• Web-Frameworks (z.B.: Groovy on Rails, Spring, PHP/Zend)
• Integrierte Entwicklungswerkzeuge (z.B. Eclipse, Netbeans)
• WebServices
Design (Pflichtmodule)
Interface- und Interaction Design
Lernziele
Lehrinhalte
Voraussetzungen
Formales
Die Studierenden sind in der Lage Informationen in unterschiedlichen Medien
benutzerfreundlich darzustellen. Sie strukturieren Informationen, Daten und
Wissen und entwerfen entsprechende Informationsarchitekturen. Die Studenten gestalten grafische Benutzeroberfläche für Computerprogramm mit sehr
unterschiedlichen Nutzeranforderungen. Sie kennen Evaluationsmethoden
und können diese anwenden.
• Informationsarchitektur
• Informationsdesign
• Interfacedesign - grafische Benutzeroberfläche
• Screendesign
• UI Pattern
• E-Learning
• Spiele
• Usability / Evaluationsmethoden
Mindestens 45 Credits aus den Modulen des Grundlagenbereichs
Prüfung: StA, ECTS: 5, SWS:4
Game-Design und Animation
Lernziele
Die Studierenden sind in der Lage ein eigenes Spielkonzept mit entsprechendem Game Design Dokument zu erarbeiten und in eine interaktive Applikation
Lehrinhalte
Voraussetzungen
Formales
umzusetzen.
Sie können die erforderlichen visuellen Elemente, wie Grafiken (z.B. Spielcharaktere und Leveldesigns) und die auditiven Bestandteile des Spiels selbstständig konzipieren und adäquat realisieren. Die Konzeption und Erstellung
eines Spiel-Prototypen mit entsprechendem Usabilitytest wird in der Praxis
überprüft.
Die Studenten erhalten somit die Grundlagen sowohl das User Interface als
auch das Interaction Design bzw. die Interaktionsabläufe eigenständig evaluieren und bewerten zu können.
• Entwicklungsdokumente / Game design document
• Spiel-Genres / Serious Games / Edutainment / ...
• Gameplay / Spielbalance
• Handlungsprozesse / Interaktionsformen
• Interface & Interaction Design für Spiele / User Interface Design
• Interaktionsdesign
• Benutzerschnittstellen
• Character Design
• Animation
• Sound-Design
• Usability Test
keine
Prüfung: StA, ECTS: 5, SWS:4
Herunterladen