Lehre im laufenden Semester

  • Grundlagen informatischer Problemlösung - Algorithmische Problemlösung

    Diese Veranstaltung ist Teil des Moduls Grundlagen informatischer Problemlösung.

    In der Vorlesung zur „Algorithmischen Problemlösung“ erfolgt eine Einführung in Grundlagen der Informationsverarbeitung und eine erste Betrachtung des Algorithmusbegriffes. Aufbauend auf diesen Ausführungen werden informatische Methoden zur Problemlösung und Ansätze zur Modellierung von Problemen und Lösungsstrategien eingeführt.

  • Knowledge Graphs

    Wissensgraphen sind vermutlich der aktuelle Ansatz, um verteilte Information zusammen zu bringen und zu nutzen. SNach einer kurzen Einführung werden wir uns im Seminar mit unterschiedlichen Aspekten dieses Ansatzes näher beschäftigen.

  • Semantic Web Technologies

    Die Menge der digital verfügbaren Daten —sowohl global im Internet, als auch lokal innerhalb von Organisationen— wächst kontinuierlich. Längst ist es nicht mehr möglich sämtliche verfügbaren Daten manuell zu sichten. Suchmaschinen unterstützen Benutzer beim Auffinden relevanter Datensätze oder Dokumente. Allerdings ist die automatische Weiterverarbeitung unstrukturierter Daten, wie zum Beispiel Texten in Webseiten, nicht ohne weiteres möglich. Auch die Etablierung global einheitlicher Formate für Informationen des selben Typs ist nicht realistisch. Semantic Web Technologien ermöglichen die Anreicherung von Daten mit Bedeutung (Semantik), die auch für Maschinen verständlich ist, ohne jedoch ein global einheitliches Schema vorzugeben. Dadurch vereinfachen sie den automatisierten Austausch von Informationen und ermöglichen die automatisierte Verknüpfung von Daten (Linked Data) zur Gewinnung neuer Informationen.

    Ziele der Lehrveranstaltung:

    • Beherrschen der grundlegenden Sprachen (RDF, OWL) und wichtiger Vokabulare (RDFS, SKOS) des Semantic Webs
    • Beherrschen der Anfragesprache SPARQL zur Abfrage von Daten in RDF
    • Befähigung zum Umgang mit Techniken des automatisierten Schlussfolgerns (Reasoning)
    • Befähigung zum methodischen Vorgehen bei der Datenmodellierung und Datenbereitstellung mit Hilfe von RDF
    • Befähigung zur Anwendung von Semantic Web Technologien zur Suche von Daten
    • Befähigung zur Anwendung von Semantic Web Technologien zum Nachvollziehen der Herkunft von Informationen

    Aufbau:
    Die Lehrveranstaltung besteht sowohl aus theoretische als auch praktische Einheiten. In (ggf. voraufgezeichneten) Vorlesungen werden die grundlegenden Technologien des Semantic Webs eingeführt. Praktische Übungen und kleine Projekte vertiefen das Verständnis der vorgestellten Technologien.

  • Entwicklung verteilter Anwendungen

    Ein Großteil der heute entwickelten Softwareanwendungen sind verteilte Anwendungen: Mobile Apps beziehen Inhalte von Webservern, Messenger kommunizieren über zentrale Server oder Peer-To-Peer-Netzwerke miteinander, High-Performance-Cluster verteilen über Netzwerke Berechnungen auf viele Knoten, Logging-Systeme nutzen Blockchains zur dezentralen und manipulationssicheren Speicherung von Informationen. Bei der Entwicklung steht eine Vielzahl von Technologien zur Auswahl. In dieser Veranstaltung werden verschiedene Technologien praktisch ausprobiert und deren Funktionsweise, sowie Vor- und Nachteile betrachtet.

  • Softwareentwicklungsprojekt

    Neben fachlichen Kenntnissen sind in der Informatik auch Eigenständigkeit, Teamfähigkeit, Ergebnispräsentation, Kommunikation mit Auftraggebern, sowie Zeit- und Projektmanagement wichtige Kompetenzen im Arbeitsalltag. Diese Veranstaltung bietet die Möglichkeit im Rahmen eines Projekts diese Fähigkeiten zu trainieren. Die angebotenen Projekte befassen sich mit realen Anwendungsproblemen, welche durch Unternehmen oder Forschungsgruppen bereitgestellt werden. In einer begleitenden Vorlesung werden zudem hilfreiche Methoden und Werkzeuge vorgestellt und durch Gastvorträge Einblicke in die praktische Ausgestaltung von Softwareentwicklungsprozessen in Firmen gewährt.

    Projektablauf

    • Berarbeitung eines Projekts in Teams von 3 bis 4 Personen
    • Vorstellung der Projekte, Rahmenbedingungen und Inhalte in der ersten Vorlesungswoche (Anwesenheit zwingend erforderlich)
    • Vergabe der Projekte in der zweiten Vorlesungswoche (rechtzeitige Mitteilung der Projektwünsche zwingend erforderlich)
    • Anwendung des Vorgehensmodells Scrum bei der Durchführung der Projekte
    • Einführung in Scrum in der zweiten Vorlesungswoche (einmaliger Doppeltermin)
    • Durchführung von Sprint Review und Planungsmeetings im Team mit dem Projektgeber (“Product Owner”) alle zwei Wochen
    • Diskussion von Zwischenständen, Berichten der Retrospektiven, sowie Vorstellen der Projektergebnisse am Ende der Vorlesungszeit

    Ziele der Lehrveranstaltung

    • Entwicklung der Eigenständigkeit und Teamfähigkeit, sowie der Kompetenzen in Präsentation, Kommunikation, Zeit- und Projektmanagement
    • Befähigung zur agilen Softwareentwicklung mit Scrum
    • Befähigung zum Umgang mit Werkzeugen für die Softwareentwicklung im Team, sowie Zeit- und Projektmanagement
    • Befähigung zur Anwendung individuel benötigter Technologien im Rahmen des Projekts

    Belegunmöglichkeiten

    • “Softwareentwicklungsprojekt 1” (SWEP-1: für den Bachelor)
    • “Softwareentwicklungsprojekt 2” (SWEP-2: für den Master)
    • “Offenes Softwareentwicklungsprojekt” (EAH Jena)

    Voraussetzungen

    • Die formalen Voraussetzungen Ihres Moduls (SWEP-1, SWEP-2, SOC-P: je nach Studiengang).
    • Teamfähigkeit: Das Projekt wird im Team mit verschiedenen Rollenverteilungen durchgeführt
    • Schnelle Einarbeitung in einzusetzende Technologien (je nach Projekt). Beispiele: Java, Android, NFC, HTML5, CSS, JavaScript, BPMN bzw. EPKs, Webservices, Datenbanken, Apache, etc.
  • Informationsintegration

    Data integration is a process that combines data from several disparate data sources. It becomes one of the key challenges within most IT projects. Since these data sources are independently engineered and developed by different people, so, they contain a large number of heterogeneities. In order to provide a unified view of these data sources, we should deal with different kinds of heterogeneities.

    In this course, students will learn techniques and methodologies for integrating data from large sets of heterogeneous data sources. The course will cover the following topics:
    – Importance of data integration
    – Physical and virtual data integration
    – data and semantic heterogeneities
    – String, schema, and data matching
    – Web data integration

    Literature

    – AnHai Doan, Alon Halevy, Zachary Ives: Principles of Data IntegrationExternal link. Morgan Kaufmann, 2012.
    – Ulf Leser, Felix Naumann: InformationsintegrationExternal link. Dpunkt Verlag, 2007.
    – Luna Dong, Divesh Srivastava: Big Data Integration. Morgan External link& Claypool, 2015.
    – Serge Abiteboul, et al: Web Data ManagementExternal link. Cambridge University Press, 2012.
    – Jérôme Euzenat, Pavel Shvaiko: Ontology MatchingExternal link. Springer, 2007.
    – Felix Naumann: An Introduction to Duplicate DetectionExternal link. Morgan & Claypool, 2012.

    Software and tools
    – Data Matching softwareExternal link
    – Web Data INTEgRation Framework (WInte.r)External link
    – Minoan: Entity Resolution (ER) frameworkExternal link
    – HoloClean: A Machine Learning System for Data EnrichmentExternal link
    – ontology-matchingExternal link