LS 10 Software-Technologie
Permanent URI for this collection
Browse
Recent Submissions
Item Ein Beitrag zu Normen und Standards der Geoinformatik in der archäologischen Feldforschung(2014-10-07) Printz, Stefan; Doberkat, Ernst-Erich; Müller, HeinrichItem Praktische Probleme bei der Konstruktion von Software zur automatisierten Terminierungsanalyse(2014-09-29) Schultze, Jan; Doberkat, Ernst-Erich; Padawitz, PeterDie Arbeit beschäftigt sich mit den Einsatzmöglichkeiten bereits bestehender automatisierter Verfahren zur Terminierungsanalyse für die Klasse der praktische relevanten, imperativen Programmiersprachen. Die automatisierte Terminierungsanalyse ist für Termersetzungssysteme besonders gut untersucht. Eine Anwendung der resultierenden Methoden ist für deklarative Programmiersprachen mit beachtlichem Erfolg möglich, während sich eine Anwendung auf imperative Sprachen schwieriger gestaltet. Jedoch können durch Ausnutzung der großen Ausdrucksstärke funktionaler Programmiersprachen imperative Programme durch funktionale Programme simulieren. Es wird untersucht, inwiefern die resultierenden funktionalen Programme der Terminierungsanalyse mit Termersetzungsmethoden zugänglich sind. Es werden verschiedene Probleme gezeigt, die durch Anwendung bestimmter Programmtransformationen gelöst werden können, sodass arithmetische Teilprogramme einer Terminierungsanalyse zugänglich werden. Es wird auch gezeigt, dass dieser Ansatz nicht zur Analyse von Programmen, die dynamisch Speicher allozieren genutzt werden kann. Ein weiteres Problem bei der Analyse praktisch relevanter, imperativer Sprachen aus der Praxis stellen Ein- und Ausgabeanweisungen dar. Da diese den bestehenden Verfahren unzugänglich sind, sind im Allgemeinen Transformationen notwendig, um zumindest Teilprogramme zu analysieren. Es wird daher eine formale Semantik für eine imperative Sprache mit Ein- und Ausgabeanweisung eingeführt. Auf dieser Grundlage wird ein Kriterium entwickelt, welches erlaubt, die semantische Äquivalenz einer Permutation einer Anweisungsfolge nachzuweisen.Item Managing interlingual references - a type generic approach(2011-09-21) Menge, Sebastian; Doberkat, Ernst-Erich; Jürjens, JanThis thesis presents a framework to make ubiquitous low level references between arbitrary constructs in source code given in arbitrary programming languages explicit. While the problems that arise due to these implicit interlingual references are well-known to practitioners, there is no adequate tool-based solution up to today. The reason is, that such a tool needs to be capable to analyze source code in many languages and that the choice of these languages is subject to the specific requirements of a project: The tool has to be parametric in the languages themselves. The concept of datatype generic programming, developed in the functional programming community in recent years, builds up on ideas from category theory and there are working implementations especially in the Haskell-community. This approach finally allows to write type-safe software engineering tools that can be reused for (i.e. parametrized by) many languages. After the presentation of the underlying machinery and its application to real-life software engineering, we define these implicit interlingual references as links between specific subtrees in abstract syntax trees of possibly different languages. The notion of consistency for such a pair is then the definition of a function that maps two arbitrary subterms to a Boolean value. Based on this definition, we develop a framework that allows to manage such references, i.e. we can define, check and adapt them in a type-safe way. Finally, we perform a case study that proves that our approach works for real life languages and projects. We highlight the contributions of this work in the field of tension between theory and application: A theme that often reoccurs in scientific software engineering is abstraction - we seek for solutions that are independent of application specific context. But software engineering is about engineering, thus there are real-life problems in real-life applications that have to be solved. That means we have to identify a practical problem, abstract from everything unnecessary, find a solution, and bring that solution back into practice. This is quite a long way, and especially the last step is often overseen. In our case, the practical problem is well known among practitioners. At the same time, the abstract theories of programming languages and the relations to the even more abstract realms of algebra and category theory are well known to computer scientists and mathematicians for a long time (the fixed point result of Lambek dates back to 1968). In this work, we start with the problem of inconsistencies between artifacts of a different kind. Because the underlying references are interlingual, we need a consistent formal framework to formulate the problem. We express the underlying artifacts as terms that are typed with some algebraic datatype. This is implemented using Haskell which has both algebraic datatypes and a lot of parsers and general infrastructure. To argue about references between terms of arbitrary algebraic datatypes, we need an accessible specification of the signatures themselves. Formally this specification of specifications can be expressed using category theory: The notion of a functor that specifies the structure of a datatype is central in this respect and we find the according implementation in Haskell under the term "datatype generic programming". We use this as the technical basis of the prototype. In summary, the contribution of this thesis is not only the development of a framework that solves a known problem in a quite complicated way (though we are not aware of other more promising solutions) but also an example of the complete way from a practical problem to the deep theoretical formalization and back again to a practical solution.Item Ein Ansatz zur Entwicklung von Modellierungswerkzeugen für die softwaretechnische Lehre(2007) Pleumann, Jörg; Doberkat, Ernst-Erich; Fink, GernotBeim Lehren und Lernen graphischer Modellierungssprachen wie der Unified Modeling Language (UML) ist eine Unterstützung durch entsprechende Werkzeuge sinnvoll und wünschenswert -- nicht zuletzt, weil es die Lernenden frühzeitig an einen Umgang mit Werkzeugen gewöhnt, wie er im professionellen Umfeld Standard ist. Die meisten existierenden Modellierungswerkzeuge (z.B. IBM Rational Rose oder Borland Together) richten sich jedoch ausschließlich an die Zielgruppe der professionellen Software-Entwickler und lassen einen Einsatz in der Lehre völlig außer Acht. Das Ergebnis sind ausgesprochen schwergewichtige Produkte (im Sinne von Funktionalitätsumfang, benötigtem Hauptspeicher und CPU-Leistung), deren reichhaltige Möglichkeiten zwar den Bedürfnissen eines professionellen Umfelds entgegenkommen, aber weit über das hinausgehen, was in einem Praktikum oder einer Übungsgruppe benötigt wird oder angemessen ist. Zu viele Funktionen lenken die Studierenden vom eigentlichen Lehrstoff ab und führen dazu, dass mehr Zeit in die Erlernung der Verwendung des Werkzeugs als in die eigentlich zu vermittelnde Modellierungssprache investiert wird. Kommen mehrere Modellierungssprachen -- und damit mehrere Werkzeuge -- zum Einsatz, multipliziert sich dieser Aufwand, da die einzelnen Werkzeuge einander meist nicht ähneln. Bei einer großen Anzahl von Studierenden können auch Lizenzkosten schnell zu einem Problem werden. Um diesen Schwierigkeiten zu begegnen, wurde im Rahmen der vorliegenden Arbeit eine Familie von graphischen Modellierungswerkzeugen auf der Basis eines speziellen Meta-CASE-Frameworks ausschließlich für die Lehre entwickelt. Diese Familie umfasst derzeit verschiedene Vertreter für strukturelle und dynamische Anteile der UML, Petrinetze sowie Prozessmodellierung und -begleitung auf der Basis des Unified Process. Bei der Planung und Realisierung dieser Werkzeuge wurde bewusst Wert darauf gelegt, nicht mit professionellen Produkten zu konkurrieren, sondern stattdessen leichtgewichtige Werkzeuge zu schaffen, die auf die Kernfunktionalität des Modellierens reduziert sind. Da alle Werkzeuge die gleiche technische Basis besitzen, war es möglich, eine einheitliche Benutzungsschnittstelle zu etablieren, die sich auf notwendige Elemente konzentriert und damit den Einarbeitungsaufwand minimiert. Gleichzeitig wurde didaktisch motivierte Funktionalität in die einzelnen Werkzeuge eingebracht, die in professionellen Produkten nicht zu finden ist. Diese zusätzliche Funktionalität beinhaltet zum Beispiel ein Hypertextsystem zur Integration von Lehrstoff sowie Simulations-, Analyse- und Visualisierungsmöglichkeiten, durch welche die Studierenden beim Lernen der jeweiligen Modellierungssprache unterstützt werden. Einige der Werkzeuge wurden im Rahmen der Lehre eingesetzt und evaluiert. Die Erfahrungen, die bei diesen Einsätzen gewonnen wurden, waren sehr positiv.Item Zur kategoriellen Beschreibung von Schichtenarchitekturen(2005-12-22T13:07:18Z) Lajios, Georgios; Doberkat, Ernst-Erich; Padawitz, PeterEs wird ein kategorieller Modellierungsansatz für Schichtenarchitekturen vorgestellt. Das Modell gliedert sich in ein graphbasiertes statisches Modell, das die Konfiguration der Komponenten und Konnektoren beschreibt, und ein dynamisches Modell, in dem die Berechnung von Aufrufen zur Laufzeit untersucht wird. Das Verhalten einer Komponente wird als Morphismus in einer lextensiven Kategorie beschrieben. Untersuchungen zu Terminierungsfragen und Verhaltensähnlichkeit sowie ein formaler Ansatz für Modelltransformationen schließen sich an.Item J3DL(Universität Dortmund, 2005-05-31) Blom, Sören; Doberkat, Ernst-Erich; Fronk, AlexanderItem Relationale Algebra im dreidimensionalen Software-Entwurf(Universität Dortmund, 2005-05-31) Szymanski, Oliver; Fronk, AlexanderItem Modifikation von dreidimensionalen Visualisierungen objektorientierter Software-Strukturen(Universität Dortmund, 2005-05-31) Tchoe, Jin-Ha; Doberkat, Ernst-Erich; Fronk, AlexanderItem Evaluation des Editors Dave in der informatischen Hochschullehre(Universität Dortmund, 2004-09-20) Drag, Anna; Kamphans, Marion; Metz-Göckel, Sigrid; Schröder, Ellen; Tigges, AnjaItem Abschlussbericht der PG 444 Eclipse Framework for Editing Complex Three-Dimensional Software Visualizations(Universität Dortmund, 2004-08-31) Doberkat, Ernst-Erich; Fronk, Alexander; Schröder, JensItem Derandomizing probabilistic semantics through Eilenberg-Moore algebras for the Giry monad(Universität Dortmund, 2004-08-31) Doberkat, Ernst-ErichItem Abschlussbericht des Projektes MuSoft - Multimedia in der SoftwareTechnik(Universität Dortmund, 2004-07-13) Doberkat, Ernst-Erich; Engels, Gregor; Kopka, CorinaItem Die Hofzwerge - Ein kurzes Tutorium zur objektorientierten Modellierung(Universität Dortmund, 2004-05-12) Doberkat, Ernst-ErichItem Development of a Software Production Process Model for Multimedia CAL Systems by Applying Process(Universität Dortmund, 2004-05-12) Kopka, Corina; Wellen, UrsulaItem Hierarchical refinement of probabilistic relations(Universität Dortmund, 2004-05-12) Doberkat, Ernst-ErichItem Circuit Analysis and Design using Evolutionary Algorithms(Universität Dortmund, 2004-05-12) Burwick, Christian; Goser, Karl; Thomas, MarcThis paper focuses on electronic design at circuit level. The use of evolutionary algorithms to this application is discussed and a trade off to existing approaches is investigated. The design and analyzing task at this level is described in detail. As example a 1-bit full adder design in static CMOS is inspected with regard to power consumption and delay. In algorithmic scope both, single- and multi-objective optimization are regarded here. Finally some concluding remarks are given in section 6. ircuit Optimization Electronic design at circuit-level is a numeric adjustment process to meet constraints and goals on a fixed structure. Parameter extraction and variation, simulation, and resultItem Endbericht der Projektgruppe 409 "Entwicklung von ortsbasierten Diensten für UMTS-Mobilfunkgeräte"(Universität Dortmund, 2004-05-12) Feldgun, Anna; Flohre, Tobias; Ganteföhr, Nils; Haltermann, Tobias; Heide, Lars; Khlifi, Youssef; Kleine-Nathland, Mario; Kossmann, Mika; Lambert, Christian; Lindhorst, Miriam; Littig, Lars; Nunkesser, Robin; Pieper, Daniel; Ridder, SebastianItem Endbericht der Projektgruppe 415: Konzeption und Implementierung eines digitalen und hypermedialen Automobilcockpits (HyCop)(Universität Dortmund, 2004-05-12) Borggraefe, Stefan; Brinker, Leonore; Golkov, Evgenij; Hosenberg, Rafael; Krol, Bastian; Mölle, Daniel; Niehammer, Markus; Schellbach, Ulf; Szymanski, Oliver; Wolf, Tobias; Zhang, YueItem Kurzfassungen zum 2. Workshop "Föderierte Datenbanken"(Universität Dortmund, 2004-05-12) Hasselbring, W.Item Zwischenbericht der Projektgruppe Com42Bill (PG 411)(Universität Dortmund, 2004-05-12) Albert, Timo; Amiri, Zahir; Hasanbegovic, Dino; Kamdem, Narcisse K.; Kotthoff, Christian; Müller, Dennis; Niggemeier, Matthias; Pavlenko, Andre; Pinschke, Stefan; Salemi, Alireza; Schlich, Bastian; Schmitz, Alexander