Uni Wien:Softwarearchitekturen und Web Technologien VO (Derntl, Motschnig)

Aus VoWi
Wechseln zu: Navigation, Suche

Hard Facts[Bearbeiten]

Inhalt[Bearbeiten]

  • Einführung in PHP / HTML-Formulare
  • Grundkonzepte und -begriffe der Software Architektur
  • Architekturmuster
  • Objektorientierte Modellierung von Software Architekturen
  • Qualitätskriterien und Architekturprinzipien
  • XML Sprachfamilie (v.a. XML, DTD, XML Schema, XPath, XSL)
  • Service-orientierte Architekturen, insbesondere Web Services
  • Konzepte und Entwicklung von Web Applikationen
  • Usability und Navigation im Web

Ziel[Bearbeiten]

Vermittlung von Grundlagenwissen zu Software Architekturen und Webtechnologien als inhaltliche Grundlage der Arbeit im begleitenden Praktikum. Aktive Auseinandersetzung mit ausgewählten Anliegen und Themen.

Themen[Bearbeiten]

Teil1: SW-Architektur[Bearbeiten]

  • Softwarearchitektur: Was, Wer, Wo, Warum, Wie?
    • Requirement-Engineering
    • Prinzipien: Gesetz von Demeter, Separation of Concerns, Lose Kopplung, Hohe Kohäsion
    • Architekturkonzepte: Objektorientiert, Prozedural, Komponentenorientiert,...
  • Architekturmodellierung
    • Komponentendiagramme, Deploymentdiagramme
  • Architekturpatterns
    • From Mud to Structure: Layers, Pipes
    • Verteilte Systeme: Broker
    • Interaktive Systeme: Model-View-Controller (MVC)
    • Adaptive Systeme: Mikrokernel, Reflection
  • Architekturstrukturen & Technologien
    • Zentral/Dezentral
    • Rich/Thin-Client
    • n-Tier-Architektur
    • Middleware
    • Serviceorientierte Architektur

Teil2: Web-Technologien[Bearbeiten]

  • Dynamische Webseiten
    • Clientseitige Programmierung (DHTML): Javascript, AJAX
    • Serverseitige Programmierung : Servlets, Skriptsprachen (z.B. PHP)
  • Formulare, Cookies & Sessions in HTML
  • XML
    • Einführung: Parsing (Event/Baum-basiert)
    • DTD
    • XML Schema
    • XPath
    • XMLNamespaces
    • XSL(T)
    • Anwendungen: XHTML, RDF, RSS, SVG
  • Webservices
    • SOAP
    • UDDI
    • WSDL

Vorwissen[Bearbeiten]

Voraussetzungen (gültig für Studienplan 521)[Bearbeiten]

Vorkenntnisse[Bearbeiten]

  • Ein bisschen ein Verständnis für Grundprobleme bei der Softwareentwicklung (speziell der Web-Applikationsentwicklung) kann nicht schaden und weckt die Motivation

Zeitaufwand[Bearbeiten]

  • Wenn man das Praktikum parallel macht, hat das den Nebeneffekt, dass man viele Dinge aus dem 2. Teil aufgrund der PR-Aufgaben bereits versteht und nicht extra lernen muss (XPATH, DTD, XMLSchema, XSLT, Komponentendiagramme, WebServices,...)
  • 3-5 Tage vorher, wenn man im Praktikum war, sollten reichen.

Vortrag[Bearbeiten]

Derntl (Teil2)[Bearbeiten]

  • Der Vortragsstil von Prof. Derntl ist angenehm, verständlich und manchmal sogar ganz witzig. Seine Art, den Studenten die Themen zu vermitteln, kann sich (im Vergleich zu den anderen Vortragendne in der Informatik-Fakultät der Uni Wien) durchaus sehen lassen. Er schweift nicht vom Thema ab (wie man das z.B. bei Prof. Schikuta gewöhnt ist), beantwortet Fragen (durchaus ausführlich) und kann auch die Grenzen seiner Kompetenzen zugeben.
  • Das Stoffgebiet von Teil2 ist wohl auch weniger trocken und man sei durchaus empfohlen, diese Vorlesungen zu besuchen (wenngleich die Folien im Web auch in Ordnung sind).

Motschnig (Teil1)[Bearbeiten]

  • Prof. Motschnigs Ziele mögen vielleicht Interaktivität und aktiver Wissensaufbau sein, doch kann sie diese Ziele im Vortrag IMHO nicht konkret umsetzen. Sie ist zwar eine kompetente und auch nette Person, hat aber nicht die rhetorische Begabung, die Studenten zu begeistern oder zumindest aufmerksam zu halten.

Autodidakt[Bearbeiten]

  • Man kann notfalls mit den Vorlesungsfolien im WEB alleine auskommen.
  • Empfehlenswert ist das Praktikum parallel zu besuchen, da in der VO-Prüfung durchaus sowas wie XPATH-Abfragen, DTD- oder Schema-Definitionen oder Stylesheet-Transformationen abgefragt werden, die man ohne Übung wohl schwer beantworten kann.

Prüfung[Bearbeiten]

  • Modus: Freitext (stichwortartig), Beispiele (XPATH, DTD, XSLT, ...), Patterns
  • Hilfsmittel: Keine!
  • Zeit: 2 Stunden (reicht aus)
  • Benotung: In Ordnung
  • Es gibt ca. 50% praktische Beispiele, 50 % theoretische Fragen
  • ca. 50% der Fragen machen den Stoffumfang von Teil1 aus, der Rest von Teil2
  • Es gibt alte Prüfungsangaben, die sich nicht 100% mit dem Stoffgebiet decken, aber doch einen Großteil (+ Dinge, die nicht gebracht wurden) umfassen (vgl. Materialien).

Literatur[Bearbeiten]

  • Vorlesungsfolien sind in der Web-Plattform verfügbar
  • Auf der Plattform finden sich folgende Literaturhinweise:
  1. Vogel, O., Arnold, I., Chughtai, A., Ihler, E., Mehlig, U., Neumann, T., et al. (2005). Software-Architektur: Grundlagen - Konzepte - Praxis. München: Spektrum Akademischer Verlag. (Bei Bedarf: Von relevanten Abschnitten dieses Buches liegt im Sekretariat des Instituts eine Kopiervorlage auf)
  2. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., & Stal, M. (1996). Pattern-Oriented Software Architecture: A System of Patterns. Chichester, U.K.: John Wiley & Sons.
  3. Jacobson, I., Booch, G., & Rumbaugh, J. (1999). The Unified Software Development Process. Reading, MA: Addison-Wesley.
  4. Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (1995). Design Patterns - Elements of Reusable Object-Oriented Software. Reading, MA: Addison-Wesley.
  5. Möller, A., & Schwartzbach, M. (2006). An Introduction to XML and Web Technologies. Harlow, England: Addison-Wesley.