|
|
Code: DBWINFO-230 |
|
- |
7 |
Studienjahr: 2 |
Pflichtfach: ja |
Arbeitssprache:
Deutsch |
Prüfungsart:
Klausur (120 Minuten, davon je 60 Min. für Webanwendungen I und für Webanwendungen II) Pro Bearbeitungsminute ist ein Punkt zu vergeben.
[letzte Änderung 06.10.2021]
|
DBWINFO-230 (P730-0012) Wirtschaftsinformatik, Bachelor, ASPO 01.10.2021
, 2. Studienjahr, Pflichtfach
|
Der Gesamtaufwand des Moduls beträgt 210 Arbeitsstunden.
|
Empfohlene Voraussetzungen (Module):
Keine.
|
Als Vorkenntnis empfohlen für Module:
|
Modulverantwortung:
Prof. Dr. Dieter Hofbauer |
Dozent/innen: Prof. Dr. Dieter Hofbauer
[letzte Änderung 01.09.2021]
|
Lernziele:
Webanwendungen I: Die Studierenden kennen die grundlegenden Eigenschaften und Einsatzgebiete von XML, das zugrundeliegende theoretische Konzept, die Komponenten sowie deren Zusammenspiel. Sie haben einen Überblick über die wichtigsten Techniken zur Validierung, Extraktion und Transformation von XML-Dokumenten erworben. Sie sind in der Lage, eine Fachdomäne zu analysieren, ein adäquates XML-Datenmodell zu entwickeln und in einem XML-Schema praktisch umzusetzen, und sie verstehen den Unterschied zwischen wohlgeformten und gültigen XML-Dokumenten. Die Studierenden können Selektionen innerhalb eines XML-Dokuments mit Hilfe von XPath erstellen und ausführen. Sie können Transformationen von XML-Dokumenten in andere Zielformate (insbes. XML oder HTML) mit Hilfe von XSLT spezifizieren und ausführen. Die Studierenden kennen die wesentlichen Elemente von HTML und können diese Sprache in den Kontext von XML einordnen. Die Vorteile einer konzeptionellen Trennung zwischen Inhalt und Präsentation sind verinnerlicht, insbesondere in Bezug auf HTML und CSS. Die Studierenden sind in der Lage, einfache statische Webanwendungen mit HTML und CSS zu erstellen. Webanwendungen II: Die Studierenden kennen die grundlegenden Konzepte und Techniken zur Erstellung dynamischer Webanwendungen, die Unterschiede zwischen client- und serverseitigen Techniken sowie den grundlegenden Aufbau des HTTP-Protokolls. Sie sind in der Lage, Webanwendungen auf Basis von Java EE und Spring Boot zu realisieren und beherrschen deren Deployment in geeigneten Ausführungsumgebungen. Die Studierenden kennen die wichtigsten Ausprägungen klassischer APIs in Java EE wie Servlet-API, Java Server Pages (JSP) und JAX-RS und können diese zur Erstellung von Webanwendungen einsetzen. Sie verstehen den Lebenszyklus von Java-EE-Komponenten wie Servlets und JAX-RS-Ressourcen. Des Weiteren können sie das Architekturmuster Model View Controller (MVC) mit Java EE und Spring Boot umsetzen. Die Studierenden kennen verschiedene Ansätze für serverseitiges Rendering von Webseiten, etwa mit JSP, Java Server Faces (JSF) oder Thymeleaf, und können Vor- und Nachteile kritisch bewerten. Die Studierenden verstehen die Grundkonzepte aktueller Techniken zur Realisierung von REST-basierten Webservices und serviceorientierten Architekturen. Die wichtigsten Angriffsszenarien, die die Sicherheit von Webanwendungen gefährden können, sowie entsprechende Gegenmaßnahmen sind bekannt
[letzte Änderung 06.10.2021]
|
Inhalt:
Webanwendungen I: 1. Extensible Markup Language (XML) 1.1. Einsatzbereiche an Beispielen; historische Einordnung 1.2. XML-Bäume; Knotentypen; Document Object Model (DOM)38 1.3. Konkrete Syntax; Wohlgeformtheit von XML-Dokumenten 2. XML Path Language (XPath) 2.1. Lokalisierungspfade; Kontextknoten; Achsen 2.2. Operatoren und -Funktionen 3. Schemasprachen 3.1. Validierung durch Schemaprozessoren 3.2. Beispiel Document Type Definition (DTD) 3.3. Beispiel XML-Schema (XSD) 3.4. Vergleich zwischen DTD und XSD 4. XSL-Transformationen 4.1. XSLT als domänenspezifische XML-Sprache 4.2. XSLT-Prozessoren 4.3. Templates; Patterns und Pattern-Matching; Auswertung 5. Hypertext Markup Language (HTML) 5.1. Einordnung (SGML, XML, XHTML, HTML5) 5.2. Grundlegende HTML-Elemente und -Attribute (Seiten- und Textstruktur; globale Attribute; Hyperlinks; Listen; Tabellen; Bilder; Formulare) 6. Cascading Style Sheets (CSS) 6.1. Formatierung für XML und HTML; CSS-Module 6.2. Selektoren und Kombinatoren; Vererbung und Kaskadierung 6.3. CSS-Layout an Beispielen Webanwendungen II: 1. Grundlagen 1.1. Aufbau und Struktur von Webanwendungen 1.2. Adressierungsschemata URL, URI, URN; MIME-Types 1.3. Aufbau des HTTP-Protokolls; Historie; Grundkonzepte (Content-Negotiation, Cookies, Caching, Redirects) 2. Frontend Technologien 2.1. HTML5 und CSS3; JavaScript 2.2. JSON; AJAX; Bibliotheken und Frameworks 3. Backend Technologien 3.1. Grundlagen zu Dependency Injection (DI); XML- und JSON-Verarbeitung mit Java; Maven als Build-Werkzeug 3.2. Überblick über grundlegende Java EE mit Fokus auf Spring Boot 3.3. Java EE: Servlets, Servlet-Filter, JSP, DI, JAX-RS, Bean Validation auf Basis von Wildfly Application Server 3.4. Spring Boot: Spring Framework, Spring (REST) MVC mit Thymeleaf Template-Engine und Embedded Servlet Container 4. Architektur von Webanwendungen 4.1. Model View Controller (MVC) als Architekturmuster; client- versus serverseitiges Rendering; Single Page Applications 4.2. REST Webservices, REST Architekturprinzipien; Hypermedia As The Engine Of Application State (HATEOAS) 4.3. Datenaustausch mit XML und JSON 5. Sicherer Betrieb von Webanwendungen 5.1. Deployment, Monitoring, Lastverteilung 5.2. Bedrohungen für Webanwendungen; OWASP Top 10; Sicherheitsmaßnahmen; Authentifizierungsverfahren
[letzte Änderung 06.10.2021]
|
Weitere Lehrmethoden und Medien:
Vorlesung, praktische Übungen
[letzte Änderung 06.10.2021]
|
Literatur:
Webanwendungen I: • Møller, Anders/Schwartzbach, Michael I.: An Introduction to XML and Web Technologies; Addison-Wesley; Reading • Münz, Stefan/Gull, Clemens: HTML 5 Handbuch; Franzis; Poing • Sebestyen, Thomas J.: XML – Einstieg für Anspruchsvolle; Pearson Studium; München • Vonhoegen, Helmut: XML – Einstieg, Praxis, Referenz; Rheinwerk Computing; Bonn • Wolf, Jürgen: HTML5 und CSS3 – Das umfassende Handbuch; Rheinwerk Computing; Bonn Webanwendungen II: • Gupta, Arun: Java EE 7 Essentials; O`Reilly; Sebastopol • Takai, Daniel: Architektur für Websysteme – Serviceorientierte Architektur, Microservices, Domänengetriebener Entwurf; Carl Hanser; München • Tilkov, Stefan; Eigenbrodt, Martin; Schreier, Silvis; Wolf, Oliver: REST und HTTP – Entwicklung und Integration nach dem Architekturstil des Web; dpunkt; Heidelberg • Simons, Michael: Spring Boot 2 - Moderne Softwareentwicklung mit Spring 5; dpunkt; Heidelberg • Spichale, Kai: API-Design – Praxishandbuch für Java- und Webservice-Entwickler; dpunkt; Heidelberg • Rohr, Matthias: Sicherheit von Webanwendungen in der Praxis; Springer Vieweg; Wiesbaden
[letzte Änderung 06.10.2021]
|