Software Engineering

Past Software Engineering Events

2017    2016    2015    2014    2013    2012    2011    2010    2009   
 
2017
  • 14.11.2017 16:00 SE Colloquium A2 2-219
     
    Henrik Hillmer:
    Analyse von Referenzmodellen - Definition, Anwendung und Qualität

    Der Begriff Referenzmodell wird in vielen Branchen bzw. wissenschaftlichen Disziplinen verwendet, wie z.B. der Wirtschaft, Wirtschaftsinformatik und Softwaretechnik. Jedoch gibt es selbst innerhalb der einzelnen Disziplinen keine einheitliche Definition des Begriffs Referenzmodell. Dies ist ein Problem welches sich diese Masterarbeit annimmt.

    In der Zwischenpräsentation werden weitere Probleme und Lösungsansätze präsentiert. Zudem wird ein Überblick darüber gegeben wie Referenzmodelle aussehen können, wie diese angewendet werden und wie eine einheitliche Definition des Begriffs aussehen kann.

  • 07.11.2017 15:00 SE Colloquium A2 2-219
     
    Carina Henkensiefken:
    Analyse der Qualitätssicherung in der SAP ERP Entwicklung bei der CEWE Stiftung & Co. KGaA

    Die Qualität von Softwareprodukten und Softwareentwicklungsprozessen ist ein wichtiger Bestandteil innerhalb der Softwareentwicklung. Die Masterarbeit befasst sich mit der Optimierung der Softwarequalität im Bereich der SAP-ERP-Entwicklung bei der CEWE Stiftung & Co. KGaA (CEWE). Hierzu wurden vier der acht Kriterien aus der ISO 25010 ausgewählt, die für die SAP-ERP-Entwicklung bei CEWE relevant sind. Es werden die Funktionalität, die Effizienz, die Wartbarkeit und die Zuverlässigkeit analysiert. Zur Verbesserung der Qualität bzgl. dieser Kriterien werden drei Maßnahmen im Rahmen der Masterarbeit umgesetzt.

    Als erstes wird die Anforderungserhebung durch die Einführung von Anforderungsformularen optimiert. Der Nutzen dieser Formulare wird mittels Interviews mit dem Entwicklerteam und den Erstellern der Anforderungen validiert. Mithilfe einer verbesserten Anforderungserhebung soll die Vollständigkeit in der Funktionalität gewährleistet werden.

    Bezüglich der Wartbarkeit ist eine Optimierung der Programmstruktur und Lesbarkeit geplant. Diese sollen durch die Einhaltung von Programmierrichtlinien erzielt werden. Um die Verbesserung der Lesbarkeit zu validieren, wird ein bestehendes Programm nach den Programmierrichtlinien überarbeitet. Die beiden Versionen werden anschließend verglichen und mit dem Entwicklerteam in einem Review diskutiert. Außerdem sollen die Programmierrichtlinien um Richtlinien zum effizienten Programmieren erweitert werden, sodass die Laufzeit der Programme sich verbessert. Zur Validierung dessen wird die Laufzeit der beiden Programmversionen miteinander verglichen.

    Als dritte Maßnahme werden Unit-Tests in der SAP-ERP-Entwicklung eingeführt. Mithilfe von Unit-Tests lässt sich die Korrektheit von Software bestätigen. Hierfür werden Programmtemplates als Kopiervorlagen erstellt.

    Die Ergebnisse der einzelnen Maßnahmen werden in der Präsentation vorgestellt. Insgesamt konnten erste Schritte zur Verbesserung der Softwarequalität erfolgreich umgesetzt werden. Dennoch sollte hier zukünftig kontinuierlich geprüft werden, welche weiteren Möglichkeiten es gibt, die Softwarequalität zu optimieren.

  • 24.10.2017 16:00 SE Colloquium A2 2-219
     
    Hendrick Flerlage:
    Automatisierung von System-Regressionstests

    In dem untersuchten Kundenprojekt der BTC AG, in dem eine Online-Plattform zur Organisation und Verwaltung von Telekommunikationsinfrastruktur entwickelt wird, ist die Qualität der ausgelieferten Software ein essentieller Faktor für dessen Akzeptanz. Dafür werden unter anderem in regelmäßigen Abständen manuelle Regressionstests auf Systemebene vor der Auslieferung ausgeführt, welche die korrekte Funktionalität der bereits implementierten Funktionen sicherstellen. Die Erstellung und Ausführung dieser manuellen Regressionstests übernehmen agile Tester. Durch den steigenden Funktionsumfang und den sich verändernden Anforderungen unter Scrum an die Software, wird immer mehr Zeit benötigt das wachsende Set an Regressionstests auszuführen. Jedoch bleibt das dafür zur Verfügung stehende Zeit- pensum unverändert. Die Ausführung der Regressionstests ist allerdings essentiell um die Qualität der Software zu gewährleisten. Zudem steigt die Komplexität durch den steigenden Funktionsumfang und die Anforderungswandel durch Stakeholder. Durch die steigende Komplexität des Systems und dessen Funktionsumfang steht die Zeit immer mehr in Konkurrenz mit der Qualität des Systems, da die Zeit nicht reicht um die manuellen Regressionstests auszuführen und Tests für aktuelle User Stories zu erstellen.

    Ziel dieser Bachelorthesis ist es deshalb, die Zeit zur Durchführung der Regressionstestset zu vermindern, wobei die Qualität der Software gleich bleiben muss. Sodass das Set an Regressionstests bestehen bleibt, allerdings in kürzerer Zeit durchgeführt werden muss. Dazu wird eine Systemumgebung geschaffen, in dem die agilen Tester selbstständig automatisierte Tests implementieren können, nachdem sie anhand von einem erarbeiteten Leitfaden geeignete Tests zur Testautomatisierung identifiziert haben. Dieser Leitfaden soll die geeignete Teststufe eines Testfalls identifizieren und den Aufwand der Implementierung und Wartungsaufwand gegenüber der zyklisch manuellen Aus- führung des Testfalls abwägen.

    Dazu wird zunächst eine Analyse erstellt welche Ursachen es bei einem vorangegangenen Versuch gab Tests zu automatisieren, welcher scheiterte. Im Anschluss wird der Leitfaden als eine Art Kosten-Nutzen Analyse von Testfällen erstellt, um sagen zu können wann es sich lohnt einen manuellen Testfall zu automatisieren und auf welcher Ebene. Danach wird eine Umgebung aufgebaut in der sich die geeigneten Regressionstests automatisieren lassen. Daraufhin werden exemplarisch einige manuelle Tests automatisiert und nach einem Sprint evaluiert.

  • 17.10.2017 16:00 SE Colloquium A2 2-219
     
    Philipp Stib:
    Analyse von Kommunikationsprotokollen für Sensorknoten

    Zum Messen von physikalischen Größen (wie Schall, Druck, Temperatur, Bewegung, etc.) werden Sensoren benötigt. Diese ermitteln die physikalischen Werte und wandeln diese in elektrische Energie um. Um die elektrische Energie wieder zurück zu wandeln, werden Aktoren oder Aktuatoren benutzt. Sie setzen die elektrische Energie wieder in eine physikalische Größe zurück. Sowohl Sensoren als auch Aktoren werden heute immer mehr Benutzt um bestimmte IST-Zustände ermitteln zu können, sei es im Auto, in Produktionsstätten, in der Hausautomation oder in der Umwelt.

    Alle Anwendungsmöglichkeiten besitzen dabei unterschiedliche Eigenschaften oder Kriterien. Einen wichtigen Kernpunkt, stellt dabei die Kommunikation. Wie sollen die Daten zwischen den Sensoren, Aktoren und der Überwachungsstelle ausgetauscht werden? Was für verschiedene Möglichkeiten des Datenaustausches oder welche effektiveren Methoden gibt es zu dem gewählten Szenario? Wie können Kriterien und Eigenschaften durch die Kommunikation bewältigt werden? Um solche Fragen zu beantworten wurde eine Protokollliste erstellt, die verschiedene Standards wie I2C oder Bluetooth beinhaltet und Antwort auf eine mögliche Kommunikation bietet. Aus dieser Liste von Protokollen kann dann für ein Szenario ein passendes Protokoll gefunden werden. Ziel ist es auf ein auftretendes Szenario einen passenden Standard anwenden zu können. In diesem Vortrag werden Grundlagen, Protokolle und Anwendungsszenarien gezeigt, die die Kommunikation von Sensoren- oder Aktuatorennetzwerke mit sich bringen.

  • 10.10.2017 16:00 SE Colloquium Bremen
     
    Muhammed Altuntas:
    Tool-Chain zur Software-Migration nach HANA

    Mit Intelligent Data Analytics (IDA), einer Eigenentwicklung der KPMG, werden Analysen im Bereich des Berechtigungsmanagements durchgeführt, um Schwachstellen und Risiken aufzudecken. Die Ergebnisse dieser Analysen werden dafür genutzt, um Kunden Maßnahmen und Verbesserungsprozesse im Berechtigungswesen vorzuschlagen. Im Rahmen des IDA-Migrationsprojekts werden die IDA-Analysen, die derzeit mit T-SQL-Prozeduren auf einer relationalen Datenbank ausgeführt werden, in eine In-Memory-Datenbank am Beispiel der SAP HANA überführt.

    Im Rahmen dieser Arbeit wird das Ziel verfolgt, ein IDA-Migrationsprozess bzw. -Vorgehensmodell zu erarbeiten und mit der Entwicklung einer Tool-Chain exemplarisch die Migration von zwei IDA-Analysen aus einem MS-SQLServer in die HANA-Datenbank zu überführen. Zur Unterstützung des IDA-Migrationsprozesses wird eine Tool-Chain entwickelt, die sowohl eine Alt-Code-Sanierung (Tool 1), eine Umwandlung von T-SQL-Code in HANA-SQL (Tool 2) und HANA-seitige Automatisierungen/Optimierungen (Tool 3) vornimmt.

    Um die Ergebnisse der Arbeit zu evaluieren, werden sowohl die exemplarisch migrierten IDA-Analysen als auch die im Rahmen dieser Arbeit entwickelte Tool-Chain betrachtet. Nach einer erfolgreich abgeschlossenen exemplarischen IDA-Migration wird im Rahmen der Evaluierung die Tool-Chain für die gesamten IDA-Analysen angewendet und bewertet.

  • 26.09.2017 16:00 SE Colloquium A02 2-219
     
    Julia Fischer:
    Einbettung von Scrum im Unternehmen

    Die Integration von agilen Verfahren der Softwareentwicklung in einen größeren Unternehmenskontext mit möglicherweise klassischen hierarchischen Strukturen führt unter Umständen zu Interessens-, Zuständigkeits- und Verantwortungskonflikten, die im Rahmen der Arbeit identifiziert, analysiert und nach Möglichkeit auch gelöst werden sollen.

  • 19.09.2017 16:00 SE Colloquium A02 2-219
     
    Behailu Getachew Wolde:
    What Microsoft Azure looks like and how to use its capability in the real scenarios

    Microsoft Azure is one of the key players of cloud providers, which shares the largest market next to Amazon Web Service (AWS). Azure has a number of built-in functionality and idea for providing its domain services via the INTERNET. In this regard, one may become wondering about knowing issues like "What functionality and ideas do Azure have"? "How to use Azure's features in the real scenarios"? The objective of this topic primarily focuses to introduce about Azure's basic domain services and, also to see partial features of Azure with a simple implementation.

  • 05.09.2017 17:40 SE Colloquium A02 2-219
     
    Jan Brunnberg:
    Mobilitätsservice für Gruppenfahrdienste

    Das NEMo-Projekt strebt die nachhaltige Erfüllung von Mobilitätsbedürfnissen im ländlichen Raum an. Die Informatik spielt dabei eine Schlüsselrolle. Sie soll dieses Ziel durch die Entwicklung einer Mobilitätsplattform unterstützen, die serviceorientierte, komponentenbasierte und modellgetriebene Techniken nutzt, um bestimmte Funktionen bereitzustellen. Diese können dann von den Softwareunterstützungen der neu geschaffenen Mobilitätsservices gemeinsam genutzt werden.

    Bei dem in dieser Arbeit zu betrachtenden Mobilitätsservice liegt das Hauptaugenmerk auf dem Transport von Personen zu Supermärkten. Dabei bieten nicht nur die Supermärkte, sondern auch Privatpersonen ihre Fahrdienste an.

    Ziel ist es eine Softwareunterstützung für diesen Mobilitätsservice zu konzipieren und prototypisch zu realisieren. Dabei soll das in der Abteilung Softwaretechnik entwickelte SENSEI-Framework (Software Evolution Service Integration) genutzt werden, um auf der Grundlage von den zuvor erhobenen Geschäftsprozessen Funktionseinheiten zu modellieren. Diese Modelle und Orchestrationen stellen dann die Grundlage für die Implementierung dar.

  • 05.09.2017 16:50 SE Colloquium A02 2-219
     
    Maximilian Pahl:
    Privater Mitfahrdienst für das Projekt NEMo

    Das Projekt NEMo ist zurzeit ein Arbeitsgebiet in der Abteilung Softwaretechnik der Universität Oldenburg. Im Rahmen dieses Projektes wird versucht, die ländliche Mobilität durch die Kombination verschiedener bestehender oder neu entwickelter Mobilitätsdienste zu verbessern. In dieser Bachelorarbeit soll ein neuer Mobilitätsdienst entworfen und als Prototyp implementiert werden. Dieser neue Mobilitätsdienst, welcher 'privater Mitfahrdienst' genannt wird, ist ein atomarer Dienst. Das heißt, er soll Menschen nicht den gesamten Weg vom Start zum Ziel befördern, sondern in Kombination mit anderen atomaren Mobilitätsdiensten genutzt werden.

    Der private Mitfahrdienst soll Nutzern die Möglichkeit geben Strecken, die sie zu fahren planen, anzugeben und so anderen Nutzern ermöglichen auf diesen Strecken mitzufahren. Der Anreiz zum Nutzen dieses Mobilitätsdienstes ist nicht Geld, sondern ein projekteigenes Bonuspunktesystem. Der Entwurf des privaten Mitfahrdienstes umfasst die Beschreibung des Mitfahrdienstes, der Geschäftsprozesse und der Interaktion des Nutzers mit der Softwareunterstützung. Der Prototyp der Softwareunterstützung wird eine repsonsive Webanwendung werden, da der Dienst wahrscheinlich meist mobil genutzt wird und somit auf Smartphones und Heimrechnern nutzbar sein muss. Im Rahmen dieses Vortrages wird der Mobilitätsdienst ausführlich beschrieben und der derzeitige Stand der Bachelorarbeit gezeigt.

  • 05.09.2017 16:00 SE Colloquium A02 2-219
     
    Kimberly Hebig:
    Mobilitätsservices - Katalog für NEMo

    Immer mehr Menschen ziehen in den ländlichen Raum, wobei sich das öffentliche Leben zunehmend in die Städte verschiebt. Die auf dem Land lebenden Menschen sind daher darauf angewiesen, entweder ihren privaten PKW oder aber die öffentlichen Verkehrsmittel zu nutzen, um ihre Arbeit oder andere Einrichtungen zu erreichen. Um die Nutzung der öffentlichen Verkehrsmittel zu erhöhen, versucht das Projekt NEMo-Nachhaltige Erfüllung von Mobilitätsbedürfnissen im ländlichen Raum - den Menschen durch eine Software-Unterstützung zu helfen, die für sie beste Verkehrsverbindung zu finden.

    Innerhalb des Projektes fehlt jedoch eine Übersicht, an der sich die zu erledigenden Softwareentwicklungsarbeiten orientieren können. In diesem Vortrag soll ein Ansatz für einen solchen Überblick über integrierbare Mobilitätsservices in Form eines Katalogs gezeigt werden. Es wird der begriffliche und systematische Ansatz durch eine Taxonomie herausgestellt und die Grundlagen für den Katalog beschrieben. Dabei werden die vier Ebenen von NEMo erklärt und dabei auch das jeweilige Vorgehen bei der Erstellung von Katalogeinträgen auf diesen Ebenen.

    Dieses Vorgehen wird an einem Beispiel verdeutlicht.

  • 06.06.2017 16:00 SE Colloquium A02 2-219
     
    Phillip Kramer:
    Erarbeitung und prototypische Realisierung eines Konzepts zur Herstellung von Traceability in der Entwicklung einer Software-Produktlinie

    Gegenstand dieser Arbeit ist aufbauend auf einer ersten Problemstellung, den IST-Zustand der Software-Produktlinie BTC | AMM der BTC zu erfassen und zu analysieren. Der Fokus liegt auf die im Softwareentwicklungsprozess erstellten Artefakte, die Beziehungen zwischen den Artefakten, deren Traceability-Informationen sowie die Export-Möglichkeiten der Traceability-Informationen der Artefakte durch die verwendeten Tools. Kern der Erfassung und Analyse des IST-Zustands ist die Erstellung eines Domänenmodells der Artefakte sowie die Aufstellung von Traceability-Szenarien. Das erstellte Domänenmodell der Artefakte bildet die Basis für die Erarbeitung und prototypischen Realisierung eines Lösungsansatzes zur Herstellung von Traceability in der Entwicklung der Software-Produktlinie BTC | AMM und insbesondere zur Durchführung von Impact-Analysen (dt. Auswirkungsanalysen) über die im Softwareentwicklungsprozess des BTC | AMM erstellten Artefakte.

    Auf Basis des analysierten IST-Zustands wird ein Lösungskonzept erarbeitet und prototypisch realisiert, um das Problem "die Durchführung von Impact-Analysen über alle Softwareartefakte hinweg ist nur erschwert möglich und zugleich manuell, aufwendig sowie fehleranfällig" zu mindern oder sogar zu beseitigen. Das Ergebnis der prototypischen Realisierung des Lösungskonzepts, ist das Vorliegen eines Tools, mit dem Traceability in der Entwicklung der Software-Produktlinie hergestellt und weiterführend die Durchführung von Impact-Analysen (dt. Auswirkungsanalysen) ermöglicht wird. Anschließend wird das Tool von den Mitarbeitern der BTC unter Verwendung eines Fragebogens validiert. Die Validierung wird mit einer Ergebnisformulierung abgeschlossen, die weiterführend als Grundlage für das Aufzeigen von Handlungsempfehlungen für die Verantwortlichen des BTC | AMM dient.

    Für die Beherrschung ihrer Software-Produktlinie BTC | AMM und die Kontrolle, insbesondere der Nachverfolgbarkeit, zwischen den in dem Softwareentwicklungsprozess erstellten Artefakten, benötigt die BTC Impact-Analysen (dt. Auswirkungsanalysen), mit deren Durchführung, schnellstmöglich und effizient Auswirkungen von Artefakt-Änderungen nachverfolgt und kontrolliert werden können. Als Mehrwert könnten u.a. Kosteneinsparungen erzielt und Aufwandsschätzungen verbessert und erleichtert werden.

  • 30.05.2017 16:00 SE Colloquium A02 2-219
     
    Christian Schönberg:
    Grundlagen von Ontologies

    Christian Schönberg stellt in seinem Vortrag die Grundlagen von Ontologies vor und vergleicht diese mit den grundlegenden (Meta-)Modellierungskonzepten.

  • 23.05.2017 16:00 SE Colloquium A02 2-219
     
    Behailu Wolde:
    Client Side Formal Approach For Testing The Cloud

    Cloud computing is a new paradigm that has capability to provide functionality (i.e., service-level agreement (SLA)) and quality of service (QoS) for clients to interact without knowing with each other in new ways via an Internet. Based on the literatures, cloud enables using resources of distributed applications based on an SLA which includes complex dimensions, massive internal variability and remotely accessible free to be reused on-demand by distributed clients . However, the quality of cloud that is promised as per the SLA becomes blurred and intractable when one would wish to verify the expected benefits and thus, there is a need to validate using a new approach based on an interface scenario at the level of server sides, i.e., components. To ensure the SLA, the intended approach requires to have a new testing requirements that enable to capture a set of formal artifacts of service specifications for testing the cloud (TTC). TTC enables to specify a service capability to ensure quality of cloud without the access to components (i.e., service implementations).

    The difficulty is, thus, how to represent an approach using formalized functions to help client side testers (CSTs) understand for covering the required SLA as well as how to adapt test procedures for CSTs to use abstract test cases (ATCs) from the created approach to test service implementations. In addition, testing is not an easy job since TTC at the client side is not as simple as testing traditional software due to the test cases which base only on an interface scenario are not sufficient to cover all necessary input values for components.

    The solution idea is to create a Client Side Formal Approach (CSFA) for TTC as a Service (T2CaaS) from which the test procedures are set for CSTs to use the ATCs for validating and measuring test coverage of components for distributed clients; the goal is to measure and validate cloud functionality and QoS based on the CSFA that is created to TTC.

    T2CaaS uses the specific scenarios of a service for quality requirements from which testing requirements (i.e., test conditions) are described. Based on the test conditions, test cases from abstract service interface are derived to create CSFA. The identified ATCs are adapted to TTCN-3 (Testing and Test Control Notation 3) code and executed on the specific service, which is a System Under Test (SUT). At last, the expected results against test results are computed based on the standard metrics that are defined to validate risks of performance,availability, security, reliability, and resiliency.

  • 02.05.2017 16:00 SE Colloquium A02 2-219
     
    Muhammed Altuntas:
    Tool-Chain zur Software-Migration nach HANA

    Mit Intelligent Data Analytics (IDA), einer Eigenentwicklung der KPMG, werden Analysen im Bereich des Berechtigungsmanagements durchgeführt, um Schwachstellen und Risiken aufzudecken. Die Ergebnisse dieser Analysen werden dafür genutzt, um Kunden Maßnahmen und Verbesserungsprozesse im Berechtigungswesen vorzuschlagen. Im Rahmen des IDA-Migrationsprojekts werden die IDA-Analysen, die derzeit mit T-SQL-Prozeduren auf einer relationalen Datenbank ausgeführt werden, in eine In-Memory-Datenbank am Beispiel der SAP HANA überführt.

    Im Rahmen dieser Arbeit wird das Ziel verfolgt, ein IDA-Migrationsprozess bzw. -Vorgehensmodell zu erarbeiten und mit der Entwicklung einer Tool-Chain beispielhaft die Migration der IDA-Analysen aus einem MS-SQLServer in die HANA-Datenbank zu überführen. Zur Unterstützung des IDA-Migrationsprozesses wird eine Tool-Chain entwickelt, die sowohl eine Alt-Code-Sanierung (Tool 1), eine Umwandlung von T-SQL-Code in HANA-SQL (Tool 2) und HANA-seitige Automatisierungen/Optimierungen (Tool 3) vornimmt.

    Um die Ergebnisse der Arbeit zu evaluieren, werden sowohl die migrierten IDA-Analysen als auch die im Rahmen dieser Arbeit entwickelte Tool-Chain bewertet. Für den Beweis einer erfolgreichen Migration, werden die Ergebnisse der IDA-Analysen auf Korrektheit geprüft. Für die Evaluierung der Tool-Chain werden Qualitätskriterien definiert, mit Hilfe dieser sowohl die Entwicklung als auch die Anwendung der Tool-Chain bewertet wird.

  • 18.04.2017 17:00 SE Colloquium A02 2-219
     
    Kevin Aland:
    Testen der Cloud - Eine strukturierte Literaturrecherche

    Cloud-Computing ist ein hochaktuelles Thema. Die Big Player der IT-Industrie IBM, Google, Microsoft, Apple und Amazon bieten cloudbasierte Dienste an. Cloud Computing kann wertvolle Beiträge leisten und ganze Branchen zum positiven verändern. Von nahezu allen führenden Analysten wird Cloud Computing als einer der Top-5 IT-Trends gesehen.

    Es wird nicht mehr diskutiert ob Cloud Computing überhaupt eine praktikable Möglichkeit des IT-Sourcing ist, sondern vielmehr, wie diese Möglichkeit sich sicher mit hohem Nutzen für Firmen einsetzen lässt. Firmen versprechen sich vom Einsatz der Cloud Kostenreduktion, Flexibilität und vollkommen neue Geschäftsmodelle. Die Bereitstellung solcher Dienste wirft allerdings auch einige Fragen auf: Wie wird eine Cloud überhaupt getestet? Wie wird ein Service, der in einer Cloud Infrastruktur ausgeführt wird, getestet? Muss er eventuell anders getestet werden als Software die an einem Desktop ausgeführt wird.

    Diese Punkte werden in Form einer strukturierten Literaturrecherche beantwortet. Zuvor wird eine umfassende Taxonomie zum Thema Cloud und Testen der Cloud erstellt, damit alle Begrifflichkeiten klar definiert sind und eine Unterscheidung vorgenommen werden kann.

  • 18.04.2017 16:00 SE Colloquium A02 2-219
     
    Janine Haase:
    Spezifikationsorientiertes Testen

    Die Masterarbeit zum Thema „Spezifikationsorientiertes Testen“ wird im Rahmen eines IT-Projekts geschrieben, welches Fahrzeugverkaufs-Software für einen Fahrzeughersteller betreut und laufend weiterentwickelt. Jede Weiterentwicklung der Software durchläuft innerhalb des Projekts einen Prozess, in dem zu Beginn in Zusammenarbeit mit dem Autohersteller eine sogenannte Fachspezifikation, eine Zusammenstellung aller Anforderungen und weiterer für die Umsetzung relevanter Aspekte, erstellt wird, auf der alle folgenden Entwicklungs- und Testaktivitäten basieren. Aufgrund individueller Auslegung der Spezifikationsvorlage, uneindeutigen Formulierungen und teilweise lückenhaften Beschreibungen werden die Arbeiten des Entwicklungs- und des Testteams erschwert und zeitintensiv, sodass die Gefahr besteht, dass entweder die Softwarequalität leidet oder längere Bearbeitungszeiten hingenommen werden müssen. Um eine bessere und zuverlässigere, das bedeutet umfassendere bzw. tiefgründigere Testfallerstellung zur Überprüfung und Verbesserung der Softwarequalität zu ermöglichen, soll innerhalb dieser Arbeit das bestehende Template für Fachspezifikationen so überarbeitet werden, dass möglichst eindeutige und konsistente Informationen für das Entwickler- und das Testteam zur Verfügung gestellt werden können. Dafür werden vier Fachspezifikationen und deren Umsetzungen analysiert und ein neues Fachspezifikations-Template erstellt. Mithilfe des neuen Templates werden für eine bereits umgesetzte Weiterentwicklung eine neue Fachspezifikation und darauf basierend entsprechende Testfälle erstellt. Der benötigte Zeitaufwand für Fachspezifizierung und Testfallerstellung soll über die vorliegenden Analysedaten abgeglichen werden. Dazu wird eine Prüfung stattfinden, ob die zur damaligen Umsetzung durch Tester (intern) und durch Kunden (extern) aufgedeckten Fehlerwirkungen durch die neuen Testfälle ggf. früher und vor allem intern zu finden gewesen wären. Damit soll das neue Template zur Fachspezifikation als Problemlösungsansatz validiert werden.

  • 11.04.2017 16:00 SE Colloquium A02 2-219
     
    Timo Schlömer:
    Modellgetriebene GUI Erstellung für serviceorientierte Anwendungen

    Im Forschungsprojekt 'NEMo' ("Nachhaltige Erfüllung von Mobilitätsbedürfnissen im ländlichen Raum") sollen die Mobilitätsbedürfnisse der auf dem Land lebenden Bevölkerung durch innovative Ideen und durch die Nutzung von IT-Infrastruktur verbessert werden. Eine modulare, serviceorientierte Softwarearchitektur bietet sich an, um in diesem, sich ständig ändernden Markt, Änderung schnell in die IT-Infrastrukur einzupflegen. Das in dieser Abteilung entwickelte 'SENSEI' ("Software Evolution Service Integration") Framework kann Services modellgetrieben orchestrieren und soll im NEMo Projekt eingesetzt werden.

    Bei der Erstellung von graphischen Benutzeroberflächen stellen sich jedoch andere Herausforderungen an Software, als für im Hintergrund agierende Services. Interaktion der Anwendungen mit dem Nutzer und zustandsbasierte Bedienelemente sind im SENSEI Ansatz bislang noch nicht berücksichtigt worden und benötigen neue Modellierungselemente.

    In der Masterarbeit "Modellgetriebene GUI Erstellung für serviceorientierte Anwendungen" soll der SENSEI Ansatz um Interaktion erweitert werden und ein Interpreter erstellt werden, der ein Modell einer graphischen Benutzeroberfläche zu einer ausführbaren (und von einem Benutzer nutzbaren) Anwendung überführen kann. Um den Nutzen dieser Erweiterung im NEMo Forschungsprojekt zu demonstrieren, wird eine Webseite durch den Interpreter erstellt, welche einen typischen Anwendungsfall im Projekt wiederspiegelt.

  • 04.04.2017 17:00 SE Colloquium A02 2-219
     
    Carina Henkensiefken:
    Analyse der Qualitätssicherung in der SAP ERP Entwicklung bei der CEWE Stiftung & Co. KGaA

    Die Qualität von Softwareprodukten und Softwareentwicklungsprozessen ist ein wichtiger Bestandteil innerhalb der Softwareentwicklung. Die Masterarbeit befasst sich mit der Optimierung der Softwarequalität im Bereich der SAP-ERP-Entwicklung bei der CEWE Stiftung & Co. KGaA (CEWE). Hierzu wurden vier der acht Kriterien aus der ISO 25010 ausgewählt, die für die SAP-ERP-Entwicklung bei CEWE relevant sind. Es werden die Funktionalität, die Effizienz, die Wartbarkeit und die Zuverlässigkeit analysiert. Zur Verbesserung der Qualität bzgl. dieser Kriterien werden drei Maßnahmen im Rahmen der Masterarbeit umgesetzt.

    Als erstes wird die Anforderungserhebung durch die Einführung von Anforderungstemplates optimiert. Der Nutzen dieser Templates wird mittels Interviews mit dem Entwicklungsteam validiert. Mithilfe einer verbesserten Anforderungserhebung soll die Vollständigkeit in der Funktionalität gewährleistet werden.

    Bezüglich der Wartbarkeit ist eine Optimierung der Programmstruktur und Lesbarkeit geplant. Diese sollen durch die Einhaltung von Programmierrichtlinien erzielt werden. Um die Verbesserung der Lesbarkeit zu validieren, wird ein bestehendes Programm nach den Programmierrichtlinien überarbeitet. Die beiden Versionen werden anschließend verglichen und mit dem Entwicklungsteam diskutiert.

    Als dritte Maßnahme werden Unit-Tests in der SAP-ERP-Entwicklung eingeführt. Mithilfe von Unit-Tests lässt sich die Korrektheit von Software bestätigen. Hierfür werden Programmiertemplates als Kopiervorlagen erstellt.

  • 14.03.2017 17:00 SE Colloquium A02 2-219
     
    Tolga Tanimaz:
    Architekturmodellierung für eine Sensor-gesteuerte Pflanzenaufzucht

    Bei der Abschlusspräsentation, mit dem Titel: „Architekturmodellierung für eine Sensor-gesteuerte Pflanzenaufzucht“, werden die erarbeiteten Ergebnisse dieser Arbeit vorgestellt. Ziel dieser Arbeit ist es, eine Software-Architekturmodellierung eines Prototypes vorzunehmen, welches sich im Bereich der Sensor-gesteuerten Pflanzenaufzucht befindet.

    Das Unternehmen erminas GmbH hat im Rahmen dieser Bachelorarbeit einem Interview zugestimmt, in der Fragen zu den Funktionsweisen und Interessen der Stakeholder beantwortet wurden. Im weiteren Verlauf dieser Präsentation, werden die Herangehensweisen und die Ergebnisse, welche auf diesem Interview aufbauen, präsentiert. Aus den erarbeiteten Informationen der Anforderungsanalyse, wurde nach dem Siemens four Views Verfahren eine Software-Architektur nach modelliert. Die View und Viewpoints wurden nach der Modellierungssprache UML 2.0 modelliert und repräsentieren zusammen die Software-Architektur der Sensor-gesteuerten Pflanzenaufzucht.

  • 14.03.2017 16:00 SE Colloquium A02 2-219
     
    Dennis Vorreiter:
    Modellierung eines Refrenz-Metamodells für Anforderungsbeschreibungen

    Die Anforderungserhebung ist unabhängig eines bestimmten Vorgehensmodells (Scrum, Extreme Programming, etc.) Grundlage der Softwareentwicklung. Die Beschreibung der dabei definierten Anforderungen erfolgt allerdings mit großer Variabilität in Formulierung und Darstellung, sodass relevante Informationen, abhängig des Vorgehensmodells, unterschiedlich verwaltet werden. Dies führt insbesondere nach Abschluss eines Projekts zu einer erschwerten Rückverfolgbarkeit zwischen Source Code oder UML-Diagrammen und einzelnen Anforderungen sowie dem Verlust von impliziten Wissen, das während des Entwicklungsprozesses gewonnen wurde.

    Die Masterarbeit befasst sich in diesem Kontext mit der Modellierung eines Referenz-Metamodells für Anforderungsbeschreibungen. Eine solche Referenz soll die grundlegende Struktur der Beschreibung von Anforderungen definieren und diese auf verschiedene Vorgehensmodelle anwenden können.

    Das Ziel dieser Arbeit ist die Modellierung und Validierung einer solchen Referenz. Hierfür wird die Art der Anforderungsbeschreibung ausgewählter Vorgehensmodelle unter einem selbstdefinierten Schema analysiert, strukturiert und mittels Metamodellen modelliert. Aus den daraus entstehenden Ergebnissen wird dann ein Referenz-Metamodell in Form eines UML-Klassendiagramms erstellt und mit Hilfe einer vorher definierten Anforderungsbeschreibung bewertet.

  • 07.03.2017 16:00 SE Colloquium A02 2-219
     
    Lars Deeken:
    Mapping von Java auf das Dagstuhl Middle Model

    Die Bachelorarbeit, mit dem Thema Mapping von Java auf das Dagstuhl Middle Model, befasst sich mit der Transformation eines Java-Programmes in eine Instanz des Dagstuhl Middle Model. Dieses Modell bietet die Möglichkeit objektorientierte Programme als Graphen darzustellen. Durch die Verallgemeinerung von objektorientierten Programmiersprachen, ist es mit diesem Modell möglich Analysen auf Programmen zu realisieren, welche in verschiedenen objektorientierte Programmiersprachen geschrieben sind. Instanzen dieses Modells bieten eine schnelle Übersicht darüber, welche Methoden oder Felder nicht verwendet werden. Durch diese Erkenntnisse können Programme optimiert und überflüssiger Code entfernt werden.

    Das Ziel dieser Bachelorarbeit ist es ein Programm zu realisieren, welches ein Java-Programm in eine Instanz eines Java-Metamodells transformiert um von da aus diese Instanz in eine Instanz des Dagstuhl Middle Model abzubilden. Abschließend soll diese Instanz wieder in das ursprüngliche Java-Programm übersetzt werden. Da das Dagstuhl Middle Model keine Methodeninhalte abbildet, muss für den Rückweg zum Java-Programm eine Möglichkeit gefunden werden diese dennoch zu übernehmen.

  • 21.02.2017 16:00 SE Colloquium A02 2-219
     
    Christian Schönberg:
    Semantic Processing of Digital Documents

    In my Phd thesis I present a novel approach to modelling and processing digital documents. In contrast to other modelling approaches, I model the structure of documents as indicated by the content, not as defined by technical attributes like the file format. Additionally, my meta-model can be applied to a wide range of different documents, not just to a small set of documents with a predefined set of features. The models include semantic data and content relationships, which can be further extended with domain knowledge. All of this makes my document models immediately suitable for a wide range of applications, including document consistency verification and knowledge extraction.

    A new separation of technical and semantic document models fuels a standardised method for obtaining semantic models. This method is effective, suitable for live processing, and easily transferable to other document types and other domains.

    A flexible technique for obtaining relevant data from the document models completes the approach. This includes the ability to obtain various verification models, suitable for different types of consistency criteria and for different validation formalisms.

    The evaluation shows the viability and effectiveness of the proposed approach. I present runtime results that are adequate for live processing, and provide and successfully apply techniques for measuring the quality of both document models and background knowledge.

  • 17.01.2017 16:00 SE Colloquium A02 2-219
     
    Phillip Kramer:
    Erarbeitung und prototypische Realisierung eines Konzepts zur Herstellung von Traceability in der Entwicklung einer Software-Produktlinie

    Cloud-Computing ist ein hochaktuelles Thema. Die Big Player der IT-Industrie IBM, Google, Microsoft, Apple und Amazon bieten cloudbasierte Dienste an. Cloud Computing kann wertvolle Beiträge leisten und ganze Branchen zum positiven verändern. Von nahezu allen führenden Analysten wird Cloud Computing als einer der Top-5 IT-Trends gesehen. Es wird nicht mehr diskutiert ob Cloud Computing überhaupt eine praktikable Möglichkeit des IT-Sourcing ist, sondern vielmehr, wie diese Möglichkeit sich sicher mit hohem Nutzen für Firmen einsetzen lässt. Firmen versprechen sich vom Einsatz der Cloud Kostenreduktion, Flexibilität und vollkommen neue Geschäftsmodelle. Die Bereitstellung solcher Dienste wirft allerdings auch einige Fragen auf: Wie wird eine Cloud überhaupt getestet? Wie wird ein Service, der in einer Cloud Infrastruktur ausgeführt wird, getestet? Muss er eventuell anders getestet werden als Software die an einem Desktop ausgeführt wird. Diese Punkte werden in Form einer strukturierten Literaturrecherche beantwortet. Zuvor wird eine umfassende Taxonomie zum Thema Cloud und Testen der Cloud erstellt, damit alle Begrifflichkeiten klar definiert sind und eine Unterscheidung vorgenommen werden kann.

  • 10.01.2017 15:00 SE Colloquium A02 2-219
     
    Robert Schadek:
    Modellgetriebene Generierung von Software fürs Web


2016
  • 22.11.2016 16:00 SE Colloquium A02 2-219
     
    Kevin Aland:
    Testen der Cloud - Eine strukturierte Literaturrecherche

    Die Masterarbeit, die in Kooperation mit der Business Technology Consulting AG (BTC) verfasst wird, beschäftigt sich mit der Erarbeitung und Realisierung eines Konzepts, mit dem eine Minderung oder Beseitigung des vorhandenen Problems der BTC - keine Möglichkeit Impact-Analysen über alle Soft-wareartefakte hinweg durchzuführen -, angestrebt wird. Das Konzept zielt auf die Herstellung von Traceability in der Entwicklung einer Software-Produktlinie der BTC ab. Die zentrale Fragestellung dieser Masterarbeit untersucht, ob und inwiefern das vorhandene Problem der BTC durch das Kon-zept gemindert oder beseitigt wird.

    Gegenstand dieser Arbeit ist die Konzeption und anschließende Realisierung eines Lösungsansatzes, durch diesen die Fähigkeit „Traceability“ im Softwareentwicklungsprozess der Software-Produktlinie der BTC hergestellt wird. Hierfür ist die Betrachtung des etablierten Softwareentwicklungsprozess unabdingbar. Es ist u.a. zu erfassen/identifizieren welche Artefakte in welchen Phasen des Softwareentwicklungsprozesses generiert werden, welche Tools hierbei eingesetzt werden (Toolmapping) und inwieweit diese bei der Herstel-lung von Traceability unterstützen können, welche Traces (Traceability-Links etc.) zwischen den Artefakten vorliegen/nicht vorliegen, wie aus den bestehenden Artefakten (Domänenmodell der Artefakte) ein Traceability-Meta-Modell abgeleitet werden kann

    Das Ziel der Masterarbeit ist, aufbauend auf einer ersten Problemstellung, den IST-Zustand der Soft-ware-Produktlinie der BTC zu erfassen und zu analysieren sowie eine detaillierte Problemanalyse durchzuführen. Auf Basis der zu analysierenden IST-Situation und vorliegenden Probleme wird ein Lösungsansatz konzeptioniert und alternative Lösungen aufgezeigt. Der konzeptionierte Lösungsan-satz wird anschließend prototypisch realisiert. Weiterführend wird die Validierung des realisierten Lösungsansatzes vorgenommen, für diese aus der Problemstellung abgeleitete Validierungsfälle her-angezogen werden. Abschließend werden die Ergebnisse formuliert und die erreichten Ergebnisse dieser Masterarbeit evaluiert.

  • 01.11.2016 16:00 SE Colloquium A02 2-219
     
    Tolga Tanimaz:
    Architekturmodellierung für eine Sensor-gesteuerte Pflanzenaufzucht

    Die Bachelorarbeit zum Thema "Architekturmodellierung für eine Sensor-gesteuerte Pflanzenaufzucht" befasst sich mit der Redokumentation eines Software-Systems. Ziel dieser Bachelorarbeit ist es, eine Architekturmodellierung eines Software-SystemsAnhand eines Praxisbeispiels, welches sich mit der Thematik der Sensor-gesteuerte Panzenaufzucht besch aftigt, vorzunehmen. In Kooperation mit einer Firma hat sich diese bereit erkl ärt, im Rahmen dieser Bachelorarbeit Auskunft über das bestehende Software-System und Vorstellungen über die weiter Entwicklung zu geben. Dazu wird in der ersten Phase der Anforderungserhebung ein Interview gef ührt, worin grundlegende Fragen zu den Funktionalen- und nicht Nicht-Funktionalen-Anforderungen, derzeitige Software-Architektur, Stakeholdern und Concerns gestellt werden. Nach der Validierung und Evaluation der Antworten werden die Anforderungen abgeleitet und aus diesen Informationen die Views und Viewpoints erstellt. Mit der Erstellung der Views und Viewpoints und der Bestimmung der Stakeholder und Concerns sind die wesentlichen Einflüsse und die Bestandteile dieser Software-Architektur vollst andig. Die erstellte Software-Architektur dient nicht nur einer Redokumentation, sondern kann bspw. als Praxisbeispiel verwendet werden.

  • 25.10.2016 16:00 SE Colloquium A02 2-219
     
    Johannes Meier:
    Metamodel Integration

    Johannes Meier präsentiert die aktuellen Ergebnisse seiner Doktorarbeit unter dem Arbeitstitel "Metamodel Integration" mit anschließender Diskussion.

  • 18.10.2016 16:00 SE Colloquium A02 2-219
     
    Christoph Küpker:
    Applying the SENSEI Service Orchestration Approach to WSO2

    SENSEI is a framework for software evolution tool integration. Toolchains can be defined on abstract service levels, avoiding interoperability issues of tools, using orchestration mechanisms and implementing toolchains by mapping used services to known implementations automatically. This work applies the SENSEI approach in a new domain, the WSO2 middleware for distributed systems. The thesis is embedded into the project NEMo which aims to enhance the mobility in rural areas. The goal is to assess if and how the SENSEI approach can be applied so that new functionalities can be achieved by reusing, integrating and orchestrating available services within the project in a fast, flexible and sustainable manner. The problem is solved by the implementation of an orchestration interpreter, capable of using web services provided through the WSO2 middleware. The approach is validated against project NEMo by simulating orchestrations for intermodal route generation with restricted means of transportation, showing that disadvantages of previous hard-coded solutions can possible eliminated using the orchestration approach. Gegenstand dieser Masterarbeit ist demgemäß die Erstellung einer Methode zur Evaluierung von Softwaretestwerkzeugen, sodass eine effektive Methode zur Auswahl von Softwaretestwerkzeugen bereit gestellt werden kann und in der Praxis je nach Testart die geeigneten Testwerkzeuge zur Umsetzung vorgeschlagen werden können. Eine ausführliche Untersuchung und Beschreibung der Testarten und eine Marktübersicht über die verfügbaren Testwerkzeuge zur Durchführung dieser Testarten bilden die Grundlage der vorliegenden Arbeit.

    Hieraus resultieren wiederum Vorschläge für eine Umsetzung in der Praxis (In der Software Engeneering Abteilung), damit eine kontinuierliche Überprüfung Ihren Software-Produkten erfolgen kann. Für die Analyse der zu untersuchten Testwerkzeuge werden Testfälle aus Q-MIG extrahiert .

  • 11.10.2016 16:00 SE Colloquium A02 2-219
     
    Janine Haase:
    Spezifikationsorientiertes Testen

    Die Masterarbeit zum Thema „Spezifikationsorientiertes Testen“ wird im Rahmen eines IT-Projekts geschrieben,welches Fahrzeugverkaufs-Software für einen Fahrzeughersteller betreut und laufend weiterentwickelt. Jede Weiterentwicklung der Software durchläuft innerhalb des Projekts einen Prozess, in dem zu Beginn in Zusammenarbeit mit dem Autohersteller eine sogenannte Fachspezifikation, eine Zusammenstellung aller Anforderungen und weiterer für die Umsetzung relevanter Aspekte, erstellt wird, auf der alle folgenden Entwicklungs- und Testaktivitäten basieren. Aufgrund individueller Auslegung der Spezifikationsvorlage, uneindeutigen Formulierungen und teilweise lückenhaften Beschreibungen werden die Arbeiten des Entwicklungs- und des Testteams erschwert und zeitintensiv, sodass die Gefahr besteht, dass entweder die Softwarequalität leidet oder längere Bearbeitungszeiten hingenommen werden müssen. Um eine bessere und zuverlässigere, das bedeutet umfassendere bzw. tiefgründigere Testfallerstellung zur Überprüfung und Verbesserung der Softwarequalität zu ermöglichen, soll innerhalb dieser Arbeit das bestehende Template für Fachspezifikationen so überarbeitet werden, dass möglichst eindeutige und konsistente Informationen für das Entwickler- und das Testteam zur Verfügung gestellt werden können. Dafür werden vier Fachspezifikationen und deren Umsetzungen analysiert und ein neues Fachspezifikations-Template erstellt. Mithilfe des neuen Templates werden für eine bereits umgesetzte Weiterentwicklung eine neue Fachspezifikation und darauf basierend entsprechende Testfälle erstellt. Der benötigte Zeitaufwand für Fachspezifizierung und Testfallerstellung soll über die vorliegenden Analysedaten abgeglichen werden. Dazu wird eine Prüfung stattfinden, ob die zur damaligen Umsetzung durch Tester (intern) und durch Kunden (extern) aufgedeckten Fehlerwirkungen durch die neuen Testfälle ggf. früher und vor allem intern zu finden gewesen wären. Damit soll das neue Template zur Fachspezifikation als Problemlösungsansatz validiert werden.

  • 15.09.2016  Workshop
     

    Software-Engineering aims at developing and evolving software systems in an economic manner, considering project specific needs and quality goals. One of these quality goals, which become more and more important, is “energy efficiency of software systems”. Improving the energy consumption of mobile devices will not only increase the uptime and battery lifespan, it will also improve the carbon footprint. Viewing energy efficiency, is not only restricted to mobile devices, it also affects e.g. embedded systems and data centers, where energy is a major factor in costs and environmental burden.

    Next to serious and ongoing efforts in hardware design, on operating system level, and by optimized code generation, software engineering techniques also contribute to optimizing energy consumption by improving software design: wasting energy can be avoided by e.g. removing energy code smells, improving data-base queries and storage methodologies, exchanging fast, but energy consuming components by slower but more energy efficient alternatives.

    The EASED workshop series on Energy Aware Software-Engineering and Development, which will be held at EnviroInfo for the 5th time, focusses on the intensive presentation and discussion of methods and technologies to optimize the energy consumption of systems by improving the used software.


  • 30.08.2016 16:00 SE Colloquium A02 2-219
     
    Aljoscha Meyer:
    Abstrakte Semantische Graphen für Javacode

    Um automatisiert mit Sourcecode arbeiten zu können, ist eine bessere Datenstruktur als bloßer Quelltext nötig. Abstrakte semantische Graphen (ASGs) sind eine solche Darstellungsform. Neben der hierarchischen Struktur des Codes stellen sie auch Zusammenhänge zwischen verschiedenen Bestandteilen des Codes dar. In dieser Abschlussarbeit wurden ein formales Metamodell für ASGs ermittelt sowie Tooling entwickelt, um ASGs für konkrete Sprachen zu implementieren. Diese Implementierungen benutzen die API des Eclipse Modeling Frameworks, sodass die resultierenden ASGs mit beliebigen EMF basierten Tools weiterverwendet werden können. Als konkrete Anwendung wurde eine vollständige Implementierung für Java entwickelt. Sie nutzt einen bestehenden Parser, um Code in ASGs und wieder zurück zu Code zu transformieren.

  • 04.07.2016 10:15 SE Colloquium A05 1-158
     
    Carl Worms:
    Managed Evolution of Large IT Systems - Practitioner Report

    Der Vortrag behandelt das Technologie-Management grosser IT-Landschaften, wie sie z.B. bei Grossbanken anzutreffen sind.

    Zentral ist hierbei die hohe Komplexität, sowohl technisch wie organisatorisch. Der Referent wird vorstellen, wie eine erfolgreiche Enterprise und IT Architecture mittel- bis langfristig die Evolution einer IT-Landschaft steuert. Dieses beinhaltet die Architektur-Governance, die organisatorische Struktur (Business Architecture, Application Architecture, Platform Architecture, etc.) und Prinzipien der sogenannten "Managed Evolution", die anhand praktischer Beispiele aus der Applikations- und die Integrationsarchitektur vorgestellt wird. Ab-schliessend werden praktische Fragestellungen zum hochaktuellen Thema "Cloud-Migration von Applikati-onen" behandelt.

    Der Kolloquiumsvortrag von Carl Worms leitet das fünfte gemeinsame Seminar für Masterstudierende der Softwaretechnik-Arbeitsgruppen der Universität Bremen (Rainer Koschke), der Universität Hamburg (Matthias Riebisch), der Technischen Universität Hamburg-Harburg (Sibylle Schupp) und der Universität Oldenburg (Andreas Winter) ein.

  • 07.06.2016 16:00 SE Colloquium A02 2-219
     
    Ruthbetha Kateule:
    Reference Architecture for Sensor Based Environmental Information System (RefSBEIS)

    Sensor based environmental information systems are in use worldwide such as road traffic control systems, air pollution detection systems and others. However, development and maintenance of these systems are difficult and time consuming. Despite their great diversity in application domains, technically these systems possess similar components that could be unified and presented in a single standardized architecture i.e reference architecture. This reference architecture will facilitate the rapid development and maintenance of concrete system architectures for sensor based environmental information systems.

    In this presentation, viewpoints of the proposed Reference Architecture for Sensor based Environmental Information Systems (RefSBEIS) will be presented.

  • 31.05.2016 16:00 SE Colloquium A02 2-219
     
    Behailu Wolde:
    Intelligent Software Testing in Cloud Computing

    Business applications are becoming complex and difficult for manufacturing and industries to provide local testing facilities for validating and evaluating the status of real-time environments. It is indeed a challenge for conventional software testing that incurs high capital cost to simulate real-world user traffic from different geographic locations.

    Luckily, cloud based approach has emerged to software testing where cloud computing are leveraged its pool of computing resources through virtualization and automation of service orchestration by significantly decreasing costs.

    With cloud computing, software is used and not owned, and operation happens on machines that are out of the user’s control. On the other hand, software testing in cloud that can have capability on analyzing behavior of the cloud application is at infant stage and not studied very well since the dynamic nature of the application (i.e., virtual machines that place the services) on the cloud are more complex, uncertain and hard to predict the anomaly of intrinsic and external properties associated with its services.

    Therefore, with methodical procedures of this study, the software testing as testing cloud services effort shall have major processes such as: reviewing design specification and functional requirements, developing user scenarios and/or UML use case, designing test cases, generating minimum test cases, optimizing the minimum test cases using metaheuristic approach, test execution, and test evaluation. As a result, this vision

    • proposes to develop an optimal testing model that will be determined heuristically the harmony of application behaviour with cloud services.
    • will consider the SOA testing approach to emulate the cloud orchestration for the optimal testing model so as to apply testing and intervention for cloud services.
    • will also include validation of the optimal testing model using case studies so as ensure their code coverage and efficiency in accordance with ISO/IEC 9126 software quality standards.

  • 24.05.2016 16:00 SE Colloquium A02 2-219
     
    Aljoscha Meyer:
    Abstrakte Semantische Graphen für Javacode

    Ein Abstrakter Semantischer Graph (ASG) ist eine hierarchisch strukturierte Repräsentation von Sourcecode. Beziehen sich unterschiedliche Teile von Sourcecode auf die selbe Entität der Programmiersprache, sind die entsprechenden Knoten im ASG miteinander verbunden. Diese Darstellung ist für viele Usecases der Softwaretechnik gut geeignet, beispielsweise für Metrikberechnung und Transformationen.

    In dieser Arbeit wird ein konkreter Ansatz entwickelt, um ASGs für Javacode zu erhalten, indem zunächst bestehende Software einen Abstrakten Syntax Baum erstellt, welcher anschließend in einen ASG transformiert wird. Der ASG wird mithilfe des Eclipse Modeling Frameworks (EMF) dargestellt, sodass beliebige general purpose tools des Frameworks schlussendlich verwendet werden können, um auf Javacode zu operieren.

  • 15.03.2016 16:00 SE Colloquium A02 2-219
     
    Max Harms:
    Änderungsbasierte Testselektion

    Das systematische Testen von umfangreicher Software führt häufig zu einer großen Anzahl von Testfällen. Diese auszuführen kann, abhängig vom Projekt, viel Zeit in Anspruch nehmen. Bei der Entwicklung kommt es jedoch häufig vor, dass kleinere Änderungen am Produktcode erfolgen, etwa um Bugfixes durchzuführen. Müssen bei diesen Änderungen alle Tests erneut ausgeführt werden, verzögert sich das Feedback an die Entwickler um die Gesamtlaufzeit der Testsuite.

    Testselektion versucht, diesen Effekt einzudämmen, indem nur diejenigen Tests erneut ausgeführt werden, die durch Änderungen betroffen sein könnten. Hierbei ist die Sicherheit wichtig, d.h. alle Fehler, die ohne Testselektion angezeigt werden, müssen auch von der reduzierten Testmenge aufgedeckt werden. Diese Arbeit erarbeitet ein solches Verfahren und implementiert es in einem Java-Tool. Das Tool wird genutzt, um den Effekt einer Testselektion auf das Beispielprojekt Q-MIG und weitere Open-Source-Projekte zu evaluieren.

  • 01.03.2016 16:00 SE Colloquium A02 2-219
     
    Carolin Huy:
    Visualisierung von Qualitätsmerkmalen in der Softwaremigration

    Grundstein für die Aufgabenstellung dieser Masterarbeit ist das Kooperationsprojekt "Entwicklung einer qualitätsgetriebenen, generischen Werkzeugkette für die Software-Migration (Q-MIG)" der Firma pro et con und der Abteilung Softwaretechnik der Universität Oldenburg. Dies befasst sich mit der Migration von Softwaresystemen und deren Qualitätserhaltung. Dabei wurden Techniken entwickelt, um die Migration automatisiert durchzuführen und die Qualität der verschiedenen Softwaresysteme zu überprüfen.

    Im Rahmen dieser Masterarbeit erfolgte eine Anforderungserhebung an ein Werkzeug zur Visualisierung von Qualitätsmerkmalen in der Softwaremigration. Zum besseren Verständnis wurden die Anwendungsfälle eines solchen Werkzeugs identifiziert und konkrete Lösungsansätze für mögliche Visualisierungen erstellt. Zudem wurde der Einsatz bereits existierender Werkzeuge diskutiert.

  • 24.02.2016 17:00 SE Colloquium A02 2-219
     
    Johannes Meier:
    Towards Metamodel Integration Using Reference Metamodels

    The complexity of modern software engineering projects increases with growing numbers of artefacts, domain specific languages, and stakeholders with their concerns. To overcome these demands, different viewpoints are used to describe different languages specifying different artefacts, specific concerns of stakeholders, and domain specific languages. Therefore, the use of different viewpoints together in one software engineering project increases and requires technical support for automatic synchronization of the used viewpoints. This paper gives an overview about use cases for viewpoint synchronization and compares their fulfillment by existing approaches. As result, this vision paper proposes a new approach for synchronization of viewpoints to overcome the presented use cases with focus on reduction in synchronization and integration effort, on reuse of integration knowledge, and on metamodel evolution.

  • 12.01.2016 16:00 SE Colloquium A02 2-219
     
    Ola Mustafa:
    Model-based migration methodology for object-oriented legacy systems to cloud environment

    The evolution of cloud computing technology with its key feature of sharing resources of infrastructure, platform, software and business, triggers the development vision of many organizations to adopt such technology because of various drivers by migrating their legacy applications. Challenges of complexity, lack of proven methods and strategies and the short term experience in such field discourage many organizations of taking the risk of migration. That evolves the research direction of investigating the methods and strategies of migrating legacy systems to cloud environment trying to provide a roadmap for businesses to follow in order to achieve such a challenging mission. Different business models, architectures, programming languages and many other factors make it impossible to have one general solution for migrating all legacy systems and there will be still legacy systems with higher risk and cost to migrate than other systems. Many considerations lead to different methods and strategies in research, each concentrate on a particular phase in the migration process. Investigating the research work leads to this proposal which suggests narrowing the focus of legacy systems scope which will guarantee a certain base of granularity and shared characteristics and as a result, a focused solution. Different processes need to be considered for different migration strategies, and different tasks will be involved accordingly. Moreover, it has been also observed that there is hardly any guidance available for migrating existing systems to cloud computing in terms of software engineering aspects regarding object-oriented legacy systems. This presentation will discuss the statement of proposing a model-based methodology for object-oriented based legacy systems to cloud environment and the motivation behind the research, related work, research design and methodology, research questions for the proposed research.

2015
  • 15.12.2015 16:00 SE Colloquium A02 2-219
     
    Johannes Meier:
    Metamodel Integration using Reference Metamodels

    In multi-perspective software development, several perspectives exist presenting different views on the developed artefacts like sourcecode, architecture descriptions, requirements, and testcases. Because some perspectives handle the same data and all the data have relationships between each other, there is a strong need for synchronization of the data between different perspectives. As example, architecture descriptions like UML component and class diagrams show the main parts of the sourcecode, which results in the need for synchronization between diagrams and sourcecode.

    To solve this problem, there exist two general approaches: Synthetic approaches create manually transformations for the synchronization of the data between different perspectives. Projectional approaches create an integrated metamodel (called SUMM) which describes the complete current domain (here software development) consisting of the viewpoints of all perspectives. The perspectives read and write data directly from and to one big model containing all data of all perspectives conforming to the SUMM.

    This thesis follows the projectional SUMM approach using integrated metamodels. The problem in the area of integrated metamodels is, that there exist no approach for creating SUMMs. Therefore, this PhD thesis aims at developing and validating a method for integrating single metamodels (CMMs) into one SUMM.

  • 10.11.2015 16:00 SE Colloquium A02 2-219
     
    Liliane Anick Tchoua Tsafack:
    Evaluierung von Software Testwerkzeuge

    Heutzutage bestimmen Softwareprodukte unseren Alltag, in dem alles automatisiert wird, wie etwa die Telefonie, der Kalender, der Einkauf, der Zahlungsverkehr, Verkehrsmittel usw. Diese zunehmende Symbiose mit Softwareprodukten macht immer höhere Investitionen in Qualität sichernde Maßnahmen notwendig, damit hoch qualitative Softwareprodukte auf dem Markt angeboten werden können und diese zudem kontinuierlich ihr Qualitätsniveau behalten.

    Eine Maßnahme, die dies möglich macht, ist der Einsatz von Softwaretestwerkzeugen. Es wird jedoch in der Praxis eine Vielzahl von Testwerkzeugen angeboten, die verschiedene Testaufgaben durchführen können, sodass eine Übersicht im Sinne einer Entscheidung über die geeigneten Werkzeuge für die jeweiligen Testaufgaben erschwert ist.

    In der Softwaretechnik-Abteilung der Carl von Ossietzky Universität Oldenburg werden aktuell mehrere Software-Produkte entwickelt , betreut und angepasst , wobei diese kontinuierlich überprüft werden müssen, sodass es notwendig ist, hierfür effiziente Lösungen zu finden. z.B.: Q-MIG (Qualitätsgetriebenen, generischen Werkzeugkette für die Software-Migration ) Q-MIG ist ein Software Produkt der Software Engeneering Abteilung und pro et con GmbH zur Untersuchung der Qualität von Software unter Migration und den Aufbau eines integrierten Toolchain um diese zu unterstützen.

    Gegenstand dieser Masterarbeit ist demgemäß die Erstellung einer Methode zur Evaluierung von Softwaretestwerkzeugen, sodass eine effektive Methode zur Auswahl von Softwaretestwerkzeugen bereit gestellt werden kann und in der Praxis je nach Testart die geeigneten Testwerkzeuge zur Umsetzung vorgeschlagen werden können. Eine ausführliche Untersuchung und Beschreibung der Testarten und eine Marktübersicht über die verfügbaren Testwerkzeuge zur Durchführung dieser Testarten bilden die Grundlage der vorliegenden Arbeit.

    Hieraus resultieren wiederum Vorschläge für eine Umsetzung in der Praxis (In der Software Engeneering Abteilung), damit eine kontinuierliche Überprüfung Ihren Software-Produkten erfolgen kann. Für die Analyse der zu untersuchten Testwerkzeuge werden Testfälle aus Q-MIG extrahiert .

  • 03.11.2015 16:00 SE Colloquium A02 2-219
     
    Jan Jelschen:
    Software Evolution Services – A Framework for the Integration and Development of Flexible and Reusable Toolchains

    Large software evolution, migration, or reengineering projects usually require a combination of different techniques to analyze, reverse engineer, transform, and visualize (legacy) software systems under evolution. As each project has different goals, toolchains supporting their processes need to be tailored individually to their specific requirements. Many tools exist, yet mostly only implement a single technique, and are usually not designed for interoperability.

    Therefore, for each project, a toolchain has to be built by selecting the techniques required, finding appropriate tools implementing them, and then integrating these tools. With little to no means of interoperability, this involves creating a lot of glue code and data transformations to “wire up” all tools in the desired ways, a tedious and error-prone task. It yields brittle and inflexible toolchains, as extending or changing the toolchain, or swapping one tool for an alternative implementation, will require to also write new glue code. Consequently, this code is also non-reusable, as it is usually hard-wired to specific interfaces of the tools glued together.

    The lack of tool interoperability is recognized by the software evolution research community as a general challenge of the field. So far, existing approaches were aimed at integrating on a low-level via exchange file formats, building a closed platform without the ability to easily incorporate existing tools, or leveraging similarities of certain sets of tools, limiting application range.

    The proposed PhD thesis puts forward theSensei-approach (Software EvolutioN Service Integration), aimed at improving software evolution tool interoperability, and largely automate toolchain integration. Based on the fact that a large body of software evolution tools exist, yet they lack sufficient interoperability means to be easily integrated into the required, tailor-made toolchain, the following two main objectives are derived:

    1. Enabling software evolution practitioners to easily build toolchains tailored to their project-specific needs, focusing on the techniques to be employed, and the processes to be supported, while being as implementation-agnostic as possible, and abstract from interoperability issues.
    2. Enabling tool developers to easily build tools with standardized, interoperable interfaces, or extend existing tools, with as little limitations to implementation technology choices as possible.

    The approach taken towards these objectives is based on viewing software evolution techniques as services, to abstract from interoperability issues. It entails

    1. surveying tools and techniques, and compiling them into acatalog of standardized software evolution services,
    2. utilizing existing, component-based technology to provide an integration framework using the catalog as a basis, and
    3. providing a means to describe software evolution processes in terms of coordinated services, and to automatically generate toolchains based on the integration framework.

    For validation, will be applied to real-world projects, e.g. for Q-MIG, a joint venture of University of Oldenburg’s software engineering group and pro et con GmbH, aimed at investigating the quality of software under migration, and building an integrated toolchain to support it. Furthermore, is thought to be applicable beyond the field of software evolution. To put this claim to the test, it is planned to apply the approach to at least one different field, e.g. toolchains supporting the development of energy-efficient applications, as well as a self-application.

  • 13.10.2015 17:00 SE Colloquium A02 2-219
     
    Ruthbetha Kateule:
    Improve Transport by Cost-Effective and easily Adaptable sensors

    This research aims at improving the utilization of the existing road infrastructure by cost-effective and easily adaptable sensors in collecting traffic information, traffic flow optimization, guidance mechanisms for traffic operators while controlling traffic flow as well as provision of up-to-date traffic information to travellers. The research will conduct thoroughly investigation on the development of the generic Wireless Sensor Networks (WSN) architecture and traffic control models considering the road networks characteristics of Dar es salaam city in Tanzania as case of study. The successful completion of this research will improve the performance of road transportation sector in developing countries hence contributing to the socioeconomic development.

    This talk will give an overview on the concepts and techniques underlying modern Software architecting

  • 13.10.2015 16:00 SE Colloquium A02 2-219
     
    Max Harms:
    Ein Verfahren zur änderungsbasierten Testselektion: Evaluation am Beispiel des Projekts Q-MIG mit einem Java-Tool

    Das systematische Testen von umfangreicher Software führt häufig zu einer großen Anzahl von Testfällen. Diese auszuführen kann, abhängig vom Projekt, viel Zeit in Anspruch nehmen. Bei der Entwicklung kommt es jedoch häufig vor, dass kleinere Änderungen am Produktcode erfolgen, etwa um Bugfixes durchzuführen. Müssen auch bei diesen alle Tests erneut ausgeführt werden, um die Korrektheit der Software zu gewährleisten, verzögert sich das Feedback an die Entwickler um die Gesamtlaufzeit der Testsuite.

    Testselektion versucht, diesen Effekt einzudämmen, indem nur diejenigen Tests erneut ausgeführt werden, die durch Änderungen betroffen sein könnten. Diese Arbeit stellt ein solches Verfahren vor und implementiert es in einem Java-Tool. Das Tool wird genutzt, um den Effekt einer Testselektion auf das Beispielprojekt Q-MIG zu evaluieren.

  • 06.10.2015 16:00 SE Colloquium A02 2-219
     
    Thomas Crone:
    Analyse der Modernisierungsstrategie bei einem mittelständischen Unternehmen

    Die Firma DM EDV und Bürosysteme GmbH ist Anbieter von Softwarelösungen für den Pflegebereich. Die Hauptprodukte sind die Abrechnungsprogramme DM APS und DM HVP für die ambulante sowie stationäre Pflege, welche über lange Jahre entwickelt, gewartet und erfolgreich eingesetzt wurden. Um zukunftsfähig zu bleiben, werden diese Produkte derzeit modernisiert. Dabei müssen bestehende Funktionalitäten in eine moderne Umgebung migriert und zur Erhöhung der Softwarequalität saniert werden. Darüber hinaus sollen auch neue Funktionen und Verbesserungen eingepflegt werden.

    In der Masterarbeit wurde eine Ist-Analyse dieses Modernisierungs-Projektes sowie des aktuellen Vorgehens durchgeführt und mit Vorgehensmodellen aus der Literatur abgeglichen. Dabei wurde aus den Erkenntnissen der Ist-Analyse sowie der Literatur ein alternatives Vorgehensmodell erarbeitet, welches die Besonderheiten der Modernisierung berücksichtigt.

  • 22.09.2015 16:00 SE Colloquium A02 2-219
     
    Jan Jelschen:
    Service-Oriented Toolchains for Software Evolution

    Software evolution projects need to be supported by integrated toolchains, yet can suffer from inadequate tool interoperability. Practitioners are forced to deal with technical integration issues, instead of focusing on their projects’ actual objectives. Lacking integration support, the resulting toolchains are rigid and inflexible, impeding project progress.

    This talk presents SENSEI, a service-oriented support framework for toolchain-building, that clearly separates software evolution needs from implementing tools and interoperability issues. It aims to improve interoperability using component-based principles, and provides model-driven code generation to partly automate the integration process. The approach has been prototypically implemented, and was applied in the context of the Q-MIG project, to build parts of an integrated software migration and quality assessment toolchain.

  • 30.06.2015 16:00 SE Colloquium A02 2-219
     
    Liliane Anick Tchoua Tsafack:
    Testwerkzeuge für Java-Systeme

    Komplexe Systeme werden heutzutage gebaut, wo Fehler, die im Voraus nicht erkannt wurden, große Schäden verursachen können. Demzufolge stellt das Testen ein wichtiges Anliegen dar und nimmt eine wichtige Position in der Softwareentwicklung ein, damit eine höhere Fehleraufdeckung in der Software erzielt werden kann. Dabei ist eine Vielzahl von Testaufgaben im System durchgefürht werden, damit alle Bereiche der Software getestet werden. Um die Gestaltung des Testprozesses vereinfachen zu können, sind Testwerkzeuge von größer Bedeutung. Testwerkzeuge sind Softwares, die den Testprozess unterstützen und die Einhaltung und Strukturierung von Testprogrammen vereinfachen.

    Diese Masterarbeit verschafft einen Überblick über die Testarten, die erforderlich sind, um alle Testaufgabenfelder abzudecken, sowie die Testwerkzeuge, die je nach Testarten geeignet sind. Es werden ausschließlich Testwerkzeuge für Java-Systeme berücksichtigt. Dabei werden einige Testwerzeuge ausgewählt und gründlich untersucht. Hierfür werden anhand von praktischen Beispielen, einige Testfälle aus der Q-MIG (Qualitätsgetriebenen, generischen Werkzeugkette für die Software-Migration), der Abteilung Softwaretechnik der Universität Oldenburg, herausgezogen und entsprechende Testprogramme implementiert, um eine Auswertung und einen Vergleich der untersuchten Testwerkzeuge zu verschaffen.

  • 23.06.2015 17:00 SE Colloquium A02 2-219
     
    Ruthbetha Kateule:
    Improve Transport by Cost-effective and easily Adaptable Sensors (Case of study: Tanzania-Dar es Salaam City)

    The urbanization promotes the growth of vehicles in urban areas around the world especially in developing countries, where there is high population growth, inadequate and poor supply of infrastructure services. The resulting traffic congestion affects many developing regions at large in terms of wastage of time, energy consumption, health and environmental problems thus became a major concern to transportation specialists and decision makers.

    The traffic congestion in urban road networks reduces throughput hence degrades the overall performance of the infrastructure, this can be resolved through appropriate traffic control measures and strategies. Many countries developed and deployed various traffic control strategies worldwide. Intelligent Transportation Systems (ITS) offer great potential over road traffic management by ensuring efficient, smooth and safe traffic flow. However most of developing countries failed to realize their potential due to many challenges in network infrastructure, land pattern usage as well as economic constraints.

    Currently, most intelligent transportation systems rely heavily on expensive sensors / sensor networks such as video image processing and inductive loops detectors, thus makes ITS deployment costs to be so high to be adopted in developing countries especially in Tanzania. In addition to that the current adaptive traffic control techniques offer limited functionalities in dense and over-saturated areas. The use of Wireless Sensor Networks (WSN) as sensing techniques will reduce the cost of overall traffic control system investment.

    This research aims at improving utilization of the existing infrastructure by employing cost- effective and easily adaptable sensors in collecting traffic information, traffic flow optimization techniques, guidance mechanisms for human traffic operators in controlling the traffic flow as well as provision of up-to-date traffic information to travellers. The research will conduct thoroughly investigation on the development of Wireless Sensor Networks (WSN) and traffic control models while considering the road networks characteristics of Dar es Salaam city in Tanzania as a case of study. The successful completion of this research will improve the performance of road transportation sector in developing countries thus contributing to socio - economic development.

  • 23.06.2015 16:00 SE Colloquium A02 2-219
     
    Carolin Huy:
    Visualisierung von Qualitätsmerkmalen bei der Softwaremigration

    Die Software-Migration beschreibt eine Möglichkeit, um Altsysteme ohne Änderung der Funktionalität in modernen Umgebungen und an neue Techniken angepasst, bereitzustellen. Dies bedeutet, dass die Einsatzfähigkeit der bestehenden Softwaresysteme erhalten wird, ohne dass eine Neuentwicklung nötig ist. Die bestehende Software-Lösung wird beispielsweise auf den neuesten Stand der Technik übertragen.

    Das Kooperationsprojekt "Entwicklung einer qualitätsgetriebenen, generischen Werkzeugkette für die Software-Migration (Q-MIG)" der Firma pro et con und der Abteilung Softwaretechnik der Universität Oldenburg befasst sich der Migration von Softwaresystemen. Dabei wird eine umfassende und individuell an konkrete Projekte anpassbare Werkzeugkette zur Durchführung dieser Migrationen entwickelt und bereitgestellt. Diese Werkzeugkette wird um einen Qualitätsleitstand, der Aussagen zur erwarteten Qualität der Migrationsergebnisse in Abhängigkeit von den eigesetzten Migrationswerkzeugen trifft, erweitert. Durch den Einsatz verschiedener Metriken werden Qualitätskennzahlen berechnet und es können Aussagen über die Qualität der migrierten Systeme im Vergleich zu der Qualität des Altsystems getroffen werden.

    In dieser Masterarbeit sollen, angelehnt an das Q-MIG Projekt, die Anforderungen an ein Werkzeug zur Visualisierung von Qualitätsmerkmalen bei der Softwaremigration erhoben und eine prototypische Entwicklung vorgenommen werden. Durch den Einsatz soll die Vergleichbarkeit der Qualitätsmerkmale der unterschiedlichen Systeme (Alt- und Neusysteme) unterstützt und in geeigneter Form grafisch dargestellt werden.

  • 08.06.2015 16:00 SE Colloquium DM EDV und Bürosysteme GmbH
     
    Thomas Crone:
    Analyse der Modernisierungsstrategie bei einem mittelständischen Unternehmen

    Die Firma DM EDV und Bürosysteme GmbH ist Anbieter von Softwarelösungen für den Pflegebereich. Die Hauptprodukte sind die Abrechnungsprogramme DM APS und DM HVP für die ambulante sowie stationäre Pflege, welche über lange Jahre entwickelt, gewartet und erfolgreich eingesetzt wurden. Um zukunftsfähig zu bleiben, werden diese Produkte derzeit modernisiert. Dabei müssen bestehende Funktionalitäten in eine moderne Umgebung migriert und zur Erhöhung der Softwarequalität saniert werden. Darüber hinaus sollen auch neue Funktionen und Verbesserungen eingepflegt werden.

    In der Masterarbeit wird eine Ist-Analyse dieses Modernisierungs-Projektes sowie des aktuellen Vorgehens durchgeführt und mit Vorgehensmodellen aus der Literatur abgeglichen. Das Ziel ist aus den Erkenntnissen der Ist-Analyse sowie der Literatur ein alternatives Vorgehensmodell zu erarbeiten, welches die Besonderheiten der Modernisierung berücksichtigt. Dabei müssen insbesondere die drei Tätigkeiten Migration, Sanierung und Weiterentwicklung organisiert werden.

  • 28.04.2015 12:00 SE Colloquium A02 2-219
     
    Prof. Dr. Ralf Reussner:
    View-Based Model-Driven Development with Vitruvius

    The talk presents the Vitruvius approach for the construction of modular metamodels. It can be used to define metamodels for view-based development, for the engineering of software or for the engineering of mechatronic devices. Specific benefits of this approach is the use of existing meta-models and an envisioned ideal support in keeping views consistent.


  • 24.03.2015 16:30 SE Colloquium Hörsaal B (A11 1-101)
     
    Projektgruppe:
    Kollaborative Modellierung

    Im Laufe der letzten 2 Semester hatten wir den Auftrag, eine Software zur kollaborativen Modellierung zu entwickeln. Diese hört auf den Namen Kotelett.

    Wir bieten die einzigartige Kombination von Modellierung, Modellverwaltung, Kollaboration und Versionierung in einem Tool, welches auf Windows, Mac und Linux verfügbar ist.

    Darüber hinaus bietet es durch Verwendung eines Metamodells die Grundlage für fortgeschrittene Techniken wie Refactorings.

    Unser Produkt haben wir auf Grundlage der Arbeit der Abteilung Softwaretechnik (Universität Oldenburg) zur Modellversionierung und -synchronisation realisiert.

    Von der Anforderungserhebung über die Planung bis zur Realisierung stellen wir euch unsere Probleme, Erfolge und gewonnenen Erfahrungen vor.

    Wer Lust hat, kann sein Notebook mitbringen und Live mit uns zusammen modellieren.

  • 24.02.2015 16:00 SE Colloquium A02 2-219
     
    Christoph Küpker:
    Software Testing Tools

    Since software systems are getting larger and larger, an assistance in software quality management and development becomes a significant topic for software designers, developers and testers. Most of the steps in the software development process can be handled by tools. The overlapping process of software testing can also be enhanced by testing tools to assist developers in their effort to produce properly tested software. These can be used to improve the quality of the software itself, development and testing process as well as the reliability of the software.

    This talk gives a broad scope of classifications and investigations of existing tools that support the software testing process in all its facets. The main objective of this talk is to give an overall survey on the current state of the art on the topic of software testing tools. These tools are classified by software testing tasks so that the appropriate tools for a specific testing task can easily be found.

  • 10.02.2015 16:00 SE Colloquium A02 2-219
     
    Thorsten Kück:
    Entwurf und Implementierung einer Software zur internetgesteuerten Durchführung einer Dehydratisierung

    Vor zehn Jahren entstand im Rahmen eines Projektes des Bundesministeriums für Bildung und Forschung (BMBF) die »Internetgesteuerte Adsorptionsanlage« (IngA). Mit ihr können Studenten chemische Versuche online durch ein Java-Applet durchführen und sich nach Abschluß die Meßergebnisse via eMail zukommen lassen. Die Versuche finden dabei auf einer physisch existierenden Anlage statt und werden nicht simuliert, so daß unter realen Bedingungen experimentiert werden kann.

    Da sich der Einsatz der IngA in der Lehre bewährt hat, möchte die Technische Chemie 2 (TC2) der Carl von Ossietzky Universität Oldenburg nun eine zweite Anlage in Betrieb nehmen, um das Angebot zu erweitern: die »Mikroreaktionstechnische internetgesteuerte Anlage« (MiA).

    Im Rahmen dieser Arbeit soll eine Steuersoftware entwickelt werden, mit der sich die MiA betreiben läßt. Die Funktionsweise der Neuentwicklung soll sich dabei an ihrem Vorgänger orientieren, jedoch aktuelle Techniken berücksichtigen. Es soll dabei vor allem ein Betrieb ermöglicht werden, der in jedem aktuellen Browser ausführbar ist, ohne daß zusätzliche Plugins – wie etwa Java oder Flash – installiert und konfiguriert werden müssen.

2014
  • 16.12.2014 16:00 SE Colloquium A02 2-219
     
    Oybek Allamov:
    Mathematical and Software support for control of information flows in Data Mining

    Nowadays, controlling information flows is important research area for various disciplines such as control of data-flow in IT networks. Control of information flows is also applicable to different real-life problems. For example, decision can be made for controlling water-flow and traffic-flow using information-flow control. Therefore, establishing effective and advanced algorithms for the problem of information flow control is a challenge, especially if the information flow is under the limited resources such as time, speed, capacity of flow paths, etc. Additionally, if these resources are called parameters, these parameters might represent static and dynamic values at different moment of time.

    This thesis aims at solving the problem of controlling information flows when the information flow has limited resources and a lot of dynamic parameters. Mainly, the thesis proposes a solution by Data Mining techniques. Proposed solution defines characteristics of information flows and optimal paths and reuses these definitions on controlling and directing information. This allows for reducing calculations of optimal paths at any moment of time i.e. collected data about optimal path considering limited resources and dynamic parameters can be reused on controlling data in overall flow. Application areas of the thesis are controlling water-flow, traffic-flow and data-flow on the web.

  • 25.11.2014 16:00 SE Colloquium A02 2-219
     
    Marat Abilov:
    Incremental Synchronization between Organizational, Requirements and Software Design Models

    The model synchronization between analysis and design artifacts in most cases is still a manual and error-prone process. With the arising of Model-Driven Architecture methodology, automatic transformation between models is mostly possible and can be defined using graph transformation language. Hence models, their corresponding meta-models and model transformation code now become first-class artifacts in software development. Existing model-driven software design derivation approaches usually lack support of bidirectional incremental synchronization between source and target models. Moreover, proposing the full automatic software design derivation, most approaches require some kind of specification on design decision either in a source model or in a transformation definition. The specification in a source model creates a problem of mixture of several concerns in one artifact. The specification in a transformation definition creates a problem of overcomplicated transformations using the languages that were not designed for modeling purpose, making these definitions very hard to comprehend and reuse.

    This talk addresses that artifacts of organizational models, requirements models and software design contain related information that is specified by different means and can be synchronized using incremental bidirectional approach. However, other information that is specific for each artifact should be specified manually in each of the corresponding models.

  • 18.11.2014 16:00 SE Colloquium A02 2-219
     
    SE Group:
    Q-MIG: Overview, Software Development Process, Tool Architecture

    Outline for the Q-MIG day's presentations:

    - Overall introduction to Q-MIG project (Jan Jelschen): The first presentation gives the brief insights to Software Migration, Software Quality, the Q-MIG project, Quality Criterias, Quality Migration Model, Measurement and Comparison.

    - Software Development Process (Johannes Meier): The talk about Software Development process of the Q-MIG project explains all the used techniques, technologies and Software Development Tools.

    - Tool Architecture (Dilshod Kuryazov): The Tool Architecture presentation explains overall architecture of the Q-MIG project and its subcomponents.

    - Measurements and Predictions (Gaurav Pandey): The presentation describes Quality Metrics and Quality Characteristic used in the Q-MIG project.

  • 04.11.2014 16:00 SE Colloquium A02 2-219
     
    Jan Jelschen:
    SENSEI: Present, Past, and Future of my Thesis

    Software evolution tools mostly implement a single technique to assist in achieving a specific objective. Overhauling, renovating, or migrating large and complex legacy software systems require the proper combination of several different techniques appropriate for each subtask. Since few tools are built for interoperability, the setup of a toolchain supporting a given software evolution process is an elaborate, time-consuming, errorprone, and redundant endeavor, which yields brittle and inflexible toolchains with little to no reusability.

    SENSEI is an approach to enable the implementation of an integration framework for software evolution tools using component-based, service-oriented, and model-driven methods, to ease toolchain creation and enable agile execution of software evolution projects.

    This is an informal presentation of the present, past, and future of my dissertation. It will comprise of a progress and status report on a prototype implementation being worked on, a review of work done and lessons learned in the past, and a discussion of how to move forward to complete the thesis.

  • 03.11.2014 16:15 SE Colloquium A01 0-005
     
    Dilshod Kuryazov:
    Delta Operations Language for Model Difference Representations

    Software models are widely used in designing software systems on different abstraction levels. Like the source code of software systems, software models evolve over time undergoing various changes. Changes are applied to software models by a team of designers using collaborative modeling tools at runtime, whereas model versioning systems are used to handle and store the histories of evolving software models. Concurrently or collaboratively modifying models results in different revisions of the same modeling artifact during its lifetime. The consistent recognition, specification and exploitation of the differences between subsequent model versions are crucial in analyzing, managing and storing the histories of model-based software systems. Analyzing the model histories is the best aid in understanding the evolutionary life cycle of models.

    For dealing with changes on models, the differences between subsequent model versions have to be properly identified and represented in difference documents usually referred to as Modeling Deltas. Since the differences are the first-class artifacts for version control, collaborative modeling and history analysis tools, representing model differences in modeling deltas is an important concern.

    A number of version control systems (e.g. Git, Subversion, etc.) exist for managing source-code of software systems. Meanwhile, software models also can be represented in exchange formats like XMI. But, versioning software models does not follow the similar concepts as code-based systems because of the rich data and compound structures of models. Therefore, it is commonly admitted that differentiating textual representation of models does not produce significant information about the model differences. To this end, this thesis addresses the problem of difference representation for software models including several application areas.

    This thesis introduces Delta Operations Language (DOL) of Generic Model Versioning System (GMoVerS) to model difference representations. DOL is a set of domain specific languages to model difference representation in terms of operations. In order to derive a specific DOL for a specific modeling language, the meta-model of a modeling language is required. Then, the resulting specific DOL is fully capable of representing all the differences between subsequent versions of the instance models in terms of operation-based DOL in modeling deltas.

    Moreover, the approach aims at supporting several DOL-services, which can reuse, manipulate and analyze the DOL-based modeling deltas. These operative services make the DOL-based modeling deltas quite handy in various application areas and enable application areas to utilize the DOL-based repositories. The application areas of the approach are Generic Model Versioning System (GMoVerS), Model History Analysis and Collaborative Modeling, which are built by specific orchestrations of the DOL services.

    Model versioning systems reduce the difference storage space and improve simplicity and reusability of the difference information by storing only deltas. In the case of collaborative modeling, exchanging the model differences is eased by exchanging only modeling deltas, which contain only the differences. Exchanging small deltas enables rapid synchronization of changes by reducing the capacity of exchange data. As long as only changed model elements are represented in modeling deltas using the simple DOL syntax, tracing the change history from modeling deltas allows smoothly detecting required history information that can be reused in history analysis and further manipulations.

  • 28.10.2014 17:00 SE Colloquium A02 2-219
     
    Benjamin Reinecke:
    Requirements Engineering und agile Softwareentwicklung in der Praxis

    Im Rahmen der Masterarbeit im Bereich Wirtschaftsinformatik wird ein Softwareprojekt eines international tätigen Logistikdienstleisters betrachtet. In diesem Projekt wird eine Lösung zur Sendungsverfolgung entwickelt, die in ein Online-Portal eingebunden ist. Die Softwareentwicklung wird in einem an Scrum angelehnten Prozess durchgeführt.

    Der anfangs geplante zeitliche Rahmen dieses Softwareprojekts konnte nicht eingehalten werden – das Projekt liegt mehr als acht Monate hinter dem Zeitplan zurück. Zunächst wurde vermutet, dass diese Entwicklung durch ein nicht optimal durchgeführtes Anforderungsmanagement ausgelöst worden sei. Mittels der gewonnenen Erkenntnisse aus der Aufnahme des Ist-Zustandes und umfangreichen Experteninterviews hat sich gezeigt, dass Verbesserungspotentiale für Softwareprojekte im kooperierenden Unternehmen nicht allein im Requirements Engineering zu finden sind.

    Aus diesem Grund ist das Ergebnis dieser Masterarbeit nicht, wie ursprünglich geplant, eine auf die Besonderheiten des Unternehmens angepasste Methode zur Aufnahme und zum Management von Anforderungen. Es werden stattdessen auf die Struktur des Unternehmens angepasste Handlungsempfehlungen gegeben, die zum einen das betrachtete Projekt voranbringen und zum anderen in weiteren Projekten helfen sollen, von Anfang an erfolgreich entwickeln zu können.

  • 28.10.2014 16:00 SE Colloquium A02 2-219
     
    Henrik Seifert:
    Komponentenbasierte Qualitätssicherung - Teststrategie im Kontext eines plattformorientierten und komponentenbasierten Entwicklungsprozesses

    Die Arbeit befasst sich mit der Erstellung einer komponentenbasierten Qualitätssicherungsstrategie. Dazu wird die Notwendigkeit für diese neue Strategie durch die Umstellung des Entwicklungsprozesses bei der BTC-ES zusammen mit den vorgestellten Grundlagen als Basis genommen um verschiedene Ideen zu den Teilaspekten einer Qualitätssicherungsstrategie zu evaluieren. Dabei wird zwischen dem Testvorgang und den Berichten über den Qualitätsstand unterschieden. Es werden zu diesen zwei Bereichen jeweils Experimente auf Basis der initialen Ideen durchgeführt und die gewonnenen Erkenntnisse dann zu einer Teilstrategie zusammengefasst. Diese Teile werden abschließend zusammengesetzt und noch einmal evaluiert. Das Ergebnis ist eine Strategie, die Vorgaben zum Erstellen, Ausführen und Auswerten von Tests macht und dabei die neue Komponentenstruktur der Software im Unternehmen der BTC-ES nutzt.

  • 21.10.2014 16:00 SE Colloquium A02 2-219
     
    Ben Haeseler:
    Vorgehensmodell für die nachhaltige Umsetzung kleinerer Softwareänderungen

    Entwickler, welche bestehende Softwareprojekte betreuen, müssen sich oft mit Anfragen zu Änderungen auseinander setzen, welche möglichst kostengünstig und zeitnah umgesetzt werden sollen. Hierbei entsteht die Problematik, dass zum Einsparen der Zeit in der Umsetzung auf ein planmäßiges Vorgehen verzichtet wird und sowohl Qualität des Codes und Tests als auch Dokumentation vernachlässigt werden. Die Folge davon sind eine erhöhte Fehlerzahl in einer als abgeschlossen eingestuften Änderung und ein erhöhter Zeitaufwand bei zukünftigen Änderungen, da auf wenig Grundlagen früherer Aufträge zurückgegriffen werden kann.

    Ziel dieser Diplomarbeit ist es, ein Modell zu entwicklen, welches diese Probleme angeht, indem es durch ein strukturiertes Vorgehen dabei unterstützt, saubere Entwicklung, Tests und Dokumentation zu gewährleisten und zugleich eine durchgehende Protokollierung des gesamten Prozesses vorzunehmen. Auf diese Weise können zum einen Probleme und deren Ursachen in einer Nachbetrachtung besser erkannt werden und Maßnahmen ergriffen werden, diese zukünftig zu vermeiden. Zum anderen wird für weitere Entwicklungen ein Dokumentations-Archiv aufgebaut, auf welches zurück gegriffen werden kann.

  • 07.10.2014 16:00 SE Colloquium A02 2-219
     
    Almuth Meier:
    Ein Composition-Finder für Service-Orchestrierungen

    Im Rahmen von Software-Evolutions-Projekten werden oft verschiedene Tools eingesetzt, um die benötigten Techniken automatisiert umsetzen zu können. Damit die Ausführung der einzelnen Tools nicht jeweils manuell angestoßen werden muss, ist es von Vorteil, die Tools so miteinander zu verknüpfen, dass alle Tools in der für das Projekt notwendigen Reihenfolge möglichst ohne Benutzerinteraktion ausgeführt werden können. Diese Verknüpfungen werden oft unter großem Zeitaufwand und selten wiederverwendbar manuell implementiert.

    Der SENSEI-Ansatz (Software Evolution Service Integration) löst diese Probleme, indem er die Spezifizierung der benötigten Techniken (Services) und das Festlegen der gewünschten Verknüpfungen der Techniken (Service-Orchestrierung) auf einer implementierungsunabhängigen Ebene ermöglicht. Die Abbildung der Service-Orchestrierung auf ausführbare Tools wird von einem Composition-Finder automatisch vorgenommen, der in dieser Bachelor-Arbeit konzipiert und implementiert wurde.

  • 30.09.2014 16:00 SE Colloquium A02 2-219
     
    Johannes Meier:
    Editoren für Service-Orchestrierungen

    Große Software-Evolutions-Aufgaben bestehen aus der Kombination mehrerer kleiner Software-Evolutions-Aufgaben, für deren Ausführung nur einzelne Werkzeuge existieren, sodass für die Automatisierung der gesamten Software-Evolutions-Aufgabe in der Praxis viele kleine Werkzeuge miteinander verschaltet werden müssen.

    Diese Werkzeugintegration muss händisch entwickelt werden und ist dadurch aufwendig und unflexibel.

    Diese Aufgabe wird durch den SENSEI-Ansatz vereinfacht, indem Software-Evolutions-Aufgaben Werkzeug-unabhängig durch Services beschrieben werden, die zu Orchestrierungen verschaltet werden und für die automatisiert eine integrierte Werkzeugkette generiert wird, indem für die verwendeten Services passende, zuvor hinterlegte Werkzeuge ausgewählt werden.

    Für die Realisierung von SENSEI sind viele Daten notwendig, die die Services, Werkzeuge und Orchestrierungen beschreiben und die als integriertes SENSEI-Metamodell definiert worden sind.

    Ziel der Masterarbeit ist es, für die Eingabe und Bearbeitung dieser Daten ein Werkzeug zu entwickeln, das für die Bearbeitung der Daten aus unterschiedlichen Sichten verschiedene Editoren anbietet, wobei alle Editoren auf derselben Datenbasis arbeiten.

  • 16.09.2014 16:00 SE Colloquium A02 2-219
     
    Dilshod Kuryazov:
    Delta Operation Langauge for Model Difference Representation

    Software models evolve over time undergoing various changes and resulting in several versions during their lifetime. Models are differentiated during the evolution process and the differences between subsequent model versions are represented in differences documents for further analysis and manipulations as history information. Software models have rich data structures which differ from the code of software systems. That is why, a representation approach for the model differences has to provide effective handling and management of difference information. Furthermore, the model differences represented in the differences documents have to be easy to access and reuse.

    This paper introduces theDelta Operations Language (DOL), a meta-model independent and operation-based approach to model difference representations. The approach represents the model differences in terms of DOL and provides several DOL Services to access and reuse the DOL-based differences for further analysis and manipulations. To explain ideas behind the approach, it is applied to UML activity diagrams as a running example.

  • 02.09.2014 16:00 SE Colloquium A02 2-219
     
    Johannes Meier:
    Certifying Energy Efficiency of Android Applications

    While smartphone and tablet functionality is increasing, battery runtime goes down. Both users and software developers are not always aware of the energy consumed by applications. Without this information, users cannot choose energy-efficient apps to prevent battery drain. Awareness of energy consumption would also entice app developers to implement more energy-efficient apps to remain competitive. This paper presents a certification process and corresponding Android tool support for comparing apps regarding energy efficiency. It is demonstrated using notepad apps.

  • 26.08.2014 16:00 SE Colloquium A02 2-219
     
    Dilshod Kuryazov:
    Representing Model Differences by Delta Operations

    Software models are subject to subsequent changes. Models evolve over time to meet changes resulting in several versions. The differences between subsequent model versions are represented in differences documents usually referred to asModeling Deltas. The model differences are used in establishing several further services and operations of version control, collaborative modeling and history analysis tools for software models. Therefore, finding an adequate difference representation approach is essential for applicability, re-usability and analysis of the model differences.

    This paper introduces theDelta Operation Language (DOL), a meta-model independent and operation-based concept to model difference representations. The proposed approach provides several operative DOL-services for utilizing the DOL-based differences. The application areas of DOL consist ofModel Versioning, Model History Analysis and Collaborative Modeling. The approach is applied to UML activity diagrams as a running example.

  • 12.08.2014 16:00 SE Colloquium Hellmann, Osnabrück
     
    Benjamin Reinecke:
    Lean Requirements Engineering in der agilen Softwareentwicklung

    Im Rahmen der Masterarbeit im Bereich Wirtschaftsinformatik wird ein Softwareprojekt eines international tätigen Logistikdienstleisters betrachtet. In diesem Projekt wird eine Lösung zur Sendungsverfolgung entwickelt, die in ein Online-Portal eingebunden ist. Die Softwareentwicklung wird in einem an Scrum angelehnten Prozess durchgeführt.

    Das Release 3 der Software sollte bereits im Juni 2013 veröffentlicht werden. Dieser anfangs geplante zeitliche Rahmen konnte nicht eingehalten werden – das Projekt liegt mehr als acht Monate hinter dem Zeitplan zurück. Aufgrund eines nicht optimalen Anforderungsmanagements verzögert sich die Umsetzung des Projekts durch eine schleichende Erweiterung des Projektumfangs. Oft nötige Iterationen zur Fehlerbehebung und ein fehlender Überblick über das Gesamtkonzept der Architektur verstärken das Problem. Einzelne Implementierungsentscheidungen sind schwierig miteinander in Verbindung zu setzen, da das Gesamtbild nur scheinbar klar ist: Es fehlt eine eindeutige Vision.

    Als Ergebnis der Arbeit wird eine Methode entwickelt, mit deren Hilfe es möglich ist, den Softwareentwicklungsprozess nachhaltig zu verbessern und mit den Besonderheiten des Unternehmens in Einklang zu bringen. Der Schwerpunkt der Methode liegt auf der Auswahl eines geeigneten Entwicklungsverfahrens und dem Umgang mit Anforderungen.

  • 29.07.2014 17:00 SE Colloquium A02 2-219
     
    Johannes Meier:
    Editoren für Service-Orchestrierungen

    Große Software-Evolutions-Aufgaben bestehen aus der Kombination mehrerer kleiner Software-Evolutions-Aufgaben, für deren Ausführung nur einzelne Werkzeuge existieren, sodass für die Automatisierung der gesamten Software-Evolutions-Aufgabe in der Praxis viele kleine Werkzeuge miteinander verschaltet werden müssen. Diese Werkzeugintegration muss händisch entwickelt werden und ist dadurch aufwendig und unflexibel. Diese Aufgabe wird durch den SENSEI-Ansatz vereinfacht, indem Software-Evolutions-Aufgaben Werkzeug-unabhängig durch Services beschrieben werden, die zu Orchestrierungen verschaltet werden und für die automatisiert eine integrierte Werkzeugkette generiert wird, indem für die verwendeten Services passende, zuvor hinterlegte Werkzeuge ausgewählt werden.

    Für die Realisierung von SENSEI sind viele Daten notwendig, die die Services, Werkzeuge und Orchestrierungen beschreiben und die als integriertes SENSEI-Metamodell definiert worden sind. Ziel der Masterarbeit ist es, für die Eingabe und Bearbeitung dieser Daten ein Werkzeug zu entwickeln, das für die Bearbeitung der Daten aus unterschiedlichen Sichten verschiedene Editoren anbietet, wobei alle Editoren auf derselben Datenbasis arbeiten.

  • 29.07.2014 16:00 SE Colloquium A02 2-219
     
    Almuth Meier:
    Ein Komposition-Finder für Service-Orchestrierungen

    Im Rahmen von Software-Evolutions-Projekten werden oft verschiedene Tools eingesetzt, um die benötigten Techniken automatisiert umsetzen zu können. Damit die Ausführung der einzelnen Tools nicht jeweils manuell angestoßen werden muss, ist es von Vorteil, die Tools so miteinander zu verknüpfen, dass alle Tools in der für das Projekt notwendigen Reihenfolge möglichst ohne Benutzerinteraktion ausgeführt werden können. Diese Verknüpfungen werden oft unter großem Zeitaufwand und selten wiederverwendbar manuell implementiert.

    Der SENSEI-Ansatz (Software Evolution Service Integration) löst diese Probleme, indem er die Spezifizierung der benötigten Techniken (Services) und das Festlegen der gewünschten Verknüpfungen der Techniken (Service-Orchestrierung) auf einer implementierungsunabhängigen Ebene ermöglicht. Die Abbildung der Service-Orchestrierung auf ausführbare Tools wird von einem Composition-Finder automatisch vorgenommen, der in dieser Bachelor-Arbeit konzipiert und implementiert wird.

    In diesem Vortrag wird die Konzpetion und der jetzige Implementierungsstand des Composition-Finders vorgestellt.

  • 08.07.2014 16:00 SE Colloquium A02 2-219
     
    Henrik Seifert:
    Komponentenbasierte Quaitätssicherung

    In der Firma BTC Embedded Systems AG soll in kürze das Build-Management umgestellt werden. In Zukunft werden (Produkt-) Komponenten und deren Abhängigkeiten sichtbar und damit auswertbar gemacht. Auch die Beziehungen zwischen einzelnen Bestandteilen werden nach außen hin kommuniziert und genutzt. Die Struktur der einzelnen Produkte wird somit maschinell verarbeitbar.

    Dadurch ist ein gezieltes Testen von denjenigen Produktbestandteilen, die von aktiven Entwicklungen betroffen sind, möglich. Der Entwickler kann also gezielt die Testergebnisse erhalten, die durch seine Änderungen beeinflusst wurden. Außerdem wird sichergestellt, das Auswirkungen auf Bestandteile, die nicht Teil des Features sind, minimiert werden und ein detaillierterer Qualitätsbericht für Komponenten ist möglich. Der Testansatz muss somit umgestellt beziehungsweise angepasst werden, um eine bessere Ansteuerung der Tests zu ermöglichen.

  • 27.05.2014 16:00 SE Colloquium A02 2-219
     
    Nikolai Bräuer:
    Automatisierte rechnergestützte Analyse von genregulatorischen Netzwerken

    Ein wichtiger Forschungsgegenstand der Genetik ist die Analyse von genregulatorischen Netzwerken. Dabei wird untersucht, wie sich Gene gegenseitig in ihrer Aktivität beeinflussen. Meist wird die Aktivität eines bestimmten Gens nicht von nur einem anderen Gen allein reguliert, sondern von mehreren Genen beeinflusst. Ebenso reguliert ein einzelnes Gen meist eine Vielzahl anderer Gene. So entstehen komplexe Netzwerke von genregulatorischen Abhängigkeiten. Es ist nötig, die Logik dieser Netzwerke zu identifizieren, um bestimmte biologische Vorgänge auf molekularer Ebene verstehen zu können. Dieses Wissen kann beispielsweise helfen, die Ursachen für Erbkrankheiten zu erkennen, Therapien zu entwickeln, sowie evolutionäre Prozesse besser zu verstehen.

    Um den Aufbau genregulatorischer Netzwerke zu identifizieren, werden experimentelle Methoden verwendet, bei denen unter hohem Zeit und Kostenaufwand die Existenz einzelner genregulatorischer Abhängigkeiten überprüft wird. Um die Anzahl dieser Experimente zu verringern, versucht man genregulatorische Abhängigkeiten rechnerisch vorherzusagen.

    Die Bioinformatik hat eine Vielzahl von Anwendungen hervorgebracht, welche bei solch einer rechnergestützten Vorhersage von Nutzen sein können. Allerdings beziehen sich diese Anwendungen meist nur auf einzelne Aspekte des gesamten Analyseprozesses. Deshalb besteht die rechnergestützte Analyse von genregulatorischen Abhängigkeiten aus mehreren Einzelschritten und ist mit vielen manuellen Tätigkeiten verbunden.

    Ziel dieser Arbeit ist es, diesen Analyseprozess effizienter zu gestalten, indem ein Softwaresystem entwickelt wird, welches ein erprobtes Verfahren zur computergestützten Vorhersage von genregulatorischen Abhängigkeiten durchgängig automatisiert und die Anzahl nötiger manueller Eingriffe minimiert. Das System soll dabei auch auf bereits bestehende Anwendungen zurückgreifen, da für einen Großteil des Analyseverfahrens bereits Anwendungen vorhanden sind.

    Im Rahmen dieses Vortrags wird die entwickelte Webanwendung ACAGRN (Automated Computational Analysis of Gene Regulatory Networks) und der derzeit unterstützte Workflow vorgestellt.

  • 11.03.2014 16:45 SE Colloquium A02 2-219
     
    Veronika Strokova:
    Cloud computing for mobile devices: Reducing energy consumption

    Being powered by the batteries that are limited in their capacity is one of the main restrictions of the mobile devices. On the other hand, further enhancement of their characteristics and mobile Internet mounting speed incite the growth of user’s demands. We want the most sophisticated applications to work rapidly and perfectly. Thus, we need a solution to improve the mobile devices’ energy consumption.

    This master’s thesis presents the approach which is able to decrease the power consumption on mobile gadgets. The core idea lies in porting the parts of the application’s functionality to the remote server in order to relieve the CPU load. Consequently, we are going to derive the benefit from cloud computing. For this purpose, the “heavy-loaded” code blocks are extracted from mobile apps and built into the server-side applications. Both mobile and “remote” versions of the apps are run, their power consumption is measured and compared. It is expected that energy spent on client-server communication is less than power needed to execute the task on a phone or tablet. Moreover, the performance change is estimated.

    The experiments are conducted on three Android applications. The paper provides a technique to move the functionality to the cloud and to organize the communication between a client and a server. It is explained when and how it is required to adjust the approach to overcome the challenges that may occur. In addition, the restrictions and recommendations are denoted and performance changes are outlined. The applications are tested against various data volumes, Internet connection speed and use different ways to transfer data. Energy consumption for each case is measured and the results are presented.

  • 11.03.2014 16:00 SE Colloquium A02 2-219
     
    Andrei Saksanov:
    Method to Derive Energy Profiles for Android Platform

    To improve quality of mobile applications on Android platform in sense of energy-efficiency, the programmers need appropriate tools. One of the method to estimate energy consumption of mobile applications is Energy Profiling (for example, using reference implementation - Android Power Profiles). This method allows to estimate energy consumption online, i.e. without using any external devices, while using reference data obtained via prior using of offline measurements tools.

    The first-class entity of this method is Energy Profile of target device that contains information about distinct energy consumption of each component. There are at least two reasons why it is may be needed to derive Energy Profiles for specific Android device. First is inappropriate quality of built-in Android Power Profile for most of the devices presented on market. The significant improvement may be achieved even using reference power model developed for Android Power Profiles while using updated (i.e. derived for concrete target device) Power Profile. The second reason is using non-reference power models. Of course many engineers may consider using of specific power models that are suitable for Energy Profiling of very specific applications. In this case, the will need to have a method to obtain Energy Profile for this private power model.

    This thesis describes the method of deriving various Energy Profiles for Android mobile devices. The following points are considered in this thesis: choosing appropriate hardware and architecture of software needed to automate the process of deriving Energy Profiles for Android mobile devices. The method was evaluated using test Android device and satisfactory improvement of estimation of energy consumption using reference power model (Android Power Profiles) was observed.

  • 04.03.2014 16:45 SE Colloquium A02 2-219
     
    Ruthbetha Kateule:
    Enhancing Road Traffic Control using Mobile Phones Sensor Networks

    Considering the problem of traffic congestion in developing countries, Wireless Sensor Networks (WSNs) have been widely used in road traffic control systems especially in collecting real time traffic data. Prior works in traffic control systems employ dedicated road and vehicle sensors as the main sensors in Wireless Sensor Networks (WSNs), however these sensors are highly susceptible to environmental factors mainly, infrastructure conditions and environmental climatic conditions such as rain, snow, high wind speeds and also expensive due to the difficulties of outdoor deployment and maintenance. There is a need of employing other kind of sensors in traffic control solutions which are more robust or can work efficiently regardless the existence of such environmental factors.

    This talk explores the current approaches used in controlling road traffic, their limitations and introduces an alternative approach in tackling the problem concerned.

  • 04.03.2014 16:00 SE Colloquium A02 2-219
     
    Marie-Christin Ostendorp:
    ELVIZ - A Query-Based Approach to Model Visualization

    Visualization is an important technique for understanding and exploring complex models. To be useful, visualizations have to be specifically tailored towards the visualization task and the analyzed model. Many standard charts or graph-based visualizations exist, but need to be mapped to the concepts of the model under study. Existing model visualization tools often have predetermined visualization kinds and content, impeding reuse of standard visualizations for various purposes, or lacking the ability to flexibly map source model concepts to different visualization elements. This paper presents ELVIZ (”Every Language Visualization”), an approach to visualization, generic regarding both the source model, and the kind and content of the visualization. ELVIZ applies model-driven engineering techniques both to transform arbitrary source models into the desired visualization models, and to generate said model transformations from a query-based mapping of source model concepts to visualization concepts. This cleanly decouples source and visualization meta-models, allowing to reuse and combine standard visualizations for various source models. The ELVIZ approach is applied to scenarios from software visualization in software evolution and measuring energy consumption of mobile applications, using different kinds of visualizations.

  • 18.02.2014 16:00 SE Colloquium A02 2-219
     
    Jan Jelschen:
    SENSEI: Software Evolution Service Integration - A Work-in-Progress Report

    Large-scale software evolution projects to modernize, migrate, or reengineer legacy software systems depend on project-specific tool support, yet existing tools mostly only provide a single functionality, and do not provide means for interoperability. SENSEI is an approach to enable flexible integration of software evolution services, using model-driven techniques to automatically generate an integrated toolchain from a high-level, service-oriented process description. This talk presents a work-in-progress report on a vertical prototype currently being implemented, and aims to discuss encountered obstacles, design decisions, and implementation issues.

  • 11.02.2014 16:00 SE Colloquium A02 2-219
     
    Dilshod Kuryazov:
    GMoVerS: Generic Model Versioning System (Prototype demonstration)

    Modifying software model artefacts results in having various versions of the same model which differ from each other. Differences between subsequent versions of a model are mostly stored in difference documents usually called Modeling Delta and these modeling deltas serve as fundamental source on setting up several subcomponents of a version control system. Even there are several model versioning approaches with graph or model-based representation techniques, they are usually depend on specific modeling languages or tools, or they do not consider whole chain of subcomponents.

    This talk firstly gives brief insights to GMoVerS: Generic Model Versioning System, which is independent of modeling languages and tools i.e. meta-model generic and tool independent. One main objective of the approach is to propose a new concept to difference representation and reuse in further manipulations. Differences between models are represented in an operation-based way i.e. artefact modifications such as element creation, deletion and change from version to version are considered. Then, these operations are implemented by model transformation approaches which eventually is an executable set of transformation rules. Secondly, the talk indends mostly to demonstrate prototype of the approach illustrating application of GMoVerS including its subcomponents and operations.

  • 28.01.2014 16:00 SE Colloquium A02 2-219
     
    Jan Jelschen:
    SENSEI: Software Evolution Service Integration

    Software evolution tools mostly implement a single technique to assist in achieving a specific objective. Overhauling, renovating, or migrating large and complex legacy software systems require the proper combination of several different techniques appropriate for each subtask. Since few tools are built for interoperability, the setup of a toolchain supporting a given software evolution process is an elaborate, time-consuming, error-prone, and redundant endeavor, which yields brittle and inflexible toolchains with little to no reusability.

    This talk presents Sensei, an approach to enable the implementation of an integration framework for software evolution tools using component-based, service-oriented, and model-driven methods, to ease toolchain creation and enable agile execution of software evolution projects. It will be evaluated by implementing and using it to build the toolchains supporting two software evolution projects, and having practitioners assess its usefulness.

  • 21.01.2014 16:15 SE Colloquium A02 2-219
     
    Ammar Memari:
    A Model for Adaptive Applications on the Semantic Web

    Modern applications need to process and be aware of much more than its direct input. Indirect input includes information about the application user, the surrounding context, and the available resources as examples. User-sensitive applications deserve special attention in today's information industry due to massive amounts of information made available hourly for individuals. Filtering and recommendation of pieces of information are therefore “common practices“ rather than “additional features“. Context-aware applications are growing rapidly in the environment of ubiquitous and mobile computing. More an more applications are able to sense and adapt to screen size, connection speed, battery status, and possible input methods of the device on the one hand, and to time of day, current weather, and traffic conditions on the other. Resource-critical conditions are affecting a growing number of applications not only on mobile devices but also within data centers. Energy, bandwidth, memory, and storage restrictions apply to applications that provide services. Sensitivity of the application itself to availability of these resources is a welcomed and encouraged feature.

    Adaptive Hypermedia, Adaptive Computing, Context-aware applications, User-oriented applications, Recommendation Systems, Collaborative Filtering applications, Personalized Information Retrieval, and many other similar techniques have tried to tackle the above-mentioned problems. Even though they have a lot in common, they still live on separate islands. Each of them could have had benefits from advances made in the others, had a common ground existed. This common ground, and in order for it to guarantee a healthy collaboration, needs to clearly set common terms and concepts, and then use them to define the different categories and classify applications onto them. A formal version of this process would require a common metamodel representing the terms, a reference model representing their possible interactions, and transformations of the two which allow the models to mutate to represent existing and emerging systems. Moreover, the common ground should provide interoperability on the data level. This calls for a metadata technology that can guarantee a data representation understandable by the different applications. Ontologies promise to deliver this feature, and they, together with the rest of the Semantic Web stack of technologies have proven useful for such tasks.

    In order to fulfill these requirements, this work sheds light on adaptive applications on the Semantic Web following a design science research methodology. It provides a rough-sets-theory-based definition for adaptive applications and other neighboring categories, in addition to a framework composed of a UML metamodel, a reference model, and their transformations. The models are designed in accordance with best practices extracted from existing models, and guided by relevance to problems of existing systems running on the ground. Design patterns for approaching some problems are defined as parts of the reference model. Quality of the resulting artifacts is assured by prototyping, where the models are implemented and evaluated in two distinct prototypes. The first prototype serves as a proof-of-concept for parts of the models, and the second poses as a life-size implementation and case study. The result is a framework for developing adaptive applications that utilize Semantic Web technologies. The framework regards the business environment and produces viable applications which account for its risks and opportunities. It provides solutions for aligning the adaptive functionality with the corporate information system and organizational infrastructure.

  • 14.01.2014 16:00 SE Colloquium A02 2-219
     
    Gaurav Pandey:
    Q-MIG: Toolchain for Quality-driven Software Migration

    Legacy systems need to be migrated to new environments and technologies in order to evolve them with the changing advancements and requirements. The new migrated systems should have the same functionality as the legacy system and the quality should not be compromised. It becomes very important to access and compare the quality of the system before and after migration. Moreover, it is also useful to predict the quality of the migrated software. The project Q-MIG: Building a Quality-Driven, Generic Tool-Chain for Software Migration aims at creating a comprehensive toolchain that helps in evaluating software quality and prediction of the quality of a target system.

  • 07.01.2014 17:00 SE Colloquium A02 2-219
     
    Veronika Strokova:
    Cloud computing for mobile devices: Reducing energy consumption

    The problem of high power consumption is relevant to modern mobile devices. Improvement of characteristics and capacities and mobile Internet mounting speed incite the growth of user demands. At the same time we are unable to increase the battery capacity. The applications with rich functionality contain “heavy-loaded“ blocks of code that take most of the energy consumed by the app. One approach to deal with them is to find this code, extract it and move to the cloud. In such a way, when a user runs an application a part of it is executed on a remote server, proving the occurrence of Internet connection. It is expected, that the energy needed for data transmission from device to a server and receiving back a result can be less than the energy consumed for executing the same functionality at a device.

  • 07.01.2014 16:00 SE Colloquium A02 2-219
     
    Andrei Saksonov:
    Method to derive Energy Profiles for Android

    Nowadays, smartphones and other mobile devices with mobile operating systems consume a lot of energy. Users are forced to charge their phones at least once a day. To improve user experience on mobile devices, developers try to optimize energy consumption of their applications. However, usually it is done not in an appropriate manner and existing applications suffer from the energy consumption bugs. Quotation from article by Philippe Michelon: “According to a study done by P. Vekris: “55% of 328 applications using wakelocks do not follow our policies for no-sleep bugs” [2012]. Some major applications have been released with No-Sleep bugs". In order to improve application battery consumption appropriate tools are needed. This thesis focuses on improving existing methods of Energy Profiling for mobile applications.


  • 17.12.2013 17:00 SE Colloquium A02 2-219
     
    Ruthbetha Kateule:
    Improve transport by Generic Multi-Agent based Sensoring

    Vehicular traffic congestion is a essential challenge worldwide, especially in most of developing countries such as Tanzania, Kenya, Uganda and Nigeria. However the existing methods for traffic management, surveillance and control are not adequately efficient in terms of performance, cost, maintenance and support.

    This talk explains the current road traffic situation in developing countries of the world, mainly Tanzania taking Dar es Salaam region as a case study, the impact of traffic congestions, alternative traffic management solutions and proposed solution on multi-agents based sensoring.

2013
  • 17.12.2013 16:00 SE Colloquium A02 2-219
     
    Thomas Crone:
    Software-Evolutions-Services zur Berechnung und Visualisierung von Metriken

    Bei größeren Softwareprojekten besteht das Problem, dass man nur noch schwer den Überblick über den bestehenden Quellcode hat. Um schnell einen Überblick zu bekommen gibt es Softwaremetriken, mit denen sich Eigenschaften des Quellcodes bestimmen und als Zahl ausdrücken lassen. Damit ist es z.B. möglich die Komplexität einer Klasse zu bestimmen und mit der anderer Klassen zu vergleichen, um Code zu finden, der überarbeitet werden sollte.

    Im Rahmen der Arbeit wurde ein Metrik-Berechnungsservice entwickelt, welches - anders als bestehende Lösungen - seine Funktionalität als Service mithilfe von SCA zur Verfügung stellt und damit flexibel wiederverwendbar ist. Dieses kann verschiedene Metriken berechnen und das Ergebnis auch grafisch unter anderem durch Balkendiagramme darstellen. Dazu mussten bestehende Tools z.B. zur Visualisierung der Ergebnisse in Form von Diagrammen in die Service-Umgebung integriert werden. Ein weiteres wichtiges Kriterium war dabei die Erweiterbarkeit der Lösung, sodass ohne großen Aufwand neue Metriken und auch Visualisierungsarten hinzugefügt werden können.

  • 11.12.2013 13:00 SE Colloquium BTC ES
     
    Benjamin Justice:
    Deriving Natural Language Specification Templates from requirement patterns

    ISO 26262 prescribes the usage of formal methods for the development of safety-critical systems. A very effective concept is the formalization of requirement specifications written in natural language. The BTC EmbeddedSpecifier assists in this formalization process, whereby it requires intervention by the user. This thesis introduces a grammar and meta-model based approach for the formalization of natural language specifications. The approach, which is tailored towards the concept of the BTC EmbeddedSpecifier, translates the natural language specification into a semi-formal intermediate state. While the approach limits the spectrum of processable natural language specifications with its grammar, it is easily adaptable and extendable.

  • 10.12.2013 17:00 SE Colloquium A02 2-219
     
    Dilshod Kuryazov:
    GMoVerS: Generic Model Versioning System (API demonstration)

    Software models evolve over time, capturing modifications, improvements and extensions made by users. Modifying model artefacts results in having various versions of the same model which differ from each other. Differences between subsequent versions of a model are mostly stored in difference documents usually called Modeling Delta and these modeling deltas serve as fundamental source on setting up several services and operations within a version management system. Even there are several model versioning approaches with graph or model-based representation techniques, they are usually depend on specific modeling languages or tools, or they do not consider whole chain of versioning operations.

    This talk explains a novel means to versioning software models, which is independent of modeling languages and tools i.e. meta-model generic and tool independent. One main objective of the approach named Generic Model Versioning System (GMoVerS) is to propose a new concept to difference representation and take advantage of it in further manipulations. Differences between models are represented in an operation-based way i.e. artefact modifications such as element creation, deletion and change from version to version are considered. Then, these operations are implemented by model transformation approaches which eventually is an executable set of transformation rules. Hence, implementation is also independent from transformation approaches that can be configured to several transformation approaches based on the users’ desires. Moreover, the talk addresses to express implementation of the approach and illustrates a running application of GMoVerS including its subcomponents and operations.

  • 10.12.2013 16:00 SE Colloquium A02 2-219
     
    Sergej Tihinov:
    Servicebasierte Refactorings

    Softwareentwicklung mit einer Intergrierte Entwicklungsumgebung bietet viele Vorteile gegenüber einem Texteditor ohne Hilfsmittel. Ein Compiler, ein Linker und ein Debugger sind bereits in die IDE integriert und erleichtern somit die Fehlersuche. Tippfehler werden durch die Autovervollständigung wesentlich reduziert. Außerdem werden Schlüsselwörter vorgeschlagen und durch farbliche Markierung im Quelltext hervorgehoben.

    Eines der wichtigsten Features ist das Refactoring. Es ermöglicht eine effiziente Veränderung der Codestruktur, wodurch der Quelltext beispielsweise zu Gunsten der Lesbarkeit, der Performanz oder der Erweiterbarkeit optimiert werden kann. Neu entwickelte IDE können nicht auf Tools von bereits existierenden IDE zugreifen, da diese in sich geschlossen und nicht modular sind. Somit müssen bereits etablierte Tools wiederholt neu geschrieben werden. Da dies sehr zeit- und kostenintensiv ist, soll eine Alternative entwickelt werden. Diese soll den Einbau erleichtern und die Wiederverwendung der Refactoring Komponenten ermöglichen.

    Im Rahmen der Arbeit soll ein modulares Refactoring-Tool entwickelt werden. Für die Realisierung wird die Service Component Architecture verwendet. Johannes Meier zeigte bereits in seiner Bachelorarbeit mit dem Titel “Eine Fallstudie zur Interoperabilität von Software-Evolutions-Werkzeugen in SCA”, dass SCA eine leichte Anbindung bietet und sich damit auch umfassendere Projekte realisieren lassen. Durch den modularen Aufbau und die festgeschriebenen Schnittstellen lassen sich die einzelnen Komponenten leicht ersetzen und gut wiederverwenden. Die Erstellung einer für das Refactoring geeigneten Architektur und die Erprobung dieser an einem Prototypen bilden den Schwerpunkt dieser Arbeit. Die Architektur muss einfach erweiterbar sein, damit weitere Refactorings ohne großen Aufwand hinzugefügt werden können. Intern soll sie aus mehreren kleineren Komponenten bestehen. Diese sollen möglichst wenig Redundanz aufweisen, um leicht wiederverwendbar zu sein. Desweiteren wird eine Fallunterscheidung zwischen der automatischen Erkennung von problematischen Stellen im Code und der Benutzeninteraktion stattfinden, um sich der richtigen Balance und der daraus resultierenden Benutzerfreundlichekeit anzunähern. Darüber hinaus soll die Refactoring Komponente anhand mehrerer praktischer Beispiele veranschaulicht werden. Daran wird gezeigt, dass die gewählte Architektur sowohl für die Realisierung von kleinen als auch große Refactorings geeignet ist und dass die Art der Interaktion eine zweckmäßige Balance aufweist.

  • 12.11.2013 16:00 SE Colloquium A02 2-219
     
    Jan Jelschen:
    A Description Model for Software Evolution Services

    Software evolution encompasses a wide variety of activities to analyze, reverse engineer, transform, and visualize software systems, requiring properly integrated tool support. Many tools are available, however, most implement only a single technique, and offer little to no interoperability. Towards a service-oriented integration approach, this talk presents a service description model, developed along two case studies, as a basis for cataloging and standardizing activities and techniques as services. As proof-of-concept, a prototype has been implemented, realizing one of the case studies.

  • 05.11.2013 16:15 SE Colloquium A2-2-219
     
    Nikolai Bräuer:
    Automatisierte rechnergestützte Analyse von genregulatorischen Netzwerken

    Ein wichtiger Forschungsgegenstand der Genetik ist die Analyse von genregulatorischen Netzwerken. Dabei wird untersucht, wie sich Gene gegenseitig in ihrer Aktivität beeinflussen. Meist wird ein bestimmtes Gen nicht von nur einem anderen Gen allein reguliert, sondern von mehreren Genen beeinflusst. Ebenso reguliert ein einzelnes Gen meist eine Vielzahl anderer Gene. So entstehen komplexe Netzwerke von genregulatorischen Abhängigkeiten. Es ist nötig den Aufbau dieser Netzwerke zu identifizieren, um bestimmte biologische Vorgänge auf molekularer Ebene verstehen zu können. Dieses Wissen kann beispielsweise helfen, die Ursachen für Erbkrankheiten zu erkennen, Therapien zu entwickeln, sowie evolutionäre Prozesse besser zu verstehen.

    Um den Aufbau genregulatorischer Netzwerke zu identifizieren, werden experimentelle Methoden verwendet, bei denen unter hohem Zeit– und Kostenaufwand die Existenz einzelner genregulatorischer Abhängigkeiten überprüft wird. Um die Anzahl dieser Experimente zu verringern, versucht man genregulatorische Abhängigkeiten rechnerisch vorherzusagen.

    Die Bioinformatik hat eine Vielzahl von Anwendungen hervorgebracht, welche bei solch einer rechnergestützten Vorhersage von Nutzen sein können. Allerdings beziehen sich diese Anwendungen meist nur auf einzelne Aspekte des gesamten Analyseprozesses. Deshalb besteht die rechnergestützte Analyse von genregulatorischen Abhängigkeiten aus mehreren Einzelschritten und ist mit vielen manuellen Tätigkeiten verbunden.

    Ziel dieser Arbeit, ist es diesen Analyseprozesses effizienter zu gestalten, indem ein Softwaresystem entwickelt wird, welches ein erprobtes Verfahren zur computergestützten Vorhersage von genregulatorischen Abhängigkeiten durchgängig automatisiert und die Anzahl nötiger manueller Eingriffe minimiert. Das System soll dabei auch auf bereits bestehende Anwendungen zurückgreifen, da für einen Großteil des Analyseverfahrens bereits Anwendungen vorhanden sind.

  • 29.10.2013 16:15 SE Colloquium A2-2-219
     
    Marion Gottschalk:
    Energy Refactorings

    Nowadays, energy-efficiency is an important topic for information and communication technology on various levels, such as in mobile devices, computers, servers, and data centers. Currently, 1 \% of the German energy consumption is produced by mobile devices, such as smartphones and tablets. Due to the raising sales volume of these devices, it can be anticipated that the energy consumption, and hence, their percentage share of the complete energy consumption in Germany also raises. A reason for the increasing sales volume is the improvement of the mobile device's functionality on hardware and software level. Both levels have a great influence on the energy consumption. Meanwhile, researches on both levels exist to optimize their energy use.

    In this master's thesis, the software level, or to be more exact, the applications level on mobile devices is considered. The application level on the operating system Android is open for each vendor and user. This means, that vendors and users can decide which applications are installed. However, these applications are programmed by many different vendors and programmer, and no interest or guidelines for energy-efficient programming exist. Hence, some applications are energy-inefficient and reduce the battery duration of mobile devices. The source code of these applications can be optimized, to get more energy-efficient applications. Therefor, an Energy Refactoring Catalog is created to define energy-inefficient code parts and their transformation to efficient code. This enables a semi-automatic process to reduce the energy consumption for individual Android applications.

  • 22.10.2013 14:00 SE Colloquium CEWE Color
     
    Sieglinde Hahn:
    Analyse der Softwareentwicklungsprozesse der Betrieblichen IT bei einem mittelständischen Unternehmen

    Das Unternehmen CEWE Stiftung & Co. KGaA ist der europäische Technologie- und Marktführer im Fotofinishing. Zu den Produkten gehören u.a. das CEWE-Fotobuch und Fotogeschenkartikel mit hoher Qualität. Für die Unterstützung der Geschäftsprozesse existieren drei verschiedene IT Bereiche mit unterschiedlichen Schwerpunkten. Diese Bereiche sind Betriebliche IT, Produktions IT und Online IT. Zur Erhaltung und Optimierung der Softwarequalität innerhalb der Bereiche, hilft Qualitätsmanagement. Der Erhalt der Softwarequalität stellt Unternehmen somit vor die Herausforderung die Softwarequalität auf Dauer konstant zu erhalten.

    Die Masterarbeit hat sich mit auf die Erhebung der Prozessqualität der Abteilung der Betrieblichen IT fokussiert, um mögliches Optimierungspotenzial zu identifizieren. Das Ziel war das Aufdecken von Handlungsalternativen zur Verbesserung der Softwareentwicklung. Um dieses Ziel zu erreichen wurden Softwareprozesse der Betrieblichen IT sowie der Online IT und Produktions IT erhoben und in einer Ist-Analyse zusammengefasst. Darüber hinaus fand eine Literaturanalyse statt, um die Handlungsalternativen anhand der Standardliteratur ableiten zu können. Die Handlungsalternativen sollen dazu dienen die Softwareprodukte langlebig und wartbar zu machen.

  • 08.10.2013 16:00 SE Colloquium A2-2-219
     
    Sergej Tihonov:
    Entwicklung eines modularen Refactoring-Tools in SCA

    Softwareentwicklung mit einer Intergrierte Entwicklungsumgebung bietet viele Vorteile gegenüber einem Texteditor ohne Hilfsmittel. Ein Compiler, ein Linker und ein Debugger sind bereits in die IDE integriert und erleichtern somit die Fehlersuche. Tippfehler werden durch die Autovervollständigung wesentlich reduziert. Außerdem werden Schlüsselwörter vorgeschlagen und durch farbliche Markierung im Quelltext hervorgehoben. Eines der wichtigsten Features ist das Refactoring. Es ermöglicht eine effiziente Veränderung der Codestruktur, wodurch der Quelltext beispielsweise zu Gunsten der Lesbarkeit, der Performanz oder der Erweiterbarkeit optimiert werden kann. Neu entwickelte IDE können nicht auf Tools von bereits existierenden IDE zugreifen, da diese in sich geschlossen und nicht modular sind. Somit müssen bereits etablierte Tools wiederholt neu geschrieben werden. Da dies sehr zeit- und kostenintensiv ist, soll eine Alternative entwickelt werden. Diese soll den Einbau erleichtern und die Wiederverwendung der Refactoring Komponenten ermöglichen.

    Im Rahmen der Arbeit soll ein modulares Refactoring-Tool entwickelt werden. Für die Realisierung wird die Service Component Architecture verwendet. Johannes Meier zeigte bereits in seiner Bachelorarbeit mit dem Titel “Eine Fallstudie zur Interoperabilität von Software-Evolutions-Werkzeugen in SCA”, dass SCA eine leichte Anbindung bietet und sich damit auch umfassendere Projekte realisieren lassen. Durch den modularen Aufbau und die festgeschriebenen Schnittstellen lassen sich die einzelnen Komponenten leicht ersetzen und gut wiederverwenden. Die Erstellung einer für das Refactoring geeigneten Architektur und die Erprobung dieser an einem Prototypen bilden den Schwerpunkt dieser Arbeit. Die Architektur muss einfach erweiterbar sein, damit weitere Refactorings ohne großen Aufwand hinzugefügt werden können. Intern soll sie aus mehreren kleineren Komponenten bestehen. Diese sollen möglichst wenig Redundanz aufweisen, um leicht wiederverwendbar zu sein. Desweiteren wird eine Fallunterscheidung zwischen der automatischen Erkennung von problematischen Stellen im Code und der Benutzeninteraktion stattfinden, um sich der richtigen Balance und der daraus resultierenden Benutzerfreundlichekeit anzunähern. Darüber hinaus soll die Refactoring Komponente anhand mehrerer praktischer Beispiele veranschaulicht werden. Daran wird gezeigt, dass die gewählte Architektur sowohl für die Realisierung von kleinen als auch großen Refactorings geeignet ist und dass die Art der Interaktion eine zweckmäßige Balance aufweist.

  • 27.09.2013 13:00  ED Colloquium / SE Colloquium BEI DER BTC-ES (R49)
     
    Frederik Berg:
    Effizientere Reportgenerierung durch Traceability

    Die BTC Embedded Systems AG entwickelt unter anderem Werkzeuge, die das Testen von Matlab Simulink/TargetLink-Modellen und daraus generiertem Code als Ergebnisse einer modellgetriebenen Entwicklung automatisieren. Hierbei werden für den Nutzer dieser Werkzeuge HTML-Reports erstellt, die Auskunft über die Güte der entwickelten Artefakte und deren Testbarkeit geben. Ein solches Werkzeug ist der EmbeddedTester mit seinem Plugin ModelBlockTest. Die Berechnung der für den Report notwendigen Werte und ihre Darstellung als HTML-Dokument werden bei jeder Änderung des Quellmodells (einem Datenmodell, das aus einem SL/TL-Modell generiert wurde) vollständig neu angestoßen. Dies kann bei steigender Komplexität des Quellmodells sehr lange dauern, auch wenn die Änderung nur minimal ist.

    Ziel der Bachelorarbeit soll es sein, bei Änderungen im Datenmodell nur diejenigen Elemente des Reports neu zu erstellen, die sich auch tatsächlich ändern. Dafür ist es notwendig, Traceability (also eine Verfolgbarkeit) zwischen den Elementen des Datenmodells und denen des Reports herzustellen: Wenn man weiß, auf welche Elemente des Reports ein Element des Datenmodells alles einen Einfluss hat, kann man gezielt nur diese Report-Elemente aktualisieren. Zunächst soll ein Konzept für die Etablierung einer solchen Traceability und einer gezielten Reportaktualisierung erarbeitet und seine technische Umsetzbarkeit überprüft werden. In einem zweiten Schritt soll dieses Konzept dann beispielhaft auf das Plugin ModelBlockTest angewendet werden.

  • 17.09.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Julian Döring:
    Designing and Developing an Android Application for a Mobile Computing Course

    Im Rahmen des Projekts DASIK soll ein neuer, einwöchiger Intensivkurs zum Thema Mobile Computing geschaffen werden. Darin sollen Teilnehmer lernen, Apps für Mobiltelefon- und Tablet-Plattformen wie Android zu entwickeln. Im Kurs sollen die speziellen Herausforderungen bei Entwurf, Umsetzung und Qualitätssicherung behandelt, und in einem kursbegleitenden Praktikum veranschaulicht und vertieft werden. Da im gesetzten Zeitrahmen keine vollständige, umfangreiche Mobil-App entwickelt werden kann, aber dennoch möglichst alle Lernziele durch praktische Anteile untermauert werden sollen, soll für den Kurs eine Referenz-Applikation zur Verfügung gestellt werden, die Teilnehmern ein Rahmenwerk vorgibt, und erlaubt, einzelne Komponenten schrittweise im Praktikum hinzuzufügen. Ziel dieser Arbeit ist es, basierend auf den Lerneinheiten desDASIK-Kurses Mobile Computing, eine Android-Applikation zu entwickeln, die als Basis für das kursbegleitende Praktikum dienen kann. Dazu muss sie zum Einen ein Rahmenwerk und gewisse Inhalte vorgeben, und zum Anderen über eine Reihe von Komponenten verfügen, die von Kursteilnehmern erstellt und in die App eingefügt werden können. Referenzimplementierungen dieser Komponenten dienen als Musterlösung und gegebenenfalls als Rückgriff, um trotzdem eine vollständige Anwendung zu erhalten, falls eine einzelne Komponente im Rahmen des Kurses einmal nicht fertiggestellt werden konnte. Neben der Konzeption und Implementierung der App, soll diese auch in Form von Übungsunterlagen zum Nachprogrammieren der Komponenten dokumentiert werden.

  • 09.07.2013 17:00  ED Colloquium / SE Colloquium A2-2-219
     
    Benjamin Justice:
    Deriving Natural Language Specification Templates From Requirement Patterns

    Development of safety critical systems, such as cars, must comply to industry standards such as the ISO 26262. The company BTC Embedded Systems has recently released the BTC EmbeddedSpecifier, which is a software that assists in developing such systems. The main focus of the BTC EmbeddedSpecifier lies within the formalization of natural language specification. With the BTC EmbeddedSpecifier the user can achieve formal notation by means of a semiformal intermediate step. For this intermediate step each natural language specification requirement must be mapped to a particular requirement pattern. These requirement patterns' main components are Büchi automata. This semiformal notation must be linked to an explicit architecture in order to become formal, i.e., unambiguous. While the BTC EmbeddedSpecifier aims to abstract the formalization process completely, the BTC EmbeddedSpecifier in its current version requires a lot of user interaction to achieve formal notation. One task currently requiring knowledge of formal methods is the mapping of the natural language specification to a pattern, as the user must identify which patterns the natural language specification complies to by hand.

    This thesis aims to provide a method of deriving natural language specification templates analogical to the requirements specification templates. An implementation will be given in form of a Java Form prototype. This prototype will help identify an appropriate pattern by displaying the natural language specification template for each pattern. The user can select the template which suits his requirement best and enter his natural language specification into the template. As the requirement is compliant to the template, is it implicitly compliant to the pattern and its variables such as time units, input and output signals can automatically be mapped to the pattern to attain a semiformal notation. Further reseach could use these templates to automatically detect which patterns the natural language specification can comply to in order to reach a higher amount of automization when formalizing requirements with the BTC EmbeddedSpecifier.

  • 09.07.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Dilshod Kuryazov:
    A survey on transformation-based representation of model differences

    Model version management systems should consist of several services in order to provide versioning software models. Representation of differences between subsequent versions of a software model is the central ingredient of any model versioning system. Differences, obtained from difference calculation process, have to be represented in an appropriate way so that it can be used for patching, subsequent analysis of model histories or by some other services. Finding generic techniques to representation of model differences is an actual challenge of current version management approaches.

    Recently, a number of research papers have been actively discussing several approaches to representation of differences. One of these approaches is transformation-based representation of model differences. This talk, firstly, emphasizes insights to transformation-based approaches. Mainly, core ideas behind some of the research papers will be clarified which are results of reviewing and assessment through some related works on that approach.

  • 25.06.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Frederik Berg:
    Effizientere Reportgenerierung durch Traceability

    Die BTC Embedded Systems AG entwickelt unter anderem Werkzeuge, die das Testen von Matlab Simulink/TargetLink-Modellen und daraus generiertem Code als Ergebnisse einer modellgetriebenen Entwicklung automatisieren. Hierbei werden für den Nutzer dieser Werkzeuge HTML-Reports erstellt, die Auskunft über die Güte der entwickelten Artefakte und deren Testbarkeit geben. Ein solches Werkzeug ist der EmbeddedTester mit seinem Plugin ModelBlockTest. Die Berechnung der für den Report notwendigen Werte und ihre Darstellung als HTML-Dokument werden bei jeder Änderung des Quellmodells (einem Datenmodell, das aus einem SL/TL-Modell generiert wurde) vollständig neu angestoßen. Dies kann bei steigender Komplexität des Quellmodells sehr lange dauern, auch wenn die Änderung nur minimal ist.

    Ziel der Bachelorarbeit soll es sein, bei Änderungen im Datenmodell nur diejenigen Elemente des Reports neu zu erstellen, die sich auch tatsächlich ändern. Dafür ist es notwendig, Traceability (also eine Verfolgbarkeit) zwischen den Elementen des Datenmodells und denen des Reports herzustellen: Wenn man weiß, auf welche Elemente des Reports ein Element des Datenmodells alles einen Einfluss hat, kann man gezielt nur diese Report-Elemente aktualisieren. Zunächst soll ein Konzept für die Etablierung einer solchen Traceability und einer gezielten Reportaktualisierung erarbeitet und seine technische Umsetzbarkeit überprüft werden. In einem zweiten Schritt soll dieses Konzept dann beispielhaft auf das Plugin ModelBlockTest angewendet werden.

  • 18.06.2013 16:00  ED Colloquium / SE Colloquium A2-2-219
     
    Sieglinde Hahn:
    Analyse der Softwareentwicklungsprozesse der Betrieblichen IT bei einem mittelständischen Unternehmen

    Das mittelständische Unternehmen ist der europäische Technologie- und Marktführer im Fotofinishing. Zu den Produkten gehören u.a. das Fotobuch und Fotogeschenkartikel mit hoher Qualität. Für die Unterstützung der Geschäftsprozesse existieren drei verschiedene IT Bereiche mit unterschiedlichen Schwerpunkten. Diese Bereiche sind Betriebliche IT, Produktions IT und Online IT. Zur Erhaltung und Optimierung der Softwarequalität innerhalb der Bereiche, hilft Qualitätsmanagement. Der Erhalt der Softwarequalität stellt Unternehmen somit vor die Herausforderung die Softwarequalität auf Dauer konstant zu erhalten.

    Die Masterarbeit wird sich auf die Erhebung der Prozessqualität der Abteilung Betriebliche IT fokussieren sowie die Identifikation von Optimierungspotenzial. Ziel ist das Aufdecken von Handlungsalternativen, hierfür werden die Softwareprozesse der betrieblichen IT in Form einer Istanalyse erhoben. Die erhobenen Daten sollen mit den Softwareprozessen der Produktions IT und Online IT sowie Standardvorgehen aus der Literatur abgeglichen werden. Handlungsalternativen sollen dazu dienen die Softwareprodukte langlebig und wartbar zu machen.

  • 11.06.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Christoph Küpker:
    General Model Difference Calculation

    Models, used to represent abstract views on a complex system, are commonly used design documents and artefacts in the process of software development. Differences between consecutive versions of models allow, for instance, model evolution investigation or versioning of models. Such differences, referred to as modelling deltas, are detected using model difference calculation algorithms. Currently available tools and frameworks for model difference calculation are limited either in model language capabilities or have restricted functionalities for implementational reasons. Hence, general model difference calculation is an open problem.

    Existing algorithms, tools and frameworks for model comparison have been investigated and a general algorithmic solution has been found. That algorithm has been implemented in a prototype called GDiff which allows model difference detection in a generic manner. The implementation is capable of detecting differences for any model type or language. This is validated by exemplary comparisons of UML Activity Diagrams and a domain-specific graph type used to represent object-oriented software systems.

    The solutions to a general model difference calculation algorithm and the prototype implementation show that model difference calculation is actually possible without restrictions to model type or language. The solution provided in this work could for example be embedded in a model versioning system, allowing the system to make models from any language versionable without requiring specific modelling tools or model representations.

  • 30.04.2013 17:00  ED Colloquium / SE Colloquium A2-2-219
     
    Jan Jelschen:
    Discovery and Description of Software Evolution Services

    A catalog of software evolution services is a prerequisite for the creation of an integration framework to enhance software evolution tool interoperability. The catalog acts as the framework's inventory of basic blocks for toolchain building. There is no comprehensive survey of established techniques spanning all areas of the field of software evolution. Existing techniques and tools are described in scientific publications in varying form and detail, and are not expressed in terms of services. This paper presents an approach to discover services from literature, and extract information about them along a description model.

  • 30.04.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marion Gottschalk:
    Energy-Efficient Code by Refactoring

    The rising number of mobile devices increase the interest in longer battery durations. To increase battery duration, researchers try to improve e.g. different hardware components, such as processors and GPS for lower energy consumption. Frequently, software optimization possibilities to save energy are forgotten. Hence, an approach is shown to reduce energy consumption of applications by reengineering. Therefor, energy-wasteful code in applications is searched by code analysis and then restructured to optimize their energy consumption. Energy savings are validated by different energy measurements techniques.

  • 23.04.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Dilshod Kuryazov:
    Towards Versioning Sustainability Reports

    Sustainability reporting is a key issue of sustainability development in companies. Sustainability reports are documents which describe data about different performances of companies. They intend to report and analyse sustainability information to provide sustainable future. During sustainability development, reports have to be versioned to analyse histories of sustainability reports and to present changes and improvements of sustainability data. This talk intends to clarify idea behind an approach to versioning sustainability reports by means of delta storage which included in in paper entitled"Towards Versioning Sustainability Reports". The approach explains an operation-based, schema generic means to store differences between versions. Differences are represented by a sequence of executable operations which allow for obtaining older versions by applying these to the current version. The approach is applied to versioning sustainability reports within the STORM project.

  • 16.04.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Alex Bauer:
    Describing Changes in Activity Diagrams

    Software evolution is witnessing the increasing need of tools for visualizing and representing changes of various versions of software systems on all levels of development including requirements, designing, coding, and testing. Current most versioning tools use a text based approach to represent differences on code level (for instance cf. Diff with is applied in [RCS], [CVS], [SCCS] and [subversion]). Tool approaches for representing version differences of models like activity diagrams only exist in research prototypes like [ADDiff].

    Activity diagrams are widely using on modeling of business processes, workflows and web services. This thesis will address the development of a concept of describing differences between versions of activity diagrams and apply this concept to an use case.

  • 09.04.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Christoph Küpker:
    Calculating Changes in Activity Diagrams

    Collaborative modelling is a key component of software development. There are currently no versioning systems available, that support the modelling process in a way that doesn't restrict developers to a certain modelling tool. Versioning is based on differences that are stored and used to create different versions of the versioned objects. These differences are being calculated by difference calculation algorithms that calculate the difference between two versioned objects. A general algorithm for difference calculation is being presented in this thesis.

    Research on current model difference calculation algorithms provides an appropriate algorithm that is chosen based on runtime complexity, detection correctness and the general capability to handle any model type or language. To validate the correctness of the chosen algorithm, a tool that calculates differences between two UML activity diagrams is exemplary conceptualised and implemented. As a result, the chosen algorithm and the concept of the examplary implementation of a difference calculation tool could be used for general model difference calculation in a model versioning system.

  • 02.04.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marcel Schröder:
    Erfassung des Energieverbrauchs von Android Apps

    Bei modernen Smartphones wird der Akku oft zum Flaschenhals, denn dieser hält häufig nicht länger als einen Tag durch. In der Softwareentwicklung auf mobilen Endgeräten wird ein sparsamer Energieverbrauch gefordert. Dabei wird jedoch nur verlangt, dass wenig Akkuleistung verbraucht wird und nicht wie viel.

    Dies ist dadurch bedingt, dass es keine Werkzeuge gibt, die es erlauben, das Energieverhalten für komplexe Anwendungsverhalten auf dem Smartphone zu erfassen und zu vergleichen. Das Wissen über den Energieverbrauch ist aber die Grundvoraussetzung zur Optimierung von Apps. Gegenstand dieser Arbeit ist es diesen Wissen in der Entwicklung zugänglich zu machen.

    Durch Entwicklung einer Messinfrastruktur sollen reproduzierbare Messungen ermöglicht werden. Diese Messungen sollen es ermöglichen Zusammenhänge zwischen Quellcode und Energieverbrauch aufzuzeigen.

    In diesem Vortrag werden verschiedene Methoden vorgestellt und verglichen um auf einem Android Smartphone den Energieverbrauch zu messen.

  • 15.01.2013 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marcel Wilkens:
    Reifeprüfung von Software in Stabilisierungsphasen

    Im Rahmen der Softwareentwicklung durchläuft eine Software vor der produktiven Nutzung im Betrieb eine Reihe von Phasen. So schließt sich nach der Inbetriebnahme üblicherweise eine Stabilisierungsphase an. Ziel dieser Phase ist es das eig. "fertige" Produkt gründlich zu untersuchen und zu überprüfen und somit durch Tests und Fehlerbeseitigung die Stabilität dieser Software zu garantieren. In der Praxis wird eine solche Stabilisierungsphase meist als ein im Vorfeld festgelegter Zeitabschnitt definiert, ohne dabei den tatsächlichen Reifegrad der Software zu berücksichtigen. Dies führt dazu, dass die zuvor festgelegten Pläne ungenau und fehlerhaft sind und deshalb fortlaufend überarbeitet werden müssen. In genau diesem Aspekt wird die Masterarbeit ansetzen, um sich von diesem "klassischen" Vorgehen wegzubewegen und eine Möglichkeit zur tatsächlichen Messung des Reifegrads zu schaffen. Ziel ist es zu untersuchen, an welchen Merkmalen und Größen sich der Reifegrad einer Software in der Stabilisierungsphase messen lässt. Definierende Metriken könnten hierbei z.B. die Anzahl der Änderungen der letzten Woche, die Anzahl und Häufigkeit der offenen Probleme, der Aufwand in Analysen oder die Beratung von Endanwendern darstellen. Mithilfe dieser Kennzahlen sollen sowohl die erreichten Fortschritte in der Stabilisierung der Software laufend dargestellt werden als auch zur realistischen Festlegung des Endes der Stabilisierungsphase beigetragen werden. Es soll entschieden werden, ob die Software mittlerweile stabil läuft, sodass ein geregelter Betrieb möglich ist oder nicht. Ebenfalls können diese Kennzeichen dazu beitragen, abzuschätzen inwieweit sich die Software auf dem erwarteten Pfad der Stabilisierung befindet bzw. an welchen Punkten Maßnahmen ergriffen werden sollten, um einen geregelten Betrieb zu erreichen.


2012
  • 18.12.2012 17:00  ED Colloquium / SE Colloquium A2-2-219
     
    Janina-Sarah Siemer:
    Analyse von Visual C

    Soll eine Änderung am Quellcode durchgeführt werden, so muss der gesamte Quellcode untersucht werden. Die Darstellung von Abhängigkeiten innerhalb des Quellcodes soll dem entgegenwirken und die Übersichtlichkeit wahren. Um das zu erreichen, wird Reverse Engineering durchgeführt. Dabei wird mit Hilfe eines Parsers und einem Metamodell, der Sourcecode in eine Graphendarstellung überführt und im Anschluss analysiert.

    Aufgabe dieser Arbeit ist es, das Reverse Engineering eines umfangreichen, kommerziellen Softwaresystems zu unterstützen. Hierzu ist durch ein Metamodell zu definieren, welche Informationen über das zu betrachtende System zu erheben und zu analysieren sind. Hierbei sind insbesondere die konkreten Anforderungen, die sich aus der beim Projektpartner gegebenen Visual C/C++-Umgebung ergebe, zu beachten. Ebenso ist zu evaluieren, in wie weit frei verfügbare Parser-Frontends geeignet sind, Metamodell-konforme Repository-Strukturen aufzubauen. Zum Abschluss der Arbeit werden für die entstandenen Graphen mehrere Graphanalysen durchgeführt.

  • 18.12.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Mathias Ringe:
    Vergleich komponentenbasierter Frameworks zur Integration von Software-Reengineering Werkzeugen

    Anwendungssysteme unterliegen laufenden Veränderungen welche einen Qualitätsverlust zur Folge haben können. Software-Reengineering Maßnahmen werden durchgeführt um dem Qualitätsverlust von Softwaresystemen entgegen zu wirken. Zur Durchführung der notwendigen Software-Reengineering Maßnahmen existieren unterschiedliche Werkzeuge. Jedes der Werkzeuge deckt dabei einen bestimmten Teilbereich der insgesamt durchzuführenden Maßnahmen ab. Durch Integration der einzelnen Werkzeuge kann die Erfüllung aller Aufgaben erreicht werden. Als Lösungsansatz für die Integration steht die komponentenbasierte Softwareentwicklung zur Verfügung.

    Im Rahmen dieser Arbeit sollen Komponenten-Frameworks bezüglich ihrer Eignung zur Integration der Werkzeuge miteinander verglichen werden. Hierfür müssen unteranderem geeignete Kriterien aufgestellt, Komponenten-Frameworks identifiziert und verglichen werden.

    Ziel der Arbeit ist es somit die identifizierten Komponenten-Frameworks mit Hilfe der Kriterien gegeneinander abzuwägen und eine Handlungsempfehlung für den Integrationsprozess auszusprechen.

  • 17.12.2012 15:00  ED Colloquium / SE Colloquium A2-2-219
     
    Olaf Roeder:
    Brückenarchitektur zur Softwaremigration am Beispiel STORM

    STORM ist eine an der Carl von Ossietzky Universität entwickelte Software zur Nachhaltigkeitsberichterstattung im Web 2.0. Um die Produktivität von STORM zu steigern, wurde entschieden, die Entwicklung mit anderer Technologie fortzusetzen. Damit die gesamte Funktionalität von STORM, sowie die Integrität und Verfügbarkeit des bestehenden Datenbestandes sichergestellt werden kann, muss migriert werden. Während der Migration soll die Anwendung STORM ständig verfügbar sein, jedoch sollen Funktionalitäten von der neuen Version übernommen werden, sobald sie migriert worden sind. Dies bedeutet, dass zur Laufzeit unterschieden werden muss, welche Version von STORM welche Funktionalität bedient, wie die Daten synchronisiert werden und wie die Anwendung dargestellt wird, dies alles soll durch eine Brücke realisiert werden. In dieser Arbeit wird untersucht, wie STORM zu einer neuen Version migriert werden kann, die besser für den produktiven Einsatz geeignet ist als die aktuelle Version und wie die Brücke so zu implementieren ist, dass sie die o. g. Anforderungen erfüllt.

  • 11.12.2012 16:30  ED Colloquium / SE Colloquium A2-2-219
     
    Jens Rauch:
    Ein service-orientierter Ansatz für Interoperabilität in einer heterogenen Systemlandschaft am Beispiel der Astrium GmbH

    Die über Jahre gewachsene Systemlandschaft großer Unternehmen ist zumeist durch starke Heterogenität gekennzeichnet. Sie lässt sich zurückführen auf den betrieblichen Wandel und geänderte Anforderungen einerseits und das Bestreben, die jeweils bestgeeigneten Systeme für einen bestimmten Zweck einzusetzen ("Best-of-Breed") andererseits.

    Die so entstandene Heterogenität bringt fast zwangsläufig funktionale Redundanzen und mangelnde Systeminteroperabilität mit sich. Daraus ergeben sich zwei Probleme: 1) Nichtinteroperable Systeme stellen Anwendern ihre Dienste nur über die systemeigenen Nutzerschnittstellen bereit, so dass Geschäftsprozesse nicht vollständig, sondern nur abschnittsweise unterstützt werden. 2) Angesichts funktionaler Redundanz ist damit zu rechnen, dass Daten der gleichen Art (z. B. Produktinformation) auf mehreren Systeme verteilt verwaltet werden. Wegen der fehlenden Interoperabilität sind diese zudem nicht zentral abrufbar.

    In dieser Bachelorarbeit soll am Beispiel der Astrium GmbH untersucht werden, wie sich durch einen service-orientierten Ansatz Interoperablität in einer heterogenen Systemlandschaft herstellen lässt, um eine bessere Unterstützung von Geschäftsprozessen und einen zentralen Datenzugriff zu gewährleisten. Zu berücksichteigen ist jedoch, dass die Autonomie einzelner Systeme erhalten bleiben muss.

    Die Arbeit erstreckt sich von der Systemanalyse über Konzeptbildung, Entwurf und Implementierung einzelner Anforderungs-Szenarien bis hin zur Validierung des Geleisteten.

  • 07.12.2012 09:00 Workshop OFFIS - F02
     
    ExploIT Dynamics - PhD Workshop

    The first ExploIT Dynamics - PhD Workshop together with Students from Voronezh State University, Russia, takes place in Oldenburg at OFFIS and Carl von Ossietzky University on December 07, 2012. The workshop starts at 9:00 at OFFIS in room F02. After lunch the workshop will be continued at the University in room V02 0-003.

    More information you find here.

  • 04.12.2012 17:00  ED Colloquium / SE Colloquium A2-2-219
     
    Sergey Babkin:
    Die interaktive Bildschirm-Steuerung mit dem Kinect Sensor

    Die interaktive Bildschirm-Steuerung mit dem Kinect Sensor Ich arbeite an der Softwareentwicklung für die interaktive Bildschirm-Steuerung mit dem Kinect Sensor. Meistens wird der Kinect für die Computerspiele benutzt, aber sein Potential ist viel breiter. Er bekommt ein Farbbild, ein Bild von Tiefe, deshalb kann er die dreidimensionalen Koordinaten bestimmen. Der Sensor kann auch feststellen, woher der Laut kommt, und die Rede erkennen. Das Entwicklungssystem für den interaktiven Bildschirm ist folgendes: der Projektor bildet die Darstellung auf der Wand, der Kinect wird auf dieses Bild gerichtet; und dann folgt der Sensor den Hände und wenn die Hand nah genug zur Wand ist, dann simuliert er die Mausklicks auf den entsprechenden Stellen. Auf diese Weise ist es möglich, in diesem System nicht nur die Mausklicks machen zu können, sondern auch die Elemente auf dem Bildschirm von einem Ort zum anderen zu bringen.

    Das Problem war: wie man die dreidimensionalen Koordinaten der Hand in die entsprechenden Koordinaten auf dem Bildschirm konvertiert kann. Zunächst, muss man die dreidimensionalen Koordinaten der Ecken des Bildes bestimmen. Dafür vergleicht das Programm zwei Bilder mit dem schwarzen und dem weißen Bildschirm. Jetzt haben wir vier Koordinaten der Ecken des Bildschirms und die Koordinaten der Hand. Wir finden einen Punkt, der hinter der Hand auf die Wand liegt. Dann bilden wir vier Dreiecke: die Basis ist die Seite des Bildschirms und der Punkt hinter der Hand. Wenn die Vektoren gerechnet wurden, finden wir die Ecken zwischen der Basis und der zweiten Seite, und mit diesen Ecken finden wir weiter die Höhe des Dreiecks. Und, wenn wir alle vier Höhen wissen, können wir die Koordinaten des Pixels auf dem Bildschirm finden.

  • 04.12.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Andrey Saksonov:
    Creating web application with NoSQL storage using Scala language

    This was my baccaluareate work, which was aimed on researching methods and approach for using NoSQL storages in web applications. Example application from the work use MongoDB as NoSQL storage, which acts like complex cache storage (storing not only keys and values, but also relations beetween entities), when basic database is still relational (PostgreSQL). User interface written using Play framework with Scala language. Cache mechanism based on Actors (provided by Akka toolkit) in functional style. Some metrics (which demonstrates benefits of approach) presented in the last part of the work.

  • 27.11.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Johannes Meier:
    Eine Fallstudie zur Interoperabilität von Software-Evolutions-Werkzeugen in SCA

    Die Softwaretechnik entwickelt zur Software-Evolution großer Softwaresysteme diverse Software-Evolutions-Methoden, die durch Implementierungen in einzelnen Werkzeugen automatisiert werden. Da in der Praxis Software-Evolutions-Maßnahmen durch die Kombination mehrerer Software-Evolutions-Methoden ausgeführt werden, müssen zur Automatisierung dieser Szenarien verschiedenste Werkzeuge miteinander verschaltet werden.

    Um diese Werkzeugintegration einfach, flexibel und austauschbar zu realisieren, beruht der Ansatz der Komponententechnik darauf, einzelne Werkzeuge durch Komponenten zu kapseln, die ihre Software-Evolutions-Methoden als Services anderen Komponenten zur Verfügung stellen. Einzelne Szenarien werden anschließend durch die Verschaltung dieser Services realisiert.

    Ziel dieser Bachelorarbeit ist es, den komponentenbasierten Lösungsansatz anhand des Komponentenmodells "Service Component Architecture" (SCA) und der "Business Process Execution Language" (BPEL) auf ein bestehendes Szenario, das COBOL- und migrierten Java-Code mittels Metriken vergleicht, anzuwenden und ihn hinsichtlich Eignung, Aufwand und Flexibilität mit einer bestehenden Implementierung vergleichend zu evaluieren. Die Umsetzung dieses Ansatzes erfolgt durch die Identifizierung und Konkretisierung der Services, die von Components, die das zugrunde liegende Werkzeug wrappt, zur Verfügung gestellt werden. Das vorliegende Szenario wird realisiert durch eine Orchestrierung, die die Logik des Szenarios auf Ebene der Services implementiert, und ein Mapping, das angibt, welcher Service durch welches Werkzeug realisiert werden soll.

  • 15.11.2012 16:00  ED Colloquium / SE Colloquium A4-2-225
     
    Jens Krayenborg:
    DSA:Dynamische Verwendung von Sensor- und Aktuatorknoten (HW/SW)

    In informatischen Systemen findet die Anwendung von Sensoren und Aktuatoren mehr und mehr Einzug. Unterstützt wird diese Entwicklung durch die Tatsache, dass immer mehr neue Typen an Sensoren und Aktuatoren entwickelt werden. Dadurch werden Sensoren, wie auch Aktuatoren stetig kleiner, was den Formfaktor betrifft, aber dennoch leistungsfähiger. Gleichzeitig sinken die Produktionskosten und damit auch die Anschaffungskosten für Systementwickler. Ein Trend, der sich in Zukunft weiter fortsetzen wird.

    Durch diesen Trend ergeben sich neue und komplexere Einsatzmöglichkei- ten. Diese erfordern allerdings zumeist eine heterogene Menge aus Sensoren und Aktuatoren. Aufgrund fehlender Standards, und der daraus resultierenden starken Unterschiede in den Schnittstellen, allerdings ist die Entwicklung eines solchen informatischen Systems eine komplexe und sehr zeitintensive Angelegenheit. Auch die Neukonfiguration des Systems durch Einsatz neuer Sensoren oder Aktuatoren stellt eine hohe Herausforderung an die Entwickler dar und verursacht i.d.R hohe Kosten für den Auftraggeber. Aufgrund der stark unterschiedlichen Schnittstellen ist ein Austauschen während der Laufzeit des Systems nicht, oder nur erschwert, möglich.

    Das DSA-Rahmenwerk addressiert diese Probleme. Es schafft eine Zwischenschicht zwischen spezifischen Sensoren und Aktuatoren und dem anwendenden informatischen System. Es stellt eine vereinheitlichte Schnittstelle zur Verfügung, die es dem informatischen System gestattet, jeden Sensor, bzw. Aktuator, aus einer heterogenen Menge an Sensoren und Aktuatoren, auf die gleiche Weise anzusprechen. Gleichzeitig gestattet das DSA-Rahmen- werk, mehrere spezifische Sensoren und Aktuatoren zu einem logischen Konstrukt zusammenzufassen und während der Laufzeit zu variieren.

    Dadurch ergeben sich neue Möglichkeiten der Systemanalyse und Optimierung, was gerade im Hinblick auf den Energieverbrauch von drahtlosen Sensor- und Aktuatorknoten große Vorteile verschaffen kann.

    Dieser Vortrag stellt das DSA-Rahmenwerk in seinem aktuellen Entwicklungsstand vor. Dazu werden vorher die Problemstellung und Zielsetzung erläutert, um im Anschluss daran die möglichen Ansätze aufzuzeigen. Ferner wird der in dieser Bachelorarbeit durchzuführende Versuch umrissen.

  • 13.11.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Mirco Josefiok:
    An Energy Abstraction Layer for Mobile Computing Devices

    Energy-efficiency in mobile computing sector is an increasingly interesting topic, especially since the growing popularity of smartphones and tablet devices in recent years. There is a rising importance of smartphones in peoples daily life and business, but in case of software development and engineering energy-efficiency is widely neglected. This work provides basic research in the field of measuring energy and power related information on mobile computing devices and proposes an abstract specification for implementing a measurement infrastructure on different mobile computing devices.

  • 30.10.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marie-Christin Ostendorp:
    Model Driven Software Visualization

    Die Softwarevisualisierung dient im Bereich des Software Engineering dazu Informationen über ein Softwaresystem visuell aufzubereiten. Dies kann zur Analyse bestehender Softwaresysteme und zum Verstehen von Softwaresystemen, beispielsweise in der Softwarewartung eingesetzt werden. Die Arbeit beschäftigt sich aus diesem Grund mit der Entwicklung einer API, die aus zuvor generierten Analysedaten eine flexible und variable visuelle Darstellung erzeugen kann. Die Analysedaten liegen dabei als TGraphen vor. Die Erzeugung der gewünschten visuellen Darstellung basiert auf einem mit GReQL-Anfragen annotierten Metamodell. Aus diesen Informationen generiert die API automatisch eine GReTL-Transformation, die die Überführung der Analysedaten in eine Instanz des Metamodells der Visualisierung vornimmt. Diese Instanz wird dann über einen Renderer in eine SVG-Grafik überführt, die zum Metamodell der Visualisierung konform ist. Insgesamt soll es so möglich sein aus beliebigen Analysedaten eine visuelle Darstellung zu erhalten, die komplett frei und variabel wählbar ist.

  • 23.10.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Dilshod Kuryazov:
    Evolution of Integrated software models: Services overview

    Recently, a meta-model-generic approach was introduced to representing model differences. This approach defines operation-based means to represent modeling deltas referring to a meta-model i.e. difference operations can be generated for arbitrary metamodels. Meta-models give a collection of concepts within a certain (domain-specific) modeling language. In this sense, applying the atomic operations (add, delete, and change) to model elements results in a sequence of operations within a domain-specific language (DSL), which represents model differences. Consequently, the operations of the DSL are represented by a set of transformation rules.

    While implementing the approach, a complex of tools and approaches have to be involved. The talk intends to discuss all the services including tools and appraoches in order to implement the approach.

  • 09.10.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marcel Schröder:
    Erfassung des Energieverbrauchs von Android Apps

    Bei modernen Smartphones wird der Akku oft zum Flaschenhals, denn dieser hält häufig nicht länger als einen Tag durch. In der Softwareentwicklung auf mobilen Endgeräten wird ein sparsamer Energieverbrauch gefordert. Dabei wird jedoch nur verlangt, dass wenig Akkuleistung verbraucht wird und nicht wie viel.

    Dies ist dadurch bedingt, dass es keine Werkzeuge gibt, die es erlauben, das Energieverhalten für komplexe Anwendungsverhalten auf dem Smartphone zu erfassen und zu vergleichen. Das Wissen über den Energieverbrauch ist aber die Grundvoraussetzung zur Optimierung von Apps. Gegenstand dieser Arbeit ist es diesen Wissen in der Entwicklung zugänglich zu machen.

    Durch Entwicklung einer Messinfrastruktur sollen reproduzierbare Messungen ermöglicht werden. Diese Messungen sollen es ermöglichen Zusammenhänge zwischen Quellcode und Energieverbrauch aufzuzeigen.

    In diesem Vortrag werden verschiedene Methoden vorgestellt und verglichen um auf einem Android Smartphone den Energieverbrauch zu messen.

  • 05.10.2012 13:00  ED Colloquium / SE Colloquium A2-2-219
     
    Projektgruppe Clonebusters:
    Projektgruppe Clonebusters – Abschlusspräsentation

    Das Thema Plagiate ist seit Anfang des Jahres 2011 stärker in das öffentliche Interesse gerückt, da diversen Personen des öffentlichen Lebens Plagiatsvorwürfe gemacht wurden, welche sich in zahlreichen Fällen nach Überprüfungen bestätigten. Der Schutz des geistigen Eigentums erfordert jedoch die Suche und die Erkennung von Plagiaten. Zudem ist aus Sicht des Urheberrechts, des Patentrechts und auch der Prüfungsordnung der jeweiligen Hochschule die Einhaltung der gesetzlichen Rahmenbedingungen notwendig. Dabei werden nicht, unvollständig oder falsch zitierte Texte als Plagiat bezeichnet.

    Die Vision der Projektgruppe ist somit die Erstellung eines komponentenbasierten Frameworks zur Erkennung von Plagiaten. Hierbei soll die Benutzeroberfläche als Webanwendung realisiert werden. Der Gedanke verschiedener, objektorientierter Komponenten soll hierbei die Verteilung der Software erleichtern. Darüber hinaus soll die Erweiterbarkeit und Austauschfähigkeit einzelner Komponenten bestehen. Zur Erkennung von Plagiaten soll ein Textvergleich mit Hilfe von unterschiedlichen Algorithmen durchgeführt werden.

    Die Projektgruppe präsentiert ihr Projekt von der Idee bis hin zur Verwirklichung. Vorgestellt werden u.a. technische Details wie die Anbindung des HERO Cluster der Universität. Des Weiteren werden das Vorgehen und die Entstehung des Entwurfskonzeptes näher betrachtet. Den Abschluss der Präsentation bildet eine Live-Demo der erstellten Anwendung "PlagTag".

  • 11.09.2012 17:00  ED Colloquium / SE Colloquium A2-2-219
     
    Alex Bauer:
    Beschreibung von Änderungen in Aktivitäsdiagrammen (Describing Changes in Activity Diagrams)

    Software evolution is witnessing the increasing need of tools for visualizing and representing changes of various versions of software systems on all levels of development including requirements, designing, coding, and testing. Current most versioning tools use a text based approach to represent differences on code level (for instance cf. Diff with is applied in [RCS], [CVS], [SCCS] and [subversion]). Tool approaches for representing version differences of models like activity diagrams only exist in research prototypes like [ADDiff].

    Activity diagrams are widely using on modeling of business processes, workflows and web services. This thesis will address the development of a concept of describing differences between versions of activity diagrams and apply this concept to an use case.

  • 11.09.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marcel Wilkens:
    Reifeprüfung von Software in Stabilisierungsphasen

    Im Rahmen der Softwareentwicklung durchläuft eine Software vor der produktiven Nutzung im Betrieb eine Reihe von Phasen. So schließt sich nach der Inbetriebnahme üblicherweise eine Stabilisierungsphase an. Ziel dieser Phase ist es das eig. "fertige" Produkt gründlich zu untersuchen und zu überprüfen und somit durch Tests und Fehlerbeseitigung die Stabilität dieser Software zu garantieren. In der Praxis wird eine solche Stabilisierungsphase meist als ein im Vorfeld festgelegter Zeitabschnitt definiert, ohne dabei den tatsächlichen Reifegrad der Software zu berücksichtigen. Dies führt dazu, dass die zuvor festgelegten Pläne ungenau und fehlerhaft sind und deshalb fortlaufend überarbeitet werden müssen. In genau diesem Aspekt wird die Masterarbeit ansetzen, um sich von diesem "klassischen" Vorgehen wegzubewegen und eine Möglichkeit zur tatsächlichen Messung des Reifegrads zu schaffen. Ziel ist es zu untersuchen, an welchen Merkmalen und Größen sich der Reifegrad einer Software in der Stabilisierungsphase messen lässt. Definierende Metriken könnten hierbei z.B. die Anzahl der Änderungen der letzten Woche, die Anzahl und Häufigkeit der offenen Probleme, der Aufwand in Analysen oder die Beratung von Endanwendern darstellen. Mithilfe dieser Kennzahlen sollen sowohl die erreichten Fortschritte in der Stabilisierung der Software laufend dargestellt werden als auch zur realistischen Festlegung des Endes der Stabilisierungsphase beigetragen werden. Es soll entschieden werden, ob die Software mittlerweile stabil läuft, sodass ein geregelter Betrieb möglich ist oder nicht. Ebenfalls können diese Kennzeichen dazu beitragen, abzuschätzen inwieweit sich die Software auf dem erwarteten Pfad der Stabilisierung befindet bzw. an welchen Punkten Maßnahmen ergriffen werden sollten, um einen geregelten Betrieb zu erreichen.

  • 04.09.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Olaf Roeder:
    Brückenarchitektur zur Softwaremigration am Beispiel STORM

    Das Online Berichterstattungstool "STORM" (SusTainable Online Reporting Model, entwickelt mit Grails (http://grails.org/)), erstellt vom WiSe 2009 bis SoSe 2010 von der Projektgruppe "Nachhaltigkeitsberichterstattung im Web 2.0" unter der Leitung von Prof. Dr.-Ing. Jorge Marx Gomez, soll zu einer neuen Version migriert werden (entwickelt mit ASP.NET MVC (http://www.asp.net/mvc/mvc4)). Die volle Funktionalität der Plattform STORM soll während des Migrationsprozesses durchgängig verfügbar sein, wobei bereits Funktionalität von der neuen Version genutzt werden soll. Um stets den aktuellen und vollen Funktionsumfang nutzen zu können, ist es erforderlich, dass ein Selektionsprozess stattfindet, der Anfragen eines Benutzers so koordiniert, dass stets die aktuellste Version einer Funktionalität angesteuert wird. Dieser Prozess soll in einer Brücke gekapselt werden, die als Verbindung zwischen dem Benutzer und den beiden Versionen von STORM dient. Für den Benutzer soll der Webauftritt der Plattform STORM transparent sein, es darf für ihn keinen Unterschied machen, welche Version von STORM seine Anfrage erfüllt. Die Brücke hat also die Aufgaben, dem Benutzer eine Bedienoberfläche (Webseite) zur Verfügung zu stellen und die Inhalte aus den Versionen von STORM so darzustellen, dass der Inhalt aktuell und synchron (zwischen beiden STORM Versionen) ist, sowie zu entscheiden, an welches STORM eine Benutzeranfrage gesendet wird, sowie die Antwort korrekt zu verarbeiten.

  • 04.09.2012 15:00  ED Colloquium / SE Colloquium A2-2-219
     
    Marion Gottschalk:
    Removing Energy Code Smells with Reengineering Services

    Due to the increasing consumer adoption of mobile devices, like smart phones and tablet PCs, saving energy is becoming more and more important. Users desire more functionality and longer battery cycles. While modern mobile computing devices offer hardware optimized for low energy consumption, applications often do not make proper use of energy-saving capabilities. This paper proposes detecting and removing energy-wasteful code using software reengineering services, like code analysis and restructuring, to optimize the energy consumption of mobile devices.

  • 28.08.2012 17:15  ED Colloquium / SE Colloquium A2-2-219
     
    Mathias Ringe:
    Vergleich komponentenbasierter Frameworks zur Integration von Software-Reengineering Werkzeugen

    Anwendungssysteme unterliegen laufenden Veränderungen welche einen Qualitätsverlust zur Folge haben können. Software-Reengineering Maßnahmen werden durchgeführt um dem Qualitätsverlust von Softwaresystemen entgegen zu wirken. Zur Durchführung der notwendigen Software-Reengineering Maßnahmen existieren unterschiedliche Werkzeuge. Jedes der Werkzeuge deckt dabei einen bestimmten Teilbereich der insgesamt durchzuführenden Maßnahmen ab. Durch Integration der einzelnen Werkzeuge kann die Erfüllung aller Aufgaben erreicht werden. Als Lösungsansatz für die Integration steht die komponentenbasierte Softwareentwicklung zur Verfügung. Im Rahmen dieser Arbeit sollen Komponenten-Frameworks bezüglich ihrer Eignung zur Integration der Werkzeuge miteinander verglichen werden. Hierfür müssen unteranderem geeignete Kriterien aufgestellt, Komponenten-Frameworks identifiziert und verglichen werden. Ziel der Arbeit ist es somit die identifizierten Komponenten-Frameworks mit Hilfe der Kriterien gegeneinander abzuwägen und eine Handlungsempfehlung für den Integrationsprozess auszusprechen.

  • 28.08.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Dilshod Kuryazov:
    Describing Modeling Deltas by Model Transformation

    Since large scaled software models typically exist in many revisions, extraction and representation of differences between versions is a crucial issue of model version systems. While handling model differences is playing an important role in evolution of models, there is a need for appropriate techniques to represent model differences. This paper shows a meta-model-generic and transformation based approach to the representation of model differences. Domain specific language is generated to represent model differences. Differences are mapped to a set of model transformation rules. To demonstrate the approach, it is applied to two versions of an activity diagram.

  • 14.08.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Mirco Josefiok:
    An Energy Abstraction Layer for mobile Computing Devices

    Energy-efficiency in mobile computing sector is an increasingly interesting topic especially since the growing popularity of smart phones and tablet devices in recent years. There is an increasing importance of smartphones in peoples daily life and business, but in case of software development and engineering energy-efficiency is widely neglected. In Germany every year more then 600 millions kWh of energy are consumed. From this over 10% percent are accounted for information and communication technology. The bulk of this consumption can be assigned to IP-based communication and exceeds the energy consumption of the German aviation sector.

  • 10.08.2012  External Talk Urgench city, Khorezm region, Uzbekistan
     
    Dilshodbek Kuryazov:
    Software engineering and key aspects of the field

    Discussed: Development of software engineering and modelling in the republic, the brief overview and benefits of software modelling, modelling tools and approaches, major challenges of collaborative modelling, M2M and M2T transformations.

  • 07.08.2012 16:50  ED Colloquium / SE Colloquium A2-2-219
     
    Johannes Meier:
    Eine Fallstudie zur Interoperabilität von Reengineering-Werkzeugen in SCA

    Die Softwaretechnik entwickelt zur Software-Evolution großer Softwaresysteme diverse Software-Evolutions-Methoden, die durch Implementierungen in einzelnen Werkzeugen automatisiert werden. Da in der Praxis Software-Evolutions-Maßnahmen durch die Kombination mehrerer Software-Evolutions-Methoden ausgeführt werden, müssen zur Automatisierung dieser Szenarien verschiedenste Werkzeuge miteinander verschaltet werden.

    Um diese Werkzeugintegration einfach, flexibel und austauschbar zu realisieren, beruht der Ansatz der Komponententechnik darauf, einzelne Werkzeuge durch Komponenten zu kapseln, die ihre Software-Evolutions-Methoden als Services anderen Komponenten zur Verfügung stellen. Ziel dieser Bachelorarbeit ist es, diesen komponentenbasierten Lösungsansatz anhand des Komponentenmodells "Service Component Architecture" (SCA) auf ein bestehendes Szenario, das COBOL- und migriertem Java-Code mittels Metriken vergleicht, anzuwenden und ihn hinsichtlich Eignung, Aufwand und Flexibilität mit einer bestehenden ad hoc Implementierung vergleichend zu evaluieren.

  • 07.08.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marie-Christin Ostendorp:
    Software Visualization Services

    Die Softwarevisualisierung dient im Bereich des Software Engineering dazu Informationen über ein Softwaresystem visuell aufzubereiten. Dies kann zur Analyse bestehender Softwaresysteme und zum Verstehen von Softwaresystemen, beispielsweise in der Softwarewartung eingesetzt werden.

    Die Arbeit beschäftigt sich aus diesem Grund mit der Entwicklung einer API, die aus zuvor generierten Analysedaten eine flexible und variable visuelle Darstellung erzeugen kann. Die Analysedaten liegen dabei als TGraphen vor. Die Erzeugung der gewünschten visuellen Darstellung kann der API als Metamodell übergeben werden. Aus diesen Informationen generiert die API automatisch eine GReTL-Transformation, die die Überführung der Analysedaten in eine Instanz des Metamodells der Visualisierung vornimmt. Diese Instanz wird dann über einen Renderer in eine SVG-Grafik überführt, die zum Metamodell der Visualisierung konform ist.

    Insgesamt soll es so möglich sein aus beliebigen Analysedaten eine visuelle Darstellung zu erhalten, die komplett frei und variabel wählbar ist.

  • 24.07.2012 16:00  ED Colloquium / SE Colloquium A2-2-219
     
    Projektgruppe Clonebusters:
    Projektgruppe Clonbusters - Zwischenstand der Version 2

    Das Thema Plagiate ist seit Anfang des Jahres 2011 stärker in das öffentliche Interesse gerückt, da diversen Personen des öffentlichen Lebens Plagiatsvorwürfe gemacht wurden, welche sich in zahlreichen Fällen nach Überprüfungen bestätigten. Der Schutz des geistigen Eigentums erfordert jedoch die Suche und die Erkennung von Plagiaten. Zudem ist aus Sicht des Urheberrechts, des Patentrechts und auch der Prüfungsordnung der jeweiligen Hochschule die Einhaltung der gesetzlichen Rahmenbedingungen notwendig. Dabei werden nicht, unvollständig oder falsch zitierte Texte als Plagiat bezeichnet.

    Die Vision der Projektgruppe ist somit die Erstellung eines komponentenbasierten Frameworks zur Erkennung von Plagiaten. Hierbei soll die Benutzeroberfläche als Webanwendung realisiert werden. Der Gedanke verschiedener, objektorientierter Komponenten soll hierbei die Verteilung der Software erleichtern. Darüber hinaus soll die Erweiterbarkeit und Austauschfähigkeit einzelner Komponenten bestehen. Zur Erkennung von Plagiaten soll ein Textvergleich mit Hilfe von unterschiedlichen Algorithmen durchgeführt werden.

    Präsentiert wird der aktuelle Zwischenstand der Webanwendung „PlagTag“ in der Version 2. Die Version 2 enthält die Umsetzung von drei Algorithmen zur Plagiatsüberprüfung. Die Plagiatsüberprüfung durchläuft eine Dokumentennormalisierung, die Suche und Auswahl von Internetquellen und die Visualisierung der gefundenen Plagiate. Das Ergebnis der Plagiatsüberprüfung kann der Anwender als PDF exportieren.

  • 17.07.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marcel Schröder:
    Entwicklung einer Messinfrastruktur zur Erfassung des Energieverbrauchs von Android Apps

    Bei modernen Smartphones wird der Akku oft zum Flaschenhals, denn dieser hält häufig nicht länger als einen Tag durch. In der Softwareentwicklung auf mobilen Endgeräten wird ein sparsamer Energieverbrauch i.d.R. gefordert. Dabei wird jedoch nur verlangt, dass wenig Akkuleistung verbraucht wird und nicht wie viel.

    Dies ist dadurch bedingt, dass es keine Werkzeuge gibt, die es erlauben, das Energieverhalten für komplexe Anwendungsverhalten auf dem Smartphone zu erfassen und zu vergleichen. Das Wissen über den Energieverbrauch ist aber die Grundvoraussetzung zur Optimierung von Apps. Gegenstand dieser Arbeit ist es diesen Wissen in der Entwicklung zugänglich zu machen.

    Durch Entwicklung einer Messinfrastruktur sollen reproduzierbare Messungen ermöglicht werden. Diese Messungen sollen es ermöglichen Zusammenhänge zwischen Quellcode und Energieverbrauch aufzuzeigen.

  • 10.07.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Oliver Beck:
    Eine grafische Benutzeroberfläche für ein XML-basiertes Web Content Management System

    Die Abteilung Softwaretechnik setzt ein XML-basiertes Web Content Management System (CMS) ein. Die Struktur der Inhalte ist mittels XML Schemata definiert und die darstellenden HTML-Seiten werden bei Änderungen mittels XSL Transformations aus XML-Daten generiert.

    Das Editieren der XML-Daten "von Hand" ist umständlich und wird mit wachsender Größe der Dateien immer unübersichtlicher. Um neue Inhalte hinzuzufügen ist außerdem genaue Kenntnis des jeweiligen Schemata notwendig, oder umfangreiche Unterstützung durch einen entsprechend mächtigen Editor erforderlich.

    Gegenstand dieser Arbeit ist der Entwurf und die Implementierung einer web-basierten Oberfläche für das CMS. Der Editor soll modellbasiert entwickelt werden: Aus den XML Schemata müssen passende Formulare generiert werden können, die ein einfaches Editieren der Inhalte erlauben. Der Editor muss dass Hinzufügen, Löschen und Verändern von Inhalten erlauben, und dazu die jeweils passenden XML-Daten erzeugen.

  • 19.06.2012 16:30  ED Colloquium / SE Colloquium A2-2-219
     
    Janina-Sarah Siemer:
    Graphbasierte Analyse eines industriellen Legacy-Softwaresystems

    Wenn Firmen Software vertreiben, kommt es häufig vor, das aufgrund von Kundenbedürfnissen, die Software immer wieder angepasst wird. Diese Anpassungen haben zur Folge, dass bei einer nicht synchronen Dokumentation die Einarbeitungszeit für die Wartung sich erhöht. Soll eine Änderung am Quellcode durchgeführt werden, so muss der gesamte Quellcode untersucht werden, bis die richtige Stelle identifiziert wurde. Die Darstellung von Abhängigkeiten innerhalb des Quellcodes soll dem entgegenwirken und die Übersichtlichkeit wahren. Um das zu erreichen wird ein Reverse Engineering durchgeführt. Dabei wird mit Hilfe eines Extraktors und einem Metamodell der Sourcecode in eine Graphendarstellung überführt und im Anschluss analysiert.

    Die Aufgabe dieser Arbeit ist es, ein Umfeld zu entwickeln mit dem es möglich ist ein System zu analysieren. Dieses wird dadurch erreicht, dass ein geeigneter Extraktor gefunden und an die Bedürfnisse angepasst wird. Desweiteren wird ein Metamodell definiert, welches Informationen darüber enthält welche Strukturen aus dem System extrahiert werden sollen. In einem Metamodell ist enthalten, wie die Entitäten und Relationen aussehen sollen, die extrahiert werden sollen. Zum Abschluss der Arbeit werden für die entstandenen Graphen mehrere Graphanalysen durchgeführt.

  • 19.06.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Marcel Wilkens:
    Reifeprüfung von Software in Stabilisierungsphasen

    Im Rahmen der Softwareentwicklung durchläuft eine Software vor der produktiven Nutzung im Betrieb eine Reihe von Phasen. So schließt sich nach der Inbetriebnahme üblicherweise eine Stabilisierungsphase an. Ziel dieser Phase ist es das eig. "fertige" Produkt gründlich zu untersuchen und zu überprüfen und somit durch Tests und Fehlerbeseitigung die Stabilität dieser Software zu garantieren. In der Praxis wird eine solche Stabilisierungsphase meist als ein im Vorfeld festgelegter Zeitabschnitt definiert, ohne dabei den tatsächlichen Reifegrad der Software zu berücksichtigen. Dies führt dazu, dass die zuvor festgelegten Pläne ungenau und fehlerhaft sind und deshalb fortlaufend überarbeitet werden müssen. In genau diesem Aspekt wird die Masterarbeit ansetzen, um sich von diesem "klassischen" Vorgehen wegzubewegen und eine Möglichkeit zur tatsächlichen Messung des Reifegrads zu schaffen. Ziel ist es zu untersuchen, an welchen Merkmalen und Größen sich der Reifegrad einer Software in der Stabilisierungsphase messen lässt. Definierende Metriken könnten hierbei z.B. die Anzahl der Änderungen der letzten Woche, die Anzahl und Häufigkeit der offenen Probleme, der Aufwand in Analysen oder die Beratung von Endanwendern darstellen. Mithilfe dieser Kennzahlen sollen sowohl die erreichten Fortschritte in der Stabilisierung der Software laufend dargestellt werden als auch zur realistischen Festlegung des Endes der Stabilisierungsphase beigetragen werden. Es soll entschieden werden, ob die Software mittlerweile stabil läuft, sodass ein geregelter Betrieb möglich ist oder nicht. Ebenfalls können diese Kennzeichen dazu beitragen, abzuschätzen inwieweit sich die Software auf dem erwarteten Pfad der Stabilisierung befindet bzw. an welchen Punkten Maßnahmen ergriffen werden sollten, um einen geregelten Betrieb zu erreichen.

  • 25.05.2012 15:30  ED Colloquium / SE Colloquium A2-2-219
     
    Jan Jelschen:
    Software Evolution Services

    Evolving large software systems comprises the application of many different techniques to analyse, reverse engineer, visualize, and transform software systems. Tools supporting these activities mostly lack interoperability support, and thus need to be wired manually to facilitate desired tasks. This talk proposes describing existing techniques as services, as a prerequisite to create an interoperability framework for software evolution tools.

  • 25.05.2012 15:00  ED Colloquium / SE Colloquium A2-2-219
     
    Mirco Josefiok, Marion Gottschalk:
    Removing Energy Code Smells with Reengineering

    Due to the increasing consumer adoption of mobile devices, like smart phones and tablet PCs, saving energy is becoming more and more important. Users desire more functionality and longer battery cycles. While modern mobile computing devices offer hardware optimized for low energy consumption, applications often do not make proper use of energy-saving capabilities. This talk proposes detecting and removing energy-wasteful code using software reengineering services, like code analysis and restructuring, to optimize the energy consumption of mobile devices.

  • 25.05.2012 14:30  ED Colloquium / SE Colloquium A2-2-219
     
    Dilshod Kuryazov:
    Modeling Deltas

    Software evolution is witnessing the increasing need of complex tools for calculating, visualizing, storing and adapting differences between consecutive versions of software systems on all the levels of development including requirements, design, code, and test. Modern version management systems should offer services to calculate and represent differences, possible merges after modifications, resolution of conflicts on model merging, and efficient store model changes. This talk indents to illustrate use cases to solve aforementioned issues and applies them to concrete application areas. Moreover, the talk will give an overview about the representation of differences between consecutive versions of a software model by a set of Model Transformation rules. Use cases deal with model based software systems and design-level modifications that a software system undergoes throughout its entire life cycle.

  • 25.05.2012 14:00 SE Colloquium A2-2-219
     
    Björn Wolff, Christian Wübbeling:
    Project Group Clonebusters

    The project group 'Clone Busters' tries to identify plagiarism in scientific documents to avoid copying of intellectual property without reference. Therefore, a component-based system using a SCA framework will be developed by the project group. The first version allows an automatic search for references concerning to suspected documents by the search engine Bing. After this, all documents for one plagiarism check get normalized (converted from PDF and HTML to plain-text). Then the plagiarism check starts with a simple String-Matching algorithm called 'Boyer Moore'. The results (comparison of suspected and reference documents and graphics like pie-charts) will be shown in a web-application and can be exported to PDF.

  • 25.05.2012 10:15 Colloquium SE Colloquium A13-0-028
     
    Michael W. Godfrey:
    Squinting at the data: Investigating software artifact provenance using KISS techniques

    “Provenance” is a term from archaeology and the arts that refers to a set of evidence supporting the claimed origin of an artifact, such as a piece of pottery or an oil painting. Recently, the term has been used in an electronic context --- “digital provenance” --- to indicate an artifact such as a software component or set of data, really is what it claims to be and should be permitted to be used within sensitive operating environments. In this talk, I suggest how we can stretch the definition further to encompass "software artifact provenance". That is, for a given software development artifact such as a user-visible feature, a source code function, or a third-party library, we might want to ask the question: Where did this come from and what is the evidence? For example, one might wonder how a given feature was decided upon during a mailing list discussion, how it manifested itself in the code, and how it has been maintained since the initial implementation. For a given function, one might wonder about its history within the design of the system: Was it designed to fit exactly here, or was it moved or cloned from elsewhere? And for a given third-party jar file that has been included in a Java system distribution, one might ask: What version of the library is this, and how do we know?

    In this talk I will sketch some of the ideas behind this work, and show how we might phrase some of these questions in terms of concrete criteria. In particular, we will concentrate on simple techniques for reducing a large search space of candidates down to a small handful that can be examined in detail using more expensive techniques. A concrete example of investigating third-party libraries in Java systems will be presented.

    This is joint work with Daniel German of the University of Victoria, Julius Davies of the University of British Columbia, and Abram Hindle of the University of Alberta.

  • 22.05.2012 16:15 SE Colloquium A2-2-219
     
    Hauke Neemann:
    Object-oriented software development of business process management applications

    A central issue in the creation of ERP systems is the mapping of process-oriented business processes to object-oriented software systems. In particular, an efficient and agile modification of the software systems is necessary when the company’s environment changes, in order to stay competitive on the market. For this purpose, four different approaches for the mapping are analyzed in the master thesis.

    The abovementioned mapping is difficult, because two different views converge. The business processes are modeled in a process-oriented way, and the underlying software systems are developed in an object-oriented way. Because of the different characteristics of these views, an efficient mapping is not possible without much effort.

    The first approach uses an object-oriented business process modeling, in order to reduce the complexity of the mapping on the highest level. The second and the third approach use a totally automated mapping. In the second approach, the business processes are modeled with UML activity diagrams. Then these are mapped automatically to state machines, in order to generate object-oriented program code. The third approach uses workflows and a workflow management system. In the last approach, a service-oriented architecture (SOA) facilitates the mapping, by simulating the process-orientation on software site. However, the components of the SOA are structured in an object-oriented way. All approaches are conceptually analyzed, and the one with the activity diagrams, the one with the workflows and the one with the SOA are implemented in software.

    For the purpose of evaluation and comparison of the approaches, useful quality criteria are identified. The comparison shows that the approaches are very similar, although the concepts are different. Indicators are the continuous usage of a client server architecture, as well as the usage of the same user interface and database for every approach. Furthermore, all approaches use reusable building blocks. The concluding result of this work is that the approach with object oriented business process modeling, is not technically mature enough to apply it and that the approach with the activity diagrams and the approach with the workflows use nearly the same concept. The only difference is the target domain. Because the target domain of the workflow approach suits the domain of this work perfectly, this approach should always be preferred in this context. Moreover, it is discussed why the SOA approach should be preferred in short-term projects with a low budget and why the workflow approach should be preferred in long-term projects with a high budget.

    The presentation will state and illustrate the results of the master thesis.

  • 11.04.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Hauke Neemann:
    Objektorientierte Softwareentwicklung im Kontext des Geschäftsprozessmanagements

    Der Vortrag befindet sich im Kontext des Geschäftsprozessmanagements. Durch die unterschiedlichen Sichtweisen der Betriebswirtschaftslehre (prozessorientiert) und der Informatik (objektorientiert) ist die Automatisierung, bzw. IT-Unterstützung der Geschäftslogik eines Unternehmens nicht ohne Weiteres umsetzbar. Die BWL hält an der Prozessorientierung fest, da die Anwender mit diesem Konzept vertraut sind und die Informatik will die Vorteile der Objektorientierung im Bereich der Entwicklung nicht aufgeben. Problematisch bei der Verknüpfung der beiden Sichtweisen ist, dass die Aktivitäten in der Prozessorientierung sequenziell abgearbeitet werden und die Objektorientierung mit dem Austausch von Nachrichten arbeitet. Durch das Objektkonzept wird in der Objektorientierung sowohl das Verhalten, als auch der Zustand betrachtet und verarbeitet, wobei bei der Prozessorientierung lediglich das Verhalten eine Rolle spielt.

    Für die Verknüpfung der Geschäftsprozessmodellierung mit der objektorientierten Softwareentwicklung werden in der Arbeit vier Lösungsansätze vorgestellt: die Geschäftsprozesse werden bereits objektorientiert modelliert, die Lücke wird geschlossen, indem die Aktivitäten der Prozesse direkt auf die Komponenten abgebildet werden oder die Lücke wird mit Hilfe von Workflows oder einem service-orientierten Ansatz gefüllt.

    Im Vortrag wird der aktuelle Stand der Masterarbeit präsentiert.

  • 03.04.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Dilshod Kuryazov:
    Evolution of Integrated software models: Use cases overview

    Software evolution is witnessing the increasing need of complex tools for calculating, visualizing, storing and adapting differences between consecutive versions of software systems on all the levels of development including requirements, design, code, and test. Modern version management systems should offer services to calculate and represent differences, possible merges after modifications, resolution of conflicts on model merging, and efficiency store model changes. This talk indents to illustrate use cases to solve aforementioned problems and applies them to concrete application areas. Use cases deal with model based software systems and design-level modifications that a software system undergoes throughout its entire life cycle.

  • 13.03.2012 16:15  ED Colloquium / SE Colloquium A2-2-219
     
    Jan Jelschen:
    Towards Applying Reengineering Services to Energy-Efficient Applications

    Conserving resources and saving energy has become an important issue for information and communication technology. With increasing adoption of smartphones and tablet PCs, reducing energy consumption in mobile computing is of particular significance. User expectations towards their mobile devices are rising, and functionality is increasing. Accordingly, available energy is made a scarce resource. This talk discusses how software reengineering techniques, like dynamic analysis and refactoring, can be applied to the field of energy-aware computing, to monitor, analyze, and optimize the energy profile of mobile applications and devices.

  • 06.03.2012 17:00 SE Colloquium A2-2-219
     
    Michael Falk:
    Messen und Beeinflussen des Energieverbauchs in Android-Systemen

    Da mobile Endgeräte leistungsfähiger werden und mehr Energie verbrauchen, wird das Thema Energieeffizienz immer wichtiger. Aktuell fehlt es aber noch an Techniken und Methoden, um auf hoher Ebene, zum Beispiel auf Applikationsebene, effizient Energie zu sparen. Um zu sehen, an welchen Stellen Energie gespart werden kann, ist es erst einmal notwendig, den Energieverbrauch messen zu können. Am Beispiel von Android soll dieser Vortrag einen Einblick geben, welche Möglichkeiten bereits vorhanden sind, den Energieverbrauch zu messen und zu beeinflussen.

  • 28.02.2012 16:15 SE Colloquium A2-2-219
     
    Maxat Kulmanov:
    Synchronization of Software Evolution Repositories

    Interoperability of tools is recognised as a key issue in the evolution of large scale systems. However, due to the heterogeneity in today's software evolution repositories, providing performant software analyses, it is difficult to integrate tools into a consistent and interoperable whole. This presentation will discuss a synchronization approach, so that tools may use synchronized data among all participating tools in software evolution activities. We expect that this approach will enhance the interoperability between tools for metrics, refactoring, redocumentation and other software evolution activities.

  • 07.02.2012 17:00 SE Colloquium A2-2-219
     
    Dilshod Kuryazov:
    Modeling in Computer Science
    Software engineers can benefit from modeling by getting a better understanding of the vast diversity of software systems that can be modeled. Being aware of the nature, purpose, types of software models, meta-models, and modern approaches of modeling is beneficial for researchers and students in software engineering community. The talk intends to bring the audience into the visual world of modeling and to help to imagine the concepts of current modeling tools.

  • 24.01.2012 17:45 SE Colloquium A2-2-219
     
    Marion Gottschalk:
    Specialized Processors for the energy-efficient Use of Applications
    The performance of processors has increased dramatically since the first processor. At the same time the processors can perform more complex functions than before. This is important for the adoption of mobile devices so as to achieve the wishes of users. However the performance has its price: high power consumption. Due to the basis of the complex functions, which a processor should complete, much power is used. This power comes from the battery of the mobile devices. In order for the performance of the processors to continuously rise, the battery life must be increased. Another approach is to optimize the processor, so that the same functions could be perform as before, but with a decreased power consumption. The processor optimize should be the main theme in this work.

  • 24.01.2012 16:45 SE Colloquium A2-2-219
     
    Cosmin Pitu:
    Energy Aware Computing
    With the enviromental impact of IT&C steadily growing, movements such as Green IT try to reduce the carbon footprint of the computing industry. One of the forerunning fields within this spectrum is Energy-Aware Computing. By delving into optimizations within the areas of Hardware and Software, Energy-Aware Computing strives to raise awareness regarding increased energy efficiency of applications. Throughout this presentation, the vision of achieving system-wide energy efficiency will be presented, outlining the current state of research within the aforementioned domain.

  • 24.01.2012 16:00 SE Colloquium A2-2-219
     
    Mirco Josefiok:
    Towards an Energy Abstraction Layer
    Applications in mobile computing are nowadays more and more important. Increasingly complex tasks are handled on the go. But there is lack power saving techniques regarding applications and user behaviour. This paper will lay out the basics for a layer between the operating system and applications to pass more of the operating system power saving capabilities to the application layer.

  • 10.01.2012 16:15 SE Colloquium A2-2-219
     
    Florian Postel:
    Qualitätssicherung der Entwicklungsprozesse einer langlebigen Branchensoftware für die Sozialwirtschaft

    Die Entwicklungsprozesse einer langlebigen Branchensoftware bedürfen einer kontinuierlichen Qualitätssicherung. Auftretende Probleme müssen benannt, die Ursachen gefunden und analysiert werden.

    Diese Diplomarbeit verfolgte dazu zwei Ziele: Erstens wurde ein Verfahren zur systematischen Qualitätssicherung von Entwicklungsprozessen entwickelt. Zweitens wurde dieses an einer Gruppe von Symptomen angewendet, die bei der täglichen Arbeit in den Abläufen der Entwicklungsabteilung eines Unternehmens beobachtet wurden. Dieses Unternehmen entwickelt eine Branchensoftware für die Sozialwirtschaft. Als Ergebnis der Verfahrensanwendung wurde eine Lösungsstrategie entwickelt und exemplarisch umgesetzt, die eines der Probleme des Unternehmens beseitigen kann. Die Verfahrensanwendung diente außerdem der Validierung der Verfahrensentwicklung und somit der Erfüllung des ersten Ziels.

    Für diese Aktivitäten wurden die speziellen Belange des Unternehmens aus dem Bereich Kleinere und Mittlere Unternehmen berücksichtigt, die sich insbesondere in den begrenzt zur Verfügung stehenden materiellen und personellen Ressourcen ausdrücken. Auch wurde ein besonderer Wert auf die Zusammenarbeit mit den betroffenen Mitarbeitern gelegt, da deren Akzeptanz für eine erfolgreiche Verbesserung essentiell war.


2011
  • 13.12.2011 17:00 SE Colloquium A2-2-219
     
    Maxat Kulmanov:
    Synchronization of Software Evolution Repositories

    Interoperability of tools is recognised as a key issue in the evolution of large scale systems. However, due to the heterogeneity in today's software evolution repositories, providing performant software analyses, it is difficult to integrate tools into a consistent and interoperable whole. This presentation will discuss a synchronization approach, so that tools may use synchronized data among all participating tools in software evolution activities. We expect that this approach will enhance the interoperability between tools for metrics, refactoring, redocumentation and other software evolution activities.

  • 13.12.2011 16:15 SE Colloquium A2-2-219
     
    Oliver Beck:
    Eine grafische Benutzeroberfläche für ein XML-basiertes Web Content Management System

  • 18.10.2011  Conference Wellington, New Zealand
     

    Modeling Systems plays an important role in todays software development and evolution. Modeling provides goal-oriented abstractions in all phases of software development, which requires deep knowledge on modeling techniques and broad experiences in applying these techniques. Today, Software Engineering is supported by various modeling techniques, providing modeling languages, modeling language definition technologies, and model transformation technologies. Industry and academia successfully realized expressive modeling and meta modeling languages and mature tools for the practical application.
    The Educators' Symposium at MODELS focusses on discussing teaching these technologies to software engineers at universities and software industries. Although most computer science curricula include some education in modeling technologies and therefore provide the basic building blocks for modeling, meta modeling, and model transformation, the whole spectrum of modeling in software engineering is rarely captured.

  • 27.09.2011 16:00 SE Colloquium A2-2-219
     
    Timo von der Dovenmühle:
    Integration von Kennzahlsystemen in UDDI zur Entscheidungsunterstützung bei der Komposition serviceorientierter Architekturen.

    Die Realisierung einer serviceorientierten Anwendung wird von vielen Kriterien beeinflusst, die nicht allein technisch begründet sind. Die Anforderungen verschiedener Interessengruppen spielen eine wichtige Rolle, wenn es um die Auswahl geeigneter Serviceanbieter geht.

    Der Prozess der Auswahl eines geeigneten Services ist häufig nur in geringem Maße automatisiert. Wichtige Kriterien wie beispielsweise Service Level Agreements liegen als Vertrag vor, sodass diese Informationen nur manuell einbezogen werden können. Als Folge ist die Adaptierung neuer Services in ein bestehendes System mit großem Aufwand verbunden.

    Diese Arbeit beschäftigt sich mit der Frage, wie vorhandene Elemente einer serviceorientierten Architektur verändert werden müssen, damit die Anforderungen verschiedener Interessengruppen berücksichtigt werden können, ohne wesentliche Eingriffe in existierende Software durchführen zu müssen. Dies wird am Beispiel einer Enterprise Resource Planning Software dargestellt.

  • 20.09.2011 16:15 SE Colloquium A2-2-219
     
    Florian Postel:
    Qualitätssicherung der Entwicklungsprozesse einer langlebigen Branchensoftware für die Sozialwirtschaft

    Der Vortrag stellt den Halbzeitstand einer Diplomarbeit vor, deren Ziel das Erkennen, Bewerten und Beherrschen von Risiken bzw. Problemen eines mittelständischen Softwareunternehmens ist. Das Unternehmen entwickelt eine langlebige Branchensoftware für die Sozialwirtschaft.

    Die Entwicklung einer langlebigen Branchensoftware bedarf einer konsequenten Qualitätssicherung. Insbesondere die Langlebigkeit führt dabei zu einer Reihe von Herausforderungen. Die qualitativen und funktionalen Anforderungen sowohl an die Software als auch an die organisatorischen Rahmenbedingungen ändern sich innerhalb der Produktlebensdauer. Dies kann zu Phänomenen wie beispielsweise Softwareerosion führen, die negative Auswirkungen auf die Softwarequalität haben. Außerdem können sich über die Zeit auch die Auswirkungen kleinerer Probleme und Ungenauigkeiten in den Prozessen und Produkten potenzieren und somit zu erfolgsgefährdenden Problemen entwickeln.

    Im ersten Schritt zur Zielerreichung der Diplomarbeit wurden die Problemfelder eingegrenzt, auftretende Symptome systematisch erfasst und eine Auswahl für die Durchführung weiterer Schritte getroffen. Für die ausgewählten Symptome wurde eine detaillierte Problemerhebung und Ursachenanalyse vorgenommen.

    Die Ergebnisse der Analyse sollen vorgestellt und diskutiert werden, um die noch durchzuführenden Schritte zu unterstützen. Zunächst soll eine geeignete Lösungsstrategie festgelegt und eine Lösung für das analysierte Problem entwickelt werden. Zur Validierung der Strategie soll die Lösung exemplarisch umgesetzt werden. Bei Erfolg kann das entwickelte Verfahren im Anschluss an die Arbeit als Blaupause zur Lösung der anderen beschriebenen Probleme angewendet werden.

  • 21.06.2011 16:15 SE Colloquium OpenText (Ammerländer Heerstr. 138, 1. Stock)
     
    Damaris Lahl:
    Entwicklung eines generischen Ansatzes zur plattformunabhängigen Instrumentierung von Code

    Die Trennung verschiedener Fachlichkeiten innerhalb einer Anwendung gehört zu den wichtigsten Softwareprinzipien. Auf einer einzelnen Plattform kann sie mit Hilfsmitteln der aspektorientierten Programmierung - einer Erweiterung der objektorientierten Programmierung - erreicht werden. Dazu wird Code einer bestimmten Fachlichkeit, der mit der objektorientierten Programmierung noch andere Fachlichkeiten durchziehen würde, in der aspektorientierten Programmierung isoliert implementiert und erst zur Kompilier- oder Laufzeit an die entsprechenden Stellen im Code der anderen Fachlichkeiten instrumentiert.

    Mit dem entwickelten generischen Ansatz kann die Instrumentierung plattformunabhängig beschrieben werden. Die dazu geschaffene domänenspezifische Sprache enthält alle nötigen Elemente zur Darstellung des einzufügenden Codes und der Stellen im Quellcode der Anwendung, an denen dieser Code eingefügt werden soll. Durch Transformationen wird die entwickelte Sprache in Code von plattformabhängigen Programmiersprachen umgewandelt und die Instrumentierung mit den Hilfsmitteln der aspektorientierten Programmierung durchgeführt.

  • 20.06.2011 14:00 Colloquium A1 0-004
     
    Carl Worms:
    CREDIT SUISSE AG
    A Lecture from Real World: IT Management in a Global Bank

    The lecture consists of two parts:
    In the first, the particular situation of data centers in the financial industry is described and, with the successful example of Credit Suisse, how IT Architecture supports the management of large application landscapes.
    The second shows the importance of integration architecture for such large application landscapes, in particular the evolution of SOA services in the environment of a large global enterprise.

  • 14.06.2011 16:15 SE Colloquium A2-2-219
     
    Lama Balloul:
    Interface Life Cycle Management for system landscape

    Enterprise Resource Planning are designed to cover several functional units in Enterprises. However, not all companies are using a single integrated ERP system for all their business functions, rather a mixture of ERP system and other third-party software systems.

    These systems need to interact with each other via interfaces to transfer information and achieve the objectives of the enterprise.According to a survey from Gartner Group, around 40% of IT budgets are spent on implementing and maintaining interfaces.

    Many companies suffer from lack of knowledge about available interfaces and their dependencies In fact, underestimating these dependencies could lead to disasters, from which business processes can be affected and as a result can end up with high penalty and big loss.

    To control the risk associated with interfaces and manage the latter in better way, I would like to present my course of action which is Interface Life Cycle Management. I go through it by identifying the interfaces and their characteristics in a landscape and assigning them to the corresponding phases in their life cycle. The interfaces are stored in a graph database, whose features are useful for answering the questions during the analysis. The characteristics of interfaces are weighted in a way to comprise the basement for risk assessment. At the end of this thesis, the results will be evaluated through comparing the costs of interfaces and by applying tests on the proposed solution.

    The objectives of my thesis are:

    • to provide a repository with relevant information about the available interfaces
    • to support IT Manager in decision making regarding the implementation and re-engineering of the interfaces
    • to reduce costs by deactivating the redundant interfaces, cancelation of maintenance contracts and reusing the existing interfaces
    • to support the consolidation of the system landscape in terms of interfaces

  • 27.05.2011 14:00 Disputation Universität Kiel, LMS2 R.Ü2/K
     
    Niels Streekmann:
    Clustering-Based Support for Software Architecture Restructuring

    The modernisation of existing software systems is an important topic in software engineering research and practice. A part of the modernisation of software systems is the restructuring of their architecture. This has to be done in numerous contexts, including the evolution to service-oriented architectures, the re-establishment of the maintainability of a system or the smooth migration of a system to a new development environment. Architecture restructurings are coarse-grained changes to the internal structure of the system that are performed in temporally limited projects. The planning of the transfer of a existing implementation to the target architecture of a system is currently a mostly manual task. While the analysis of the existing system is supported by e.g. architecture reconstruction approaches, the actual restructuring process is not supported by current approaches.
    The MARE approach, which is introduced in this thesis, was developed to provide support for the stepwise restructuring of the implementation towards a target architecture. MARE supports architecture restructurings by semi-automatically creating a complete mapping of elements of the existing implementation to components of the target architecture. The creation of the mapping bases on explicit knowledge about the target architecture and its decomposition criteria. MARE employs graph clustering to implement the creation of the complete mapping.
    The MARE Method describes an iterative process model for the overall architecture restructuring process. It emphasises the target architecture as the basis for the architecture restructuring. The iterations of the process model allow for a stepwise restructuring of the system and the integration of human influence on the result of MARE.
    The clustering algorithm employed by MARE to create the complete mapping bases on agglomerative hierarchical clustering. It is adjusted to incorporate knowledge about the target architecture. The decomposition criteria are considered by the definition of weights for the different types of dependencies that relate the elements of the existing implementation.
    The MARE approach was evaluated in three case studies. These examined the application of MARE in small and middle-sized open source projects as well as for an industrial system with 3.5 million lines of code. The main goal of the evaluation is to show the quality and stability of the clustering algorithm. It furthermore shows the influence factors for the creation of the complete mapping.

  • 18.05.2011 12:30 Colloquium BIS Saal
     
    Patricia Burkert-Espich, Sandra Hofmann:
    Gastvortrag zum Thema „Aufwandsschätzung in einer neuen Dimension – Integrierte Methodische Estimierung der Cost Xpert“

    Aktuelle Studien belegen, dass der Einsatz von Schätzmethoden ein elementarer Erfolgsfaktor für IT-/Softwareprojekte ist (VSEK, 2006). Cost Xpert entwickelte die Integrierte Methodische Estimierung (IME) als intelligente und ganzheitliche Lösung für die Realisierung werthaltiger IT Projekte in »Time&Budget«. IME stellt die zuverlässige Schätzung von Aufwand, Zeit, Ressourcen und Kosten sowie potentielle Risiken, Fehler und den Dokumentationsumfang über den gesamten Lifecycle von IT Applikationen sicher. Die Cost Xpert Tool Suite repräsentiert den aktuellen Stand der IME in einem intuitiv bedienbaren Standardtool für realistische Schätzungen. Der erste Teil der Veranstaltung gibt einen Einblick in parametrische Schätzmethoden, die Lösung von Cost Xpert (IME) und deren Mehrwert und Nutzen für die Kunden. Im zweiten Teil wird anhand eines reellen Kundenprojekts aufgezeigt, wie mit der Cost Xpert Tool Suite eine Schätzung durchgeführt wird und welche Ergebnisse der Kunde erhält.

  • 17.05.2011 17:00 SE Colloquium A2-2-219
     
    Niels Streekmann:
    Clustering-Based Support for Software Architecture Restructuring

  • 02.05. - 04.05.2011  Conference Bad Honnef
     

    Software Reengineering comprises all activities that aim at examination and alteration of a software system to reconstitute it in a new form. The main goal of the Workshop Software Reengineering (WSR) is to bring together different working groups from academia and industry that work in the fields of software reengineering and maintenance. Everyone working in this field is invited to present his/her current activities or results. Practitioners' experience reports are as welcome as scientific projects and results.

  • 21.04.2011 16:15 SE Colloquium A2-2-219
     
    Jan Jelschen:
    Towards a Catalogue of Software Evolution Services

    Evolving large software systems comprises the application of many different techniques to analyse, reverse engineer, visualize, and transform software systems. Tools supporting these activities mostly lack interoperability support, and thus need to be wired manually to facilitate desired tasks. This talk proposes describing existing techniques as services, as a prerequisite to create an interoperability framework for software evolution tools.

  • 12.04.2011 16:15 SE Colloquium A2-2-219
     
    Yvette Teiken:
    AutoMAIS - Automatisierte Modellgetriebene Analytische Informationssysteme

    Analytische Informationssysteme dienen der Entscheidungsunterstützung in Organisationen. Technisch handelt es sich dabei um integrierte Datenbestände aus inhaltlich und technisch unterschiedlichen Systemen. Verwendet werden Analytische Informationssysteme von Entscheidern einer Organisation, die mit deren Hilfe komplexe Analysen durchführen und darauf aufbauend Ihre Entscheidungen treffen. Analytische Informationssysteme sind komplexe Software-Systeme, deren initialer Aufbau zeitaufwändig und kostenintensiv ist. In einem solchen System müssen unterschiedliche technische Aspekte und Abstraktionsniveaus beachtet werden. Auf Grund dieser Herausforderungen ist es sehr aufwändig, eine integrierte Sicht auf den initialen Aufbau solcher Systeme zu ermöglichen.

  • 15.03.2011 16:15 SE Colloquium A2-2-219
     
    Florian Postel:
    Evaluation des halbautomatischen Verfahrens zur modellbasierten Architekturrestrukturierung (MARE)

  • 03.03. - 04.03.2011  Conference Oldenburg
     

    The European Conference on Software Maintenance and Reengineering (CSMR), the premier European conference on the theory and practice of maintenance, reengineering and evolution of software systems, promotes discussion and interaction among researchers and practitioners about the development of maintainable systems, and the evolution, migration and reengineering of existing ones. We invite people from industry, industrial research and academia to submit papers or experience reports. This conference is not limited to European participants. Authors from outside Europe are also welcomed.

  • 22.02.2011 16:15 SE Colloquium A2-2-219
     
    Christian Zillmann:
    The SOAMIG Process Model in Industrial Applications

    The SOAMIG Project aims at a general migration process model with an emphasis on transformation-based conversion. The SOAMIG Process Model is divided into several phases and disciplines, which describe and organize general migration activities. The process is applied in two industrial software migration projects addressing architecture and code migration.

  • 25.01.2011 16:15 SE Colloquium A2-2-219
     
    Damaris Lahl:
    Entwicklung eines generischen Ansatzes zur plattformübergreifenden Instrumentierung von Code

    Die Trennung von Belangen bei der Implementierung gehört zu den Prinzipien der Softwareentwicklung. Mit der aspektorientierten Programmierung wurde die objektorientierte Programmierung um die Möglichkeit erweitert, auch Belange wie Logging, Transaktionen und Fehlerbehandlung isoliert zu entwickeln, die sich vorher nicht vom Code anderer Funktionalitäten trennen ließen. Die Werkzeuge dieses Programmierparadigmas sind jedoch auf bestimmte Plattformen, wie beispielsweise Java und .NET, spezialisiert und unterscheiden sich in ihrer Arbeitsweise. Werden verschiedene Plattformen verwendet, müssen auch Belange getrennt voneinander verwaltet werden, bei denen einheitliche Vorgaben von Vorteil sind. Ein Beispiel sind einheitliche Logging-Dateien, die sich besser analysieren lassen.

    Das Ziel dieser Arbeit ist die Entwicklung eines Ansatzes, mit dem beliebiger Code in bestehende Anwendungen eingefügt werden kann. Das Hinzufügen von Codeteilen zum Code einer Anwendung wird auch Instrumentierung genannt. Der Ansatz soll auf beliebige Plattformen erweiterbar sein, wobei die einzufügenden Codeteile und die Anwendung weiterhin plattformspezifisch entwickelt werden, die Beschreibung der zu erweiternden Stellen im Code einer Anwendung und die dort einzufügenden Funktiuonalitäten jedoch plattformunabhängig erfolgt.

    Im Vortrag wird dieses Vorhaben vorgestellt und die Verwendung von Werkzeugen der aspektorientierten Programmierung zur Instrumentierung des Codes sowie der Verwendung einer noch im Rahmen dieser Arbeit zu entwickelnden domänenspezifischen Sprache für die plattformunabhängigen Beschreibungen diskutiert.

  • 19.01.2011 14:00 SE Colloquium Universität Bremen, MZH 1400
     
    Ira D. Baxter:
    DMS: Software Tool Infrastructure

    Software systems continue to grow in size, complexity, and heterogeneity of structure. Manual methods for designing, implementing, and modifying software systems are becoming less effective. Tools to analyze application code to extract low level details ("static analysis") or architecture are becoming increasingly necessary. But the purpose of analysis is to support *change*. This talk will describe the DMS Software Reengineering Toolkit, a general purpose source code analysis and transformation system.

    DMS is a kind of generalized compiler, parameterized by language descriptions, analysis tasks and modification tasks, with mature language front ends for C, C++, C#, Java, Python, COBOL and a number of other languages, allows DMS to be applied to a wide variety of analysis and transformation tasks. DMS provides a kind of amortized infrastructure for tools in the same way that an OS provides amortized infrastructure for conventional application software; without the infrastructure, the cost of tools is much higher and delivery times are much longer. Its generalization allows also DMS to be used for an amazing variety of software engineering tasks.

    This talk will cover briefly the inspiration behind DMS: capturing and reusing *design* information, to provide an incremental model of software construction and maintenance.

    The talk will provide some description of the DMS infrastructure, including a program transformation system, a flow analysis engine, and parallel execution foundations. We will discuss a number of applications, including fully automated conversion of the mission software an aircraft, large-scale architecture restructing of a C++ application system, architecture extraction for mainframe software, test coverage, as well as duplicate code detection.

    We will end with some discussion about what is difficult to do with tools like DMS: first-principals specifications, reasoning about software configurations, deep inference, acquisition of sufficient knowledge to enable broad use, and learning curve skills.

    Biography:

    Dr. Baxter is CEO and CTO of Semantic Designs, Inc., the company behind the DMS toolkit. He has been involved with computing since 1966, working with digit circuits. He discovered software in 1967 and learned to program on IBM 1401 and 1620s. He implemented one of the first commercial minicomputer timesharing systems on a Data General Nova in 1970, before receiving his B.S. in Computer Science (1973). In 1976, he started Software Dynamics, a systems software house, where he designed compilers, time-sharing and distributed network operating systems. The similarity in concepts and dissimilarity in implementation of the various OSes suggested that managing designs was key to managing long-lived software systems, and turned Ira's interests towards deeper software engineering research. In 1990, he received a Ph.D. in Computer Science from the University of California at Irvine, where he studied Software Engineering, focusing on design reuse using transformational methods. Dr. Baxter spent several years with Schlumberger, working on a PDE-solver generator for CM-5 supercomputers (Sinapse). He was consulting Research Scientist for Rockwell International, focusing on industrial control automation software engineering tools for several years.

    In 1995, he founded Semantic Designs, to build commercial tools that will radically improve the methods and economics of software enhancement and maintenance. Dr. Baxter is the architect and one of the main implementers of DMS, and the architect and implementer of the PARLANSE parallel programming language. At Semantic Designs, he provides consulting to Fortune 100 companies on automated software analysis, transformation and domain-specific synthesis methods. For the last decade, he has been SD's principal management, supporting marketing and sales, and provides project vision, management and technical architecture to SD's large custom-software customers.

    His shoe size is 11 1/2.


2010
  • 14.12.2010 15:30 SE Colloquium A2-2-219
     
    Yvette Teiken:
    AutoMais

    In dem Dissertationsvorhaben AutoMais geht es darum, automatisierte modellgetriebene Analytische Informationssysteme bereit zu stellen. Bei Analytischen Informationssystemen handelt es sich um komplexe Software-Systeme, die der Analyse und Entscheidungsunterstützung einer Organisation dienen. Der initiale Aufbau eines solchen Systems ist zeitaufwändig und somit kostenintensiv. Ziel des Vorhabens ist es, den Prozess des initialen Aufbaus in Aspekte zu zerlegen. Jeder dieser Aspekte wird mit einer eigenen Sprache beschrieben. Alle Sprachen werden über ein gemeinsames Metamodell integriert. Dies hat den Vorteil, dass ein einzelner Aspekt adäquat beschrieben werden kann und trotzdem globale Aussagen über das zu realisierende System getroffen werden können. Ebenfalls können auf Basis des Metamodells große Teile des Systems generiert werden. Somit ist es möglich, Analytische Informationssysteme effizienter und schneller bereit zu stellen.

    Ziel dieses Vortrag ist es zum Einen das Vorhaben und den aktuellen Stand vorzustellen und zum Anderen den roten Faden des Vorhabens zu testen und zu diskutieren.

  • 17.08.2010 16:15 SE Colloquium A2-2-219
     
    Mirco Josefiok, Mathias Ringe:
    EAM im Gesundheitswesen

    Informationstechnologie im Gesundheitswesen hat sich in den vergangenen Jahren stark gewandelt und entwickelt. Die Anzahl der verwendeten Anwendungen und die zugrunde liegende Infrastruktur haben sich innerhalb der letzten zehn Jahre nahezu verdoppelt.

    Für Einrichtungen im Gesundheitswesen ist es eine Herausforderung mit dieser Entwicklung Schritt zu halten. In anderen Wirtschaftsbereichen hat sich der Ansatz des "Enterprise Architecture Managements" für die Unterstützung bei der Arbeit mit großen Unternehmensarchitekturen bewährt.

    In Zusammenarbeit mit Mitarbeitern eines norddeutschen Krankenhauses wird unter Zuhilfenahme der Werkzeuge EAVis und 3LGM² die aktuelle Unternehmensarchitektur erhoben. Auf Wunsch der Mitarbeiter des norddeutschen Krankenhauses liegt der Fokus dabei auf den Anwendungen und ihren Beziehungen zueinander.

    Ein auf dieser Erhebung aufbauender Vergleich soll klären, welches dieser beiden Werkzeuge für die an sie gestellten Aufgaben besser geeignet ist. Abschließend wird jedoch ein Ausblick auf weitere Möglichkeiten gegeben.

  • 20.07.2010 16:15 SE Colloquium OFFIS D21
     
    Simon Eiterig:
    A Metamodel based approach to generating visualisations

    In diesem Abschlussvortrag eines individuellen Projekts stellt Simon Eiterig seine Ergebnisse vor.
    Die Visualisierung von Elementen und Beziehungen in Modellen mittels geeigneter Darstellungstypen ist eine häufig wiederkehrende Anforderung innerhalb verschiedener Anwendungsbereiche. Zu diesen Anwendungsbereichen gehört auch das Enterprise Architecture Management. Hier spielen Visualisierungen unter anderem für Entscheidungsfindungsprozesse unterschiedlicher Stakeholder eine wichtige Rolle. Daher ist es in diesem Anwendungsgebiet besonders relevant, dass entsprechende Visualisierungen ein Höchstmaß an Flexibilität und Aktualität aufweisen. Dabei soll der Erstellprozess zu dem effizient und intuitiv gestaltet sein. Ziel der Arbeit ist die Entwicklung einer textbasierten domänenspezifischen Sprache (DSL), angepasst an die bestehende Umgebung des EAM Projekts des OFFIS. Mittels dieser DSL sollen Abbildungsvorschriften formuliert werden, die dann durch einen modellgetriebenen Prozess zur Erzeugung eines Visualisierungsmodells verwendet werden. Die Grundlage dieser Arbeit bildet eine aktuelle Veröffentlichung im Rahmen des EAM Forschungsprojekts des OFFIS.

  • 13.07.2010 14:45 SE Colloquium A2-2-219
     
    Asad Gul:
    Application-level Resource (Energy) Consumption Optimization in Software Systems

    Power and energy optimization has become an important concern in system design due to increase in energy prices as well as cooling cost that is required on per watt basis to keep the system away from heat failure. In case of mobile devices, energy optimization is also important due to limited battery life. Conceptually a complete system can be viewed as a composition of three layers. Hardware, OS and application. Power and energy optimization decisions can be made in either layer. My focus is on the application layer as it is directly exposed to the user. User determines application which in turn determines the underlying layers to act accordingly. And because of this an application can best know what their resource and energy requirements are and consequently application can implement better power management policies as compared to the underlying layers.

  • 01.06.2010 16:15 SE Colloquium OFFIS D21
     
    Stefan Gudenkauf:
    Entwicklung einer DSL zur prozessbasierten Verhaltensbeschreibung von Software - Vorgehen und Zwischenstand mit Beispiel

  • 25.05.2010 16:15 SE Colloquium OFFIS D21
     
    Mirco Josefiok, Mathias Ringe:
    Enterprise Architecture Management im Gesundheitswesen

  • 18.05.2010 16:15 SE Colloquium OFFIS D21
     
    Matthias Uslar:
    Standardisierte Referenzarchitektur für das Smart-Grid

  • 27.04.2010 16:15 SE Colloquium OFFIS D21
     
    Christian Zillmann:
    Iterative Zielarchitekturdefinition in SOAMIG

    Software-Migrationen erfordern die Definition von Zielarchitekturen, die die Eigenschaften des neuen Architekturparadigmas weitgehend nutzen, und die die Architektureinschränkungen der zu migrierenden Systeme ausreichend berücksichtigen. Im Rahmen des SOAMIG-Projekts zur Migration in Service-orientierte Architekturen wird ein inkrementelles Vorgehensmodell zur Ermittlung einer solchen Zielarchitektur entwickelt. Der Beitrag beschreibt dieses Vorgehen und skizziert erste Anwendungserfahrungen.

  • 23.04.2010 10:15 Colloquium A13 0-028
     
    Volker Riediger:

    TGraphen (typisierte, attributierte, gerichtete und angeordnete Graphen) sind eine sehr generelle Klasse von Graphen, die die Formalismen vieler grundlegender Graphmodelle integrieren und erweitern. TGraphen basieren auf einer präzisen mathematischen Definition.

    Die Modellierung von TGraph-Schemas mit grUML (Graph UML) bildet den Ausgangspunkt für die automatische Generierung von lauffähigen anwendungsspezifischen APIs zur Verarbeitung von TGraphen. Der konsequente Einsatz von Metamodellierungs-Techniken ermöglicht dabei gleichzeitig die Realisierung generischer Werkzeuge und Graph-Algorithmen.

    JGraLab ( jgralab.uni-koblenz.de), entwickelt am Institut für Softwaretechnik der Universität Koblenz-Landau, ist eine hocheffiziente Open-Source Java API für TGraphen. Eine nahtlose Integration von Modellierungs-, Repräsentations-, Manipulations-, Anfrage- und Transformations-Technologien erleichtert die Anwendungsentwicklung. JGraLab wird als Repository-Technik in vielen Forschungsprojekten eingesetzt. Im Vortrag werden einige mit JGraLab realisierte Anwendungen vorgestellt.

  • 23.03.2010 16:15 SE Colloquium A2-2-219
     
    Sabina El Haoum:
    Semantische Analyse von Unternehmensmodellen

    Die informationstechnische Unterstützung von Organisations- und Managementstrukturen gehört zu den Hauptaufgabenfeldern der Wirtschaftsinformatik. Die Qualität dieser Unterstützung hängt unter anderem davon ab, inwieweit es gelingt, die verschiedenen in einer Unternehmensarchitektur existierenden Modelle zu bündeln, um eine integrierte Betrachtung zu ermöglichen. Eine wichtige Voraussetzung für die Effektivität einer solchen integrierten Betrachtung besteht in der Kohärenz der Unternehmensmodelle.

    Ziel des vorgestellten Ansatzes ist ein Werkzeug zur Bewertung der Kohärenz von Modellen. Der entsprechende Lösungsansatz ist Teil eines aktuellen Promotionsvorhabens am Lehrstuhl für Business Engineering der Universität Oldenburg, welches im Rahmen des Vortrages präsentiert wird.

  • 09.02.2010 16:15 SE Colloquium A2-2-219
     
    Steffen Kruse:
    Co-Evolution of Metamodels and Model Transformations

    Supporting the longevity of complex software systems is an ongoing challenge in software engineering. While Model Driven Software Engineering (MDSE) provides suitable methods to handle the growing complexity of software systems, the shift from a code centric to a partitioned view of systems introduces a host of new types of artefacts like models, metamodels, DSLs and model transformations. To enable the long-term viability of a model-driven approach, the global concern of evolution has to be tackled for the model driven system and the different artefacts it comprises.

    It is in this light that this talk proposes the research topic of co-evolving metamodels and model transformations as a contribution to the model driven effort.

  • 26.01.2010 16:30 SE Colloquium A2-2-219
     
    Niels Streekmann:
    Modellbasierte Architekturrestrukturierung - Evaluation des Ansatzes

    Architekturrestrukturierung ist Restrukturierung der impliziten Architektur eines Softwaresystems hin zu einer Zielarchitektur. Im Vortrag wird ein modellbasierter Ansatz zur Architekturrestrukturierung vorgestellt. Der Schwerpunkt liegt dabei auf der Planung und der Durchführung der Evaluation des Ansatzes. Es werden erste Ergebnisse aus einer initialen Fallstudie und einem industriellen Restrukturierungsprojekt vorgestellt. Darauf aufbauend sollen die noch folgenden Schritte der Evaluation beschrieben und diskutiert werden.

  • 19.01.2010 16:15 SE Colloquium A2-2-219
     
    Stefan Gudenkauf:
    A Coordination-Based Model-Driven Method for Parallel Application Development

    A continuous trend in computing is the demand for increasing computing performance. With the advent of multi-core processors in the consumer market in 2005, parallel systems have moved out of the scientific niche and became a commodity. This raises the need to exploit concurrency in software of all kinds and domains, whether distributed or not. Unfortunately, the majority of software developers today are short on parallel programming experience, and our current abstractions are harder to program than necessary because they are enormously nondeterministic and make it necessary to cut away unwanted nondeterminism instead of careful introduction. Even though many concepts of parallel programming are sound, parallel software engineering practice is still immature, and traditional parallel programming communities are solely concerned with increasing performance but not software engineering in general. At least in the near future there will be no tools and techniques to fully exploit concurrency automatically. Software developers will have to address concurrency explicitly and from the very beginning of application development.

    This talk presents the current status of a PhD study that regards the coordination model of a parallel system as the first development artifact. To address the need for higher abstractions and to facilitate reuse, we propose a top-down method that hierarchically separates coordination from computation. Ordinary software developers are supported in the development of parallel applications by combining coordination modeling with model-driven development.


2009
  • 15.12.2009 16:15 SE Colloquium A2-2-219
     
    Matthias Postina:
    Ein EA-zentriertes Vorgehen zur Evolution einer SOA

    Das Paradigma der serviceorientierten Architektur hält Einzug in immer mehr Unternehmensanwendungslandschaften, besonders dann, wenn es darum geht, fachliche Anforderungen an die IT schnell und effizient umzusetzen. Hersteller von Fachmodulen und Infrastrukturprodukten wie beispielsweise IBM (Web-Sphere) und SAP (SAP NetWeaver mit Composition Environment) haben sich längst mit entsprechenden Produkten wie Enterprise Servicebussen, Workflowengines und Servicerepositories am Markt positioniert. Dennoch hält sich die Anzahl der Anwendungslandschaften, die sich nahtlos und vollständig serviceorientiert zusammensetzen, stark in Grenzen. Meistens beschränken sich SOA-Fallstudien und -Projekte auf eingeschränkte Bereiche der Anwendungslandschaft eines Unternehmens. Somit gibt es wenig Erfahrung mit langfristigem Betrieb und der Evolution solcher modernen Anwendungslandschaften, und es ist zu erwarten, dass diese sich im Aufbau befindlichen und komplexen Gebilde ohne geeignete Managementmethoden und Toolsupport nicht beherrschbar sein werden. An dieser Stelle setzt dieses Promotionsvorhaben auf, indem ein unternehmensarchitektur- zentriertes (Enterprise Architecture – EA) Vorgehen entwickelt wird, um die Evolution einer serviceorientierten Architektur zu unterstützen. Dazu wird im Rahmen dieser Arbeit ein Vorgehensmodell zur Entwicklung und Etablierung eines intelligenten Servicerepositories eingeführt und im Rahmen einer Machbarkeits- studie evaluiert.

  • 08.12.2009 16:15 SE Colloquium A2-2-219
     
    Philipp Gringel (OFFIS):
    SOAMIG - Projektvorstellung

    Das SOAMIG-Projekt beschaeftigt sich mit der Migration von Legacy-Systemen in service-orientierte Architekturen (SOA). Legacy Systeme werden u.a. charakterisiert durch eine veraltete Architektur, fehlende oder unvollstaendige Dokumentation, Veränderungen, die über Jahre und Jahrzehnte durch Wartungen und Anpassungen an sich ändernde Anforderungen entstanden sind sowie Wartungs-Programmierer, die bei der Entwicklung der ursprünglichen Systeme nicht beteiligt waren.
    Solche Systeme beinhalten jedoch für viele Unternehmen kritische Geschäftslogik. Diese Legacy-Systeme oder das in ihnen enthaltene Wissen über die Geschäftsprozesse in eine SOA zu überführen ist ein Ziel des Projektes SOAMIG. Weitere Ziele sind die Erstellung und Dokumentation einer Vorgehensmethode zur Migration von Legacy-Systemen in eine SOA durch Transformation, sowie die Entwicklung und Evaluation von Werkzeugen, die bei der Methode zum Einsatz kommen. Der Vortrag gibt einen Überblick über die Projektziele und beteiligten Projektpartner. Im Besonderen wird auf den aktuellen Stand der Methode zur Realisierung der Transformation der Legacy-Systeme in eine service-orientierte Architektur eingegangen.

  • 08.12.2009 16:15 SE Colloquium A2-2-219
     
    Michael Godfrey (Univ. Waterloo):
    The Past, Present, and Future of Software Evolution

    As Fred Brooks famously noted, change is an essential characteristic of software development, as software systems must respond to evolving requirements, platforms, and other environmental pressures. In this talk, we discuss the concept of software evolution from several perspectives. We examine how it relates to and differs from software maintenance. We discuss insights about software evolution arising from Lehman's laws of software evolution and the staged lifecycle model of Bennett and Rajlich. We compare software evolution to other kinds of evolution, from science and social sciences, and we ex-amine the forces that shape change. Finally, we discuss the changing nature of software in general as it relates to evolution, and we propose open challenges and future directions for software evolution re-search.
    This is joint work with Prof Daniel German of the University of Victoria, and is based on an invited paper for the Frontiers of Software Maintenance track at the 2008 IEEE International Conference on Software Maintenance.

  • 01.12.2009 16:15 SE Colloquium A2-2-219
     
    Matthias Postina:
    Überblicksvortrag zu TOGAF (The Open Group Architecture Framework)

    Das Architecture Framework der Open Group (TOGAF) wurde Anfang dieses Jahres in der Version 9 veröffentlicht. Ziel dieses Oberseminartermins soll es sein, den Teilnehmern einen Überblick zu vermitteln und erste Erfahrungen, die sich aus Schulungsmaßnahmen bez. TOGAF 9 ergeben haben, weiterzugeben.
    Schwerpunkte sollen dabei sein:

    • Architecture Development Method (ADM)
    • Architecture Capability Framework
    • Architecture Content Framework

  • 24.11.2009 16:15 SE Colloquium A2-2-219
     
    André van Hoorn / Robert von Massow(Uni):
    Architecture-Based Online Capacity Management for Increased Resource Efficiency of S/W Systems

    An important quality attribute of today's enterprise software systems is performance. Performance objectives addressing timing behavior metrics such as throughput and response time are part of contractually specified Service Level Agreements (SLAs). Particularly systems accessible through the Internet are exposed to highly varying workloads. The timing behavior of software systems is significantly influenced by the workload conditions. An on-going capacity management strategy is required, in order to continuously satisfy the SLAs. This includes the provision of an appropriate computing infrastructure and the assignment of software components to it. Over the last years, this task was performed rather ad-hoc in a static and pessimistic way by satisfying future infrastructure demands according to a "kill-it-with-iron" mentality. This causes unnecessarily high operating costs during medium or low workload periods.

    André will present his work in progress aiming for increasing the resource efficiency of software systems exposed to highly varying workloads by architectural runtime reconfigurations. Based on continuously updated architectural runtime models, the number of allocated computing resources as well as the deployment of the software components is automatically adapted with respect to current demands and previously specified performance objectives.

    Robert will present the status of his Diploma thesis, entitled "Performance Simulation of Runtime Reconfigurable Software Architectures", which he is currently working on in this project context.

  • 17.11.2009 16:15 SE Colloquium A2-2-219
     
    Raimar Falke (Uni Bremen):
    Softwareklon-Erkennung und Falsch-Positive

    Klonerkennung ist ein Verfahren der Software-Wartung um Redundanzen und Abhängigkeiten in der Software klarer darzustellen. Dieses Wissen kann verwendet werden, um die Aufgaben der Wartung wie Programmverstehen und die Ausführung von Änderungen zu vereinfachen. Die Anwendung von Klonerkennung ist jedoch nicht auf die Wartungsphase beschränkt, wird dort jedoch am stärksten eingesetzt, da sie existierenden Quelltext benötigt. Im Prozess der Klonerkennung wird meist mit Werkzeugen gearbeitet, welche dem Benutzer selbstständig eine Menge von ähnlichen Quelltextfragmenten liefern. Diese Kandidaten werden dann vom Benutzer begutachtet und in Klon und nicht-Klon (Falsch-Positive) eingeteilt. Für die eigentlichen Tätigkeiten ist aber nur die Menge der Klone interessant. Diese Tätigkeiten können z.B. die Dokumentation oder die Entfernung des Klones sein.

    Es zeigt sich, dass der Anteil von nicht-Klonen unter den Kandidaten gross ist. Dieses führt dazu, dass der Benutzer mehr Zeit als notwendig mit der Begutachtung der Kandidaten verbringt.

    Diese Arbeit untersucht, warum die Werkzeuge so viele nicht-Klone liefern und welche Maßnahmen geeignet sind, ihren Anteil zu verringern.

  • 03.11.2009 16:15 SE Colloquium A2-2-219
     
    Steffen Kruse:
    Decoupling Models and Visualisations for Practical EA Tooling

    Rigorous modelling techniques and specialised analysis methods support enterprise architects when embarking on enterprise architecture management (EAM). Yet, while customised modelling solutions provide scalability, adaptability and flexibility they are often in conflict with generic or reusable visualisations. We present an approach to augment customised modelling with the techniques of model transformations and higher-order transformations to provide flexible and adaptable visualisations with a minimum of requirements for the underlying enterprise models. We detail our approach with a proof-of-concept implementation and show how a decoupling can ease EAM approaches and provide appropriate tooling in practice.