Seminar: aktuelle Themen aus den Forschungsbereichen der Arbeitsgruppe

Aktuelles

Seminarrichtlinien (unbedingt beachten !!!): Richtlinien.pdf,

Alle MS-Word Benutzer müssen folgende Seminarvorlage: Vorlage.doc verwenden.  

25. Mai 2005    Vorbesprechung und Themenvergabe um 13:00 Uhr in A9

2. Mai 2005:     die Teilnehmerliste mit den Themenvorschlägen hängt am schwarzen Brett aus

Themen

Themenbereich Software Engineering/Software-Produktlinien

  • Systematische Wiederverwendung im Produktlinienumfeld - Ein Entscheidungsproblem
    BMW ist bekannt für seine Autos, Bosch für seine Motorensteuerungen und Microsoft für seine Betriebssysteme. Nahezu alle Firmen sind auf gewisse Bereiche spezialisiert und stellen nur eine kleine Zahl von Produktgruppen her. Je Produktgruppe kann die Zahl der Varianten jedoch gewaltig sein, so produziert Bosch alleine weit über tausend verschiedene Motorensteuerungen. Trotz dieser Vielzahl von Varianten überwiegen die Gemeinsamkeiten, da diese sie gerade zu einer Produktgruppe machen. Könnte man diese Gemeinsamkeiten systematisch ausnutzen indem man sie nur einmal entwickelt, so ergäbe sich hier ein enormes Wiederverwendungspotential! Genau das ist das Ziel der Produktlinienansätze wie PuLSE. Diese zielen darauf ab die Entwicklung einer Vielzahl von Systemen durch eine gemeinsame Referenzarchitektur zu integrieren. In der Praxis wurden so bereits Wiederverwendungsraten von 75% und mehr erreicht!

Basiert auf:
- K. Schmid (2004). Systematische Wiederverwendung im Produktlinienumfeld - Ein Entscheidungsproblem. In: KI 3/04, S. 33-35

- K. Schmid (2002). Planning Software Reuse — A Disciplined Scoping Approach for Software Product Lines. PhD thesis, University of Kaiserslautern, Fraunhofer IRB Verlag.

  • Systematischer Aufbau und Einsatz von Wissen zur effizienten Entwicklung von Software-Varianten
    Die meisten Organisationen kämpfen heute mit der Herausforderung immer komplexere Probleme mit Software zu lösen und dabei steigenden Qualitätsansprüchen sowie individuellen Anforderungen gerecht zu werden. Dass auch dabei weiterhin Kosten, Aufwand und Entwicklungszeit reduziert werden sollen, ist aus Perspektive des Managements fast schon eine Selbstverständlichkeit. Software-Produktlinien stellen einen Weg dar in diesem Spannungsfeld erfolgreich zu bestehen. Dieser Artikel zeigt auf, wie systematisch Wissen über Anwendungsdomäne, Lösungskonzepte und Produkte erfasst und in ein Expertensystem eingebracht werden kann, dass die effiziente Entwicklung von Software-Varianten ermöglicht.  Der Ansatz lässt sich mit beliebigen Entwicklungsprozessen und –artefakten integrieren und ermöglicht somit einen leichtgewichtigen Produktlinienansatz, der eine schrittweise Einführung von Produktlinientechnologien in die Praxis unterstützt.

Basiert auf:
- D. Muthig (2004). Systematischer Aufbau und Einsatz von Wissen zur effizienten Entwicklung von Software-Varianten. In: KI 2/05, S. 56-58

- D. Muthig (2002). A Light-weight Approach Facilitating an Evolutionary Transition Towards Software Product Lines. PhD thesis, University of Kaiserslautern, Fraunhofer IRB Verlag, 2002.

Themenbereich Semantic Web (betreut durch Dipl. Inform. Martin Schaaf)

  • OWL - Foundations and Principles
    OWL is a /Web/ Ontology language. Where earlier languages have been used to develop tools and ontologies for specific user communities (particularly in the sciences and in company-specific e-commerce applications), they were not defined to be compatible with the architecture of the World Wide Web in general, and the Semantic Web in particular.
    OWL uses both URIs </Addressing/> for naming and the description framework for the Web provided by RDF </RDF/> to add the following capabilities to ontologies:
    • Ability to be distributed across many systems
    • Scalability to Web needs
    • Compatibility with Web standards for accessibility and internationalization
    • Openess and extensiblility

OWL builds on RDF and RDF Schema and adds more vocabulary for describing properties and classes: among others, relations between classes (e.g. disjointness), cardinality (e.g. "exactly one"), equality, richer typing of properties, characteristics of properties (e.g. symmetry), and enumerated classes.

Literatur: Alles unter http://www.w3.org/2004/OWL

  • SPARQL Query Language for RDF
    RDF is a flexible and extensible way to represent information about World Wide Web resources. It is used to represent, among other things, personal information, social networks, metadata about digital artifacts, like music and images, as well as provide a means of integration over disparate sources of information. A standardized query language for RDF data with multiple implementations offers developers and end users a way to write and to consume the results of queries across this wide range of information. Used with a common protocol, applications can access and combine information from across the web.
    SPARQL is a query language for getting information from such RDF graphs. It provides facilities to:
    • extract information in the form of URIs, blank nodes, plain and typed literals.
    • extract RDF subgraphs.
    • construct new RDF graphs based on information in the queried graphs.

Literatur: http://www.w3.org/TR/rdf-sparql-query 

Themenbereich Case Based Reasoning (betreut durch Dipl. Inform. Alexandre Hanft)  

  • Analyse bestehender Objekt-Relationaler Mapping-Frameworks
    Aufgrund der Vielzahl der aufgeführten Fragestellungen ist für eine Seminarausarbeitung die Themenwahl in Abstimmung mit dem Dozenten einzugrenzen, wodurch sie die Möglichkeit mehrerer Seminarvorträge ergibt. Denkbar wären Z.B. eine eher praktische Analyse und Evaluation bestehender ORM-Frameworks oder eine eher konzeptionell orientierte Abhandlung des Themas.Objektorientierung hat sich durchgesetzt, ebenso wie Datenbanken zur persistenten Speicherung der Daten. Jenseits von vereinheitlichten DB-Zugriffstechniken wie ODBC, JDBC, ADO, ADO.net besteht aber eine eine Lücke zwischen der OOP und der Objekt-Persistenz, da sich OO-Datenbanken nicht gegenüber den rel. DB durchsetzen konnten. Die immergleiche Implementierung von Zugriffsroutinen, welche Objekte aus rel. Datenbanken laden und darin speichern, ist arbeitsaufwändig und fehleranfällig. Verschiedene O/R Mapper Frameworks (ORM) versprechen Abhilfe, in dem sie dass Mapping zwischen Objekte und Datenbanken automatisch erzeugen. Für aktuelle Technologien wie Java, C++ oder .net sind angebotene Frame zu untersuchen und zu vergleichen. Welche Techniken werden dabei verwendet? Wie stark ist die Automatisierung fortgeschritten und wie stark muss bestehender OO-Code geändert werden? Wie unabhänig sind die Frameworks von Technologien und Datenbanken? Wie werden OO-Konzepte wie Verwerbung, Aggregation und Komposition (komplexe Datentypen) umgesetzt und wie gut ist ? Welchen Performanceverlust ist für diesen Kompfort in Kauf zu nehmen? Welche fortgeschrittenen Kriterien neben Datenbankstruktur, Lazy Loading (Hollow Objects), Dirty-Status-Verwaltung, Veränderung der Vererbungshierarchie und Transaktionen können noch als Auswahlkriterium der Persistenzframeworks herangezogen werden? Welche Abgrenzung zu Objekspeichern wie z.B. Poet oder obrelationalen bzw. objektorientierten Datenbanken lässt sich vornehmen?
Beispiele für ORM-Frameworks für Java:
  • OJB 0.8 (Apache)
  • Hibernate (Sourceforge)
  • TradeCity RexIP JDO
  • WebGain TOPLink 4.0
  • CoCo-Base
  • plexx
Beispiele für ORM-Frameworks für .net:
  • NDO
  • OPF.net
  • OPX
  • Versant Open Access
  • DADO Solutions
  • DataObjects.NET
  • OJB.NET

 

Quellen:

An Advanced Course in Database Systems- Beyond Relational Databases
Suzanne Dietrich, Susan Urban ISBN 0130428981 (Hardback) Nov 2004, 320
pages, chapter 4

http://www.javamagazin.de/itr/online_artikel/psecom,id,197,nodeid,11.html
http://www.cetus-links.org/oo_db_systems_3.html

http://www.ambysoft.com/mappingObjects.html

"Objektrelationale Persistenzlösungen" S. 118 dotnetpro 11/2004
Schwerpunktheft O/R Mapper dotnetpro 5/2005
"Persistenz in Java/J2EE und .NET" dotnetpro 3/2004

  • Building CBR Systems with the aim of Frameworks
    Among other commercial CBR tool(set)s there exist a couple of research frameworks, for instance JColibri. This should be investigated, attention should turned to the building of the of the domain model using ontologies. Some further examination could done on the building textual CBR systems with jcolibri. Finally some comparisons with related work should be done. From the introduction in the user manual of colibri: jCOLIBRI is an object-oriented framework in Java for building Case Based Reasoning (CBR) systems that is an evolution of previous work on knowledge intensive CBR. A framework is a reusable, "semi-complete" application that can be specialized to produce custom applications. jCOLIBRI is a software artifact that promotes software reuse for building CBR systems, integrating the application of well proven Software Engineering techniques with a knowledge level description that separates the problem solving method, that defines the reasoning process, from the domain model, that describes the domain knowledge. Framework instantiation is supported by a graphical interface that guides the configuration of a particular CBR system, alleviating the steep learning curve typical for these type of systems. jCOLIBRI is built around a task/method ontology, a knowledge level description that guides the framework design, determines possible extensions and supports the framework instantiation process. Tasks and methods are described in terms of a domain-independent CBR ontology (CBROnto) which is mapped into the classes of the framework.

Sources:
http://sourceforge.net/projects/jcolibri-cbr/ 
http://gaia.sip.ucm.es/grupo/projects/jcolibri/index.html
 
http://gaia.sip.ucm.es/projects/jcolibri/
 

Recio, J. A., Agudo, B. D., Martin, M. A. G., & Wiratunga, N. (2005).
Extending JCOLIBRI for Textual CBR. Paper presented at the Sixth
International Conference on Case-Based Reasoning, Chicago.
jabber.comp.rgu.ac.uk/research/publication.php
Abstract:
This paper summarizes our work in textual CBR within jCOLIBRI, and its use
over web pages. We use Information Extraction techniques to annotate web
pages to facilitate semantic retrieval over the web. Similarity matching
techniques from CBR are applied to retrieve these annotated pages.

Themenbereich Infrastruktur (betreut durch Dipl. Inform. Uwe Oppermann)

  • Versions- und Konfigurationsmanagement in Software Entwicklungsprojekten (z.B. CVS, RCS, Rational ClearCase, Visual Age Teamserver ...) 
  • Die Windows Public Key Infrastruktur und Anwendungen (IPSEC, VPN, Secure Shell) 

Themenbereich Multi Agenten Systeme (betreut durch Dipl. Inform. Jens Mänz)

  • Intelligence in MAS-Based Distributed Learning Environments
    This chapter first addresses the issue of the importance of intelligence in MAS-based DLEs. Then, it stresses that there are three main intelligent competencies in MAS-based DLEs: intelligent decision-making support, coordination and collaboration of the agents in MAS, and student modeling for personalization and adaptation in learning systems. It also describes in detail how to apply relevant AI techniques, including the introduction of AI techniques and their state-of-the-art application in the e-learning domain. Finally, future trends in the research and development of intelligence for MAS-based DLEs are discussed.
  • Knowledge Management for Agent-Based Tutoring Systems
    As the education field is becoming increasingly technology heavy, more educational systems involve line or interactive training and tutoring techniques, and lots of educational information becomes available via the intranet and World Wide Web. Managing large volumes of learning information and knowledge is one of the crucial issues for these educational systems, as appropriate knowledge management is the key to more effective and efficient learning. The chapter first discusses that an intelligent agent system could be successfully applied to the education field and then focuses on how knowledge management techniques play an important role in agent-based tutoring systems.

basiert auf: 

 

Designing Distributed Environments with Intelligent Software Agents
by Fuhua Lin and Mohamed Ally  ISBN:1591405009
Idea Group Publishing © 2004 (311 pages)

This book benefits the AI (artificial intelligence) and educational communities in their research and development, offering new and interesting research issues surrounding the development of distributed learning environments in the Semantic Web age.

Allgemeine Hinweise

Jeder Teilnehmer bearbeitet ein Thema. Zu den jeweiligen Themen wird am Tag der Vorbesprechung Literatur angegeben bzw. ausgeteilt. Jedem Thema ist ein Betreuer zugeordnet. Das Seminar wird als Blockseminar abgehalten. Nach Annahme eines Themas muss dieses auch bearbeitet werden, ansonsten wird die Veranstaltung mit "nicht bestanden" bewertet.

Seminarschein

Ein Seminarschein wird durch erfolgreiche Teilnahme erworben. Hierzu muss ein Vortrag von ca. 35 Minuten gehalten sowie eine schriftliche Ausarbeitung von 15-20 Seiten angefertigt werden. Darüber hinaus wird die Anwesenheit bei allen Vorträgen des Seminars gefordert.

Anmeldung

Interessenten tragen sich bitte in die hierfür vorgesehene Teilnehmerliste am schwarzen Brett des IIS-Bereichs, zwischen den Räumen A4 und A5 am Samelsonplatz ein. Die Anzahl der Teilnehmer ist auf ca. 10 beschränkt, ggf. wird in Abhängigkeit von Semesteranzahl und Studiengang über die Teilnahme entschieden.

Vorträge und Zeitplan

Wichtige Termine

  • Abgabe der ersten Fassung der Ausarbeitung: 15. Juni
  • Abgabe der endgültigen Ausarbeitung + erste Fassung der Vortragsfolien:  29. Juni
  • Blockseminar: 25. und 26. Juli in der Jugendherberge Goslar 
    es ist mit einem Unkostenbeitrag in Höhe von ca. 25-30 € für Übernachtung und Verpflegung zu rechnen