Hier finden Sie eine Übersicht über erfolgreich abgeschlossene Bachelor- oder Masterarbeiten. Zum Einsehen des Abstracts, klicken Sie bitte auf das „+“ Symbol.
2020
gesprochen werden. Die Entscheidung ein Cross-Plattform-Framework zu verwenden sollte
gut überlegt sein und individuell analysiert werden. Dadurch ist es am wahrscheinlichsten,
dass eine Fehlentscheidung verhindert werden kann. Eine Entscheidung hat starke Auswir-
kungen auf die Entwicklungszeit und auf den Pflegeaufwand der Anwendung. In dieser
Arbeit wurden verschiedene Formen der Entwicklung von Apps und der dazugehörigen
Frameworks verglichen. Für diesen Vergleich spielte das Startup-Umfeld, welches für die
Anforderungen an die App ausschlaggebend war, eine wichtige Rolle. Die Ergebnisse des
Vergleichs liefern optimale Werkzeuge für das Entwickeln dieser App. Jedoch zeigt diese
Arbeit, dass die Werkzeuge in einem dynamischen Startup-Umfeld nicht immer optimal
bleiben. Die Werkzeuge müssen sich an Änderungen anpassen können und gegebenenfalls
auch ausgetauscht werden. Daher ist es empfehlenswert regelmäßig zu überprüfen, ob die
eingesetzten Werkzeuge aktuell und auf neuestem Stand sind.
mehr Transparenz im Werkzeugmanagement von Bearbeitungszentren. Es werden bewährte Phasen der Softwareentwicklung
durchlaufen inklusive mit einer Auseinandersetzung der Grundlagen von mobilen Endgeräten, deren Betriebssysteme und die
verschiedenen Arten von mobilen Applikationen. Daraufhin folot eine Anforderungsanalyse
mit mehreren Stakeholdern. Im Anschluss werden die Konzeption, die Umsetzung und die
Evaluierung der entwickelten Anwendung durchgeführt.
Durch diese Arbeit wird der Grundstein für eine mobile Anwendımo oeleot die für mehr
Iransparenz im Werkzeugmanagement sorgen und durch Berücksichtigung der Bedürfnisse
der Anwender einen maximalen Mehrwert bieten soll. Über die realisierten Funktionen hinaus
sind weitere Anforderungen definiert, die als Grundlage für die weitere Entwicklung dienen,
sodass die Anwendung zukünftig in der Produktiv-Umgebung verwendet werden kann.
Dies ermöglicht eine bessere Identifikation der Studierenden mit dem Thema Softwareengineering. Das hier entwickelte System beschäftigt sich mit der Simulation sowie Visualisierung von Molekulardynamik. Dabei wird erörtert, wie ein System dieser Art in Softwareengineering Veranstaltungen integriert werden kann, sodass Teilnehmer angeregt werden, sich Kenntnisse dieses Kurses anzueignen. Darüber hinaus muss geklärt werden, welche Kompetenzen in welchen Veranstaltungen benötigt werden, um eine derartige Simulation zu entwickeln. Ziel ist es, den Studierenden die Wichtigkeit von Konzepten des Softwareengineering in der Praxis nahezubringen, um sie zum Lernen zu animieren.
kleinen Software-Firma beschrieben. Das Produkt der Firma ist eine Verwaltungs-
software für Bildungsanbieter, wie etwa Volkshochschulen, geschrieben in PHP. Die
Ausgangssituation ist, dass kaum Tools wie Versionskontrollsysteme oder Portale zur
Code-Kollaboration verwendet werden, es wird lediglich Git für einen kleinen Teil des
vorhandenen Codes eingesetzt. In dieser Arbeit werden die Konzepte um Versionskon-
trollsysteme und Continuous Integration/Continuous Deployment vorgestellt, sowie
die Einführung von Git als Versionskontrollevstem für die komplette Codebasis und die
Auswahl, Installation und Einrichtung des Git-Servers und Kollaborationstools Gitlab
behandelt. Zur Auswahl dieser Software wird eine Nutzwertanalyse erstellt. Zuletzt
wird die Softwareumgebung für die Ausführung einer CI/CD-Pipeline angepasst und
die tatsächliche Pipeline mit vier grundlegenden Schritten erstellt.
typs, um die Registrierung von mobilen Geräten innerhalb eines Mobile Device Management Systems zu erleichtern.
Nachdem im Lauf der Zeit immer mehr Mobilgeräte im unternehmerischen Umfeld für Mitarbeiter eingesetzt werden, erhöht
sich der Aufwand für deren Verwaltung im gleichen Maß. ImRahmen dieser Arbeit wird für diese Situation eine Software
entworfen, welche diesen Vorgang unterstützen soll.
Als Grundlage diente der hierfür bereits vorhandene Prozess für die Geräteregistrierung bzw.
deren Einrichtung. Darauf aufbauend wurden mit den identifizierten Stakeholdern die Anforderungen an die Software
und deren Anwendungsfälle ermittelt. Ausgehend davon wurde anschließend
ein Konzept entwickelt, welches neben einem GUI-Entwurf und geeigneten Architektur-
und Entwurfsmustern auch eine Testplanung enthält. Außerdem wurde hierbei ein Sicherheitskonzept erstellt,
welches die Vertraulichkeit der benötigten Zugangsdaten gewährleisten soll.
Dieses Konzept wurde in der darauffolgenden prototyphaften Implementierung In der Programmiersprache Java weitgehend
umgesetzt und seine Funktionsweise mithilfe der System-
und Komponententests verifiziert, sodass die Applikation bereits von dem MDM-Team verwendet werden kann.
„Wiederverwendung eines Domain-Services in unterschiedlichen
Client-Technologien anhand den MVVM-Patterns“
beschäftigt sich mit der clientseitigen Implementierung des MVVM-Patterns in zwei unter-
schiedlichen Technologien. Anfangs wird das derzeit verwendete Entwurfsmuster MVC mit
MVVM in einer Nutzwertanalyse verglichen. Für JavaFX und Android wird ieweils eine Prototypanwendung auf der Basis einer
Anforderungsanalyse mit gleicher Funktionalität implementiert. Danach werden die Komponenten des MVVM-Patterns genau verglichen, ob
ein Teil wiederverwendbar ist. Abschließend wird noch überlegt, ob es sinnvoll ist zwischen Client und
Domain-Service eine Zwischenschicht zu implementieren.
zum Verwalten von Datenbankverbindungsparametern mithilfe von Webservices“ befasst sich
mit der Neuentwicklung eines Managementtools zur Verwaltung von Zugangsdaten für die
verschiedenen zentralen und dezentralen Server bei Dachser. Die Einträge sollen anhand der
CRUD Funktionen bearbeitet werden können, das heißt, dass Einträge erstellt, gelesen, bear-
beitet und gelöscht werden können. Bevor man aber die CRUD Funktionen verwenden kann,
muss sich der Anwender beispielsweise authentifizieren. Des Weiteren sollen die eigegebenen Werte
auf Richtigkeit kontrolliert werden. Dies sind nur einige der Aufgaben, die die Soft-
ware umsetzen soll. Neben dem Ziel der Neuentwicklung einer Verwaltungsoberfläche, die
eine Verbesserung der Usability anstrebt, sollen noch weitere Anforderungen, die bei der jetzigen
Art der Verwaltung nicht möglich sind, umgesetzt werden.
einer Anwendung für automatisierte Regressionstests für den Datenaustausch“ behandelt Analyse, Konzeption, Entwurf
und prototypische Implementierung eines Entwickler-Werkzeuges für automatisierte Regressionstests im Bereich des
elektronischen Datenaustausches beim Logistikdienstleister DACHSER SE. Die Arbeit erklärt sowohl theoretische
Aspekte zu Softwaretests und Testautomatisierung als auch das Requirements Engineering, Datenbank- und Softwaredesign und
die eingesetzten Frameworks zur Entwicklung der Werkzeuge zur Automatisierung von Regressionstests.
Zum aktuellen Zeitpunkt sind einige Geschäftsprozesse bei DACHSER komplex in der Implementierung und weisen eine
enge Kopplung zwischen den einzelnen Programmen und dem Datenbanksystem auf.
Des Weiteren gibt es viele Sonderfälle, die in Programmen für eine geringe Kohäsion
sorgen, weswegen es mit hohem Aufwand verbunden ist, alle Fälle zu beachten. In dieser Arbeit wird ein Konzept entwickelt,
das die Möglichkeit bieten soll, sowohl die Tests
mithilfe einer graphischen Oberfläche zu konfigurieren, als auch die Tests per Knopfdruck
auszuführen und so sicherzustellen, dass bei einer Änderung der Software der jeweiligen
Schnittstelle die Qualität den Anforderungen entspricht.
2019
Verbesserung von natürlichsprachlichen Anforderungen inhaltlich zu überarbeiten.
Bei dem Werkzeug handelt es sich um das SOPHIST REgelwerk. Dieses REgelwerk
stellt einen syntaktischen Ansatz dar, der auf Basis von syntaktischen Phänomenen
wie beispielsweise Signalwörtern operiert. Zum Zweck einer wissenschaftlichen Informationserhebung wurde eine
Literaturrecherche veranlasst und Interviews durchgeführt. Im Rahmen der Literaturrecherche werden in der
Ausarbeitung weitere syntaktische Ansätze zur Analyse natürlichsprachlicher Anforderungen vorgestellt. Anschließend an
den Abschnitt der Informationserhebung erfolgt die Vorstellung des
überarbeiteten REgelwerks mit Diskussion, Erörterung und Begründungen. Hierbei
werden auch fünf neu erarbeitete Regeln sowie Sichten auf das REgelwerk vorgestellt.
Die Abschlussarbeit „Automatische Erstellung von Testfällen für Webservices“ beschäftigt sich mit der Erstellung eines
Konzepts und der Entwicklung eines Prototypen zur Generierung von automatisierten Integrationstests.
Im Rahmen von IoT-Systemen werden Dienste aus Gründen der Flexibilität in unabhängige Einheiten, sogenannte
Microservices, gekapselt. Meist erfolgt der Zugriff
über Schnittstellen, die dem Architekturmodell Representational State Transfer,
kurz REST, folgen. Anhand der OpenAPI-Spezifikation lassen sich während der
Entwicklung über entsprechende Annotationen Dokumentationen für diese APIs anfertigen.
Diese Schnittstellendokumentationen dienen dem Prototyp als Grundlage für die
Testfallerstellung und liefern alle benötigten Informationen. Nach dem Auslesen der
Dokumentation können nun mit Hilfe des Testing Frameworks REST-assured sowohl
positive als auch negative Integrationstests generiert werden. Durch REST-Aufrufe werden
anschließend alle beschriebenen Services automatisiert getestet.
die in der Logistik als frühzeitige Vorabinformation zu dem zugehörigen Speditionsauftrag zu verstehen ist.
Aufgrund der Tatsache, dass einige Kunden des Speditionsunternehmens
Dachser nicht die etablierten und ausgereiften Übertragungsmöslichkeiten – sprich die EDI-
Avis-Anbindung und die in eLogistics integrierte Anwendung TRO – nutzen, ist die Überführung der Avis-Daten mittels
des Konverters durch den Mitarbeiter Dachsers in der jeweils zuständigen Niederlassung neben der aufwendigen manuellen
Erfassung die einzige Möglichkeit,
diese in das Dachser-eigene Transport Management System bzw. in dessen grafisches Dispositionstool zu integrieren,
welche aufgrund einiger Zugeständnisse und fehlender Funktionalitäten
als fehleranfällig gilt. Die Bachelorthesis erarbeitet die optimale Lösung, um dıe Avise von jenen Kunden in lückenloser
Form zu erhalten und verarbeiten zu können, dabei jedoch sowohl
den Kunden als auch den Dachser-Mitarbeiter entlasten soll.
zu. Sogenannte Intelligente persönliche Assistenten können dem Menschen jetzt schon
einfachste Arbeiten abnehmen und seinen Alltag enorm erleichtern. Intelligente Sprachassistenten nehmen verbale Äußerungen von
Benutzern in natürlicher Sprache entgegen und
interpretieren diese mithilfe von automatischer Spracherkennung. Die vorliegende Bachelorarbeit bietet einen Einblick in die
Konzeption und prototypischen Umsetzung einer Sprachschnittstelle zur Kommunikation mit einer Online-Banking Anwendung. Ziel der
Anwendung ist es dem Benutzer die Tätigung von wichtigen Bankgeschäften zu erleich-
tern, indem diese mit natürlicher Sprache ausgeführt werden können.
im Sinne von DevOps bei der egrid applications & consulting GmbH erörtert. Hierzu
wurde zuerst ein grober Überblick über die aktuellen Anbieter für CI/CD-Plattformen gegeben.
Dieses relativ große Feld an möglichen Kandidaten wurde dann im Zuge einer
Nutzwertanalyse weiter eingeschränkt. Die Favoriten des Vorauswahlprozesses wurden
dann jeweils in einer Testlandschaft eingerichtet und anhand einer exemplarischen
Automatisierungspipeline auf für das Unternehmen relevante Aspekte hin geprüft. Da die
Pipeline einen Webservice mit eigenem Frontend abdeckt, umfasst sie unterschiedlichste
Testarten wie Unit-Tests, Integrationstests und User Acceptance Tests, aber auch
Sicherheitstests der referenzierten Bibliotheken, des Quellcodes und der entstehenden Container Images.
Unter die für einen direkten Vergleich interessanten Aspekte fallen der Konfigurationsaufwand, mit dem sich
die Pipeline in der jeweiligen Umgebung abbilden lässt oder die Performance der Systemumgebungen hinsichtlich
des Ressourcenverbrauchs der einzelnen Komponenten, wie gut einzelne Schritte sich parallelisieren lassen und wie sich
die Laufzeiten der Pipelines generell unterscheidet. Zusätzlich wurde auch betrachtet, inwieweit sich die
Prozessschritte individualisieren und erweitern lassen. Da die gesuchte
Lösung zukunftsfähig sein soll, spielte auch die Möglichkeit zum Auswechseln einzelner Komponenten
wie der Plattform zur Quellcode-Verwaltung oder dem Wechsel von einer
reinen Private Cloud zu einem Hybrid Cloud Ansatz für manche der selbst entwickelten
Produkte eine Rolle.
logien auf das klassische Requirements-Engineering. Der Fokus liegt dabei auf
Crowd-basiertem Requirements-Engineering (CrowdRE) insbesondere auf dem
Aspekt Crowdsoureing – Outsourcing an die Crowd. Ein Crowdsourcing-Prozess
bestehend aus neun Aktivitäten, unterteilt in die Phasen Planung, Durchfüh-
rung und Auswertung wird vorgestellt. Er wird anhand des nachfolgenden Bei-
spiels erläutert. Für die Neuauflage des Buches Requirements-Engineering und
-Management von Chris Rupp und den SOPHISTen wurden unter Verwendung
des Prozesses Anforderungen erhoben und bewertet. Abschließend werden dem
Leser Ermittlungstechniken im CrowdRE an die Hand gegeben, im Bereich des
Crowdsourcings mittels drei Szenarien. In den Bereichen Text und Usage Mi-
ning erfolgt dazu eine kurze Einführung in die Themen mit Verweis auf weitere
Forschungsmöglichkeiten.
Hinsicht auf Modularität, Skalierbarkeit und Austauschbarkeit von Systemkomponenten.
Eine der Herausforderungen dieses Ansatzes ist der Umgang mit der Komplexität des entstehenden Softwaresystems.
Das Hauptmerkmal der Architektur, die Modularisierung, führt zu einer hohen Anzahl an Schnittstellen innerhalb der
Microservices. Gleichzeitig verhindert die lose Kopplung der Microservices, dass zur Übersetzungszeit geprüft
werden kann, ob benötigte Schnittstellen vorhanden sind. Dadurch fehlen dem Softwareentwickler wichtige Informationen
über die Vernetzung des Systems, die er bei der Konzeption neuer oder Anpassung bestehender Services benötigt.
Mit dieser Problemstellung befasst sich die vorliegende Bachelorarbeit. Das Ziel der Bachelorarbeit ist die Konzeption
und Umsetzung eines automatisierten Verfahrens zur Bestimmung von Abhängigkeiten zwischen Microservices des
Softwaresystems NIC-place. Hierfür sollen laut Vorgabe die Mittel der statischen Codeanalyse verwendet werden. Zum
Erreichen des Ziels wird im ersten Schritt die Kommunikation der Services analysiert. Insbesondere ist hierbei von
Interesse, welche Klassen und Methodenaufrufe dafür im Quellcode benutzt werden. Im zweiten Schritt wird eine
Java-Bibliothek, die den Quellcode analysieren und die relevanten Informationen extrahieren soll, konzipiert un umgesetzt.
Im dritten Schritt wird ein Datenmodell für eine relationale Datenbank zur Ablage der Analysedaten erarbeitet.
Im vierten Schritt wird für die Einbindung der Java-Bibliothek in den automatisierten Release-Prozess der Microservices
ein Maven Plugin implementiert. Anschließend wird den Softwareentwicklern der kasasi GmbH eine einfache Möglichkeit bereitgestellt die
Abhängigkeiten innerhalb der Microservices einsehen zu können.
automatisierten Oberflächentests für eine Webanwendung verglichen und die
Vorgehensweise zum Aufbau eines eigenen Frameworks erläutert. Um eine
Webanwendung zu testen, werden Werkzeuge mit Capture and Replay oder Skriptausführungen untersucht.
Es stellt sich heraus, dass unter Betrachtung der
Anforderungen eine Eigenentwicklung mithilfe von Selenium die meisten Vorteile
bietet. Daraufhin werden verschiedene Muster und Vorgehensweisen erläutert, mit
denen das Framework aufgebaut werden kann. Dies wird dann in mehreren Schritten
anhand eines Beispieltests aufgebaut und auf weitere Tests angewendet. Zusätzlich
wird die Testerstellung anhand einer Featurebeschreibung umgesetzt.
Schlaawörter: UI-Test, Selenium, Testautomatisierung, Webanwendung
2018
Umsetzung innerhalb von Videospielen. Zu diesem Zweck wurde eine bestehende Game
Physik Engine, welche im Rahmen der Vorlesung „Game Physics“ im Sommersemester
2016 entstand, verwendet und um die entsprechenden Funktionen erweitert. Zu diesen
gehört die Erkennung von brechenden Objekten, die Erzeugung der Bruchstücke durch
unterschiedliche Bruchmuster und letztendlich die Kollisionsbehandlung der durch den
Bruch entstandenen Teile. Für diese Arbeit wird als konkretes Beispiel eine zerbrechende
Glasscheibe verwendet, die so entstandenen Mechaniken lassen sich jedoch auf beliebige
konvexe Körper anwenden. Das Ergebnis ist eine realitätsnahe Simulation, welche aber
gewisse Aspekte vereinfacht darstellt, um eine ausreichende Performance zu erreichen.
physikalische Behandlung dargestellt. Eine echtzeitfähige Rauchsimulation würde Spiele
wesentlich realistischer erscheinen lassen. Während Filme und wissenschaftliche
Simulationen imstande sind auf Großrechner und Supercomputer zuzugreifen, welche
mehrere Tage an der Simulation von einzelnen Szenen arbeiten können, ist dies für Spiele
nicht möglich. Um in Spielen einen möglichst flüssigen Eindruck zu erzeugen, darf die Physik
Simulation nicht zu stark auf die Bildwiederholrate des Spiels auswirken. Dadurch muss ein
Weg gefunden werden, der eine Realisierung der Simulation in Echtzeit erlaubt.
Dazu wurden bestehende Modelle der Fluid-Simulation für die Simulation von Rauch
untersucht und auf der GPU umgesetzt. Die Ergebnisse werden mithilfe eines einfachen
Szenegraphen visuell dargestellt.
für die Software mittels Plug-in Architektur“ befasst sich mit der Neuentwicklung eines in die integrierte Entwicklungsumgebung (IDE) Eclipse
eingebundenen Tools zum Arbeiten mit Labeltexten und Meldungen für Java-Programme. Diese
Textbausteine werden Anwendungen zugeordnet und in einer Datenbank gespeichert.
Beim Programmstart werden die Übersetzungen in der Sprache des angemeldeten
Nutzers in den Speicher geladen und eventuell in der grafischen Benutzeroberfläche
angezeigt. Zum Verwalten dieser Datenbank existiert bereits ein Tool, welches mehrere
Schwachstellen aufweist. Ziel der Arbeit ist es, dieses Programm neu zu entwickeln
und neben der Verbesserung der Usability auch einige neue Anforderungen umzusetzen.
welche auf einer bereits existierenden Desktop-Anwendung basiert. Im ersten Abschnitt
der Arbeit werden Aufbau und Implementierung der in Java geschriebenen Desktop-Anwendung
vorgestellt. Dabei werden für die einzelnen Anwendungsbereiche auch die Anforderungen ge-
stellt, die die App am Ende erfüllen muss. Danach folgt eine kurze Einführung in die Android-
Entwicklung, in der die zwei Klassen Activity und Fragment beschrieben werden, die den
Aufbau und das Layout einer Android-App bestimmen. Zusätzlich wird die Entwicklungs-
umgebung Android Studio vorgestellt, die für diese Arbeit verwendet wurde. Im Hauptteil
wird die App selbst vorgestellt, wobei der Entwicklungsprozess zusammen mit den notwen-
digen Änderungen Schritt für Schritt erläutert wird. Zudem werden die eingesetzten Android-
en . zur Implementierung der Anzeigelogik verwendet wurden, detailliert be-
schrieben und bestimmte Desien-Entscheidungen erklärt. Abschließend wird das Entwicklungsergebnis
bewertet und überprüft, ob die App alle Anforderungen erfüllt. Dabei werden auch die
Features beschrieben, die noch zu implementieren sind und einige Ansatzpunkte für mögliche
Verbesserungen genannt.
2017
Software Engineering im Rahmen der Hochschulausbildung. Hierzu wird ein Kinect-basierter Prototyp mit der Bezeichnung
KINECTRUNAROUND erstellt. Der Prototyp dient als Fundament für das Lehrkonzept Szenario-basiertes Lernen, auf dessen Basis ein Kinect-basiertes
Lehr-Lern-Arrangement mit der Bezeichnung SBL-KR gestaltet wird. Innerhalb des SBL-KR werden eine Reihe motivationssteigernden
Einflussfaktoren berücksichtigt und praktisch umgesetzt. Insbesondere ist hierbei die Verwendung eines Magazin-ähnlichen Designkonzepts für
das Layout und die Visualisierung der Aufgabenstellungen hervorzuheben, welches mit dem Lehrkonzept des Szenario-basierten Lernens
verknüpft wird. Abschließend werden die Ergebnisse einer Evaluation durch die Zielgruppe nach Einsatz des SBL-KR innerhalb der
Lehrveranstaltung präsentiert und einer kritischen Würdigung unterzogen.
IST-SOLL Analyse in seiner bestehenden Gesamtstruktur zuerst einmal erfasst wird, um anschließend daraus ein tragbares, für die Zukunft ausgerichtetes IT-System mit den Nachfolgeprodukt zu entwerfen.
Neben der Ablösung der Anwendungen wird auch gleichzeitig die darunterliegende Hard- und Software durch moderne energieeffiziente Systeme in Teilen ausgetauscht.
Die Gründe hierfür sind vor allem der nicht mehr vorhandene Support seitens des Herstellers, sowie Einsparung durch den Betrieb moderner Lösungen der Virtualiserung. Denn gerade Systeme, die die Produktion von Medikamenten unterstützen,
unterliegen hierbei der besonderen Sorgfalt aufgrund rechtlicher Vorgaben von staatlichen Behörden.
Das momentan eingesetzte IT-System bietet vor allem virtuelle Lösungen für den Endanwender an.
So werden Anwendungen und Desktop-Betriebssysteme für die unterschiedlichsten Abteilungen im Unternehmen mit den Produkten XenApp 5.0 und 6.0, sowie XenDesktop 7.6 von Cirix angeboten. Dadurch ist e für das Unternehmen möglich, auch flexibel auf unerschiediliche Anforderungen von Stakeholdern reagieren zu können.
So wird als erster wichtiger Schritt in der Ausgangssituation, das Gesamtsystem mit den jeweiligen Diensten erfasst und visuell dargestellt. Die daraus erhaltenen Daten bilden in der Anforderungsanalyse die Grundlage, mit weiteren Methoden und Ermittlungstechniken des Requirements Engineering, u.a. Anforderungen und Anwendungsfälle an das neue IT-System zu erstellen.
Nach Abschluss der Analyse folgt aus den erhobenen Daten eine Modellierung des neuen Zielsystems das dann im Weiteren, mithilfe von Tests, in Teile realisiert wird. Die daraus erhaltene Erkenntnis dient somit als Vorlage für den weiteren Verlauf dieser Migration.
computergestützter Stoffsimulation gegeben werden. Dafür werden auf Basis einer
grundlegenden physikalischen Simulation, verschiedene Ansätze der Stoffsimulation beschrieben
und hergeleitet, sowie ihre Vor- und Nachteile erläutert. Diese Arbeit fokussiert sich auf explizite Modellierungsansätze nennt jedoch auch die Grundprinzipien impliziter Technkiken.
Am Ende der Arbeit wird eine Testanwendung entwickelt, um eine beispielhafte Implementierung von
Stoffsimulationen aufzuzeigen und die zuvor genannten Algorithmen vergleichen zu können.
den Markt und es ist nicht unwahrscheinlich, dass sie in den nächsten Jahren, im Zuge derer Entwicklung, spezifiert werden müssen.
Ziel dieser Masterarbeit war es, Ansätze zur Spezifikation solcher Systeme genauer zu beleuchten. Bevor mit der Vorstellung der möglichen
Lösungen begonnen werden konnte, mussten zuerst einige Grundlagen geschaffen werden, um ein Verständnis des Themas und der Probleme von intelligenten Systemen bei der Spezifikation zu
schaffen. Dieses Wissen wurde im ersten Teil der Arbeit gelegt, welche sich näher mit der Herkunft von Smart Ecosystems und der Tätigkeit des Requirements Engineers beschäftigt.
Nach dieser Schilderung wurden technischen Treiber vorgestellt, welche es erst ermöglichen werden, Smart Ecosystems in Zukunft zu realiseren, woraus sich die Spezifikation eines solchen
Systems ableiten lässt. Nach der Vorstellung der technischen Voraussetzungen wurde in dieser Masterarbeit näher auf Herausforderungen eingegangen, welche sich der Requirements Engineer bei einer Spezifikation stellen muss.
Nachdem die Grundlagen erklärt wurden, konnte der Fokus auf die Ansätze zur Spezifikation von Smart Ecosystems gelegt werden. Es wurden vier Möglichkeiten zur Spezifikation eines intelligenten Systems vorgestellt und näher beleuchtet.
Nach der gesamten Vorstellung der möglichen Methoden zur Systemanalyse wurde ein Fazit gezogen, indem beschrieben wurde, dass ein einziger Ansatz allein zu Spezifikation eines komplexen Smart Ecosystems nicht ausreichen wird.
Vielmehr ist eine Kombination mehrerer Methoden erforderlich, um ein qualitativ hochwertiges Anforderungsdokument zu erzeugen.
Als Abschluss beschreibt die Arbeit als letztes inhaltliches Thema die Auswirkungen und Veränderungen auf die Arbeitsweise eines Requirements Engineers.
Methoden zur Testautomatisierung zu schaffen und auf Basis von diesem ein Testautomatisierungsframework zu entwerfen und implementieren.
Dieses soll dabei Glücksspielsoftware auf verschiedenen Plattformen, in verschiedenen Versionen, mit verschiedenen
Kommunikationsschnittstellen und teilweise verschiedenen Funktionalitäten gemeinsam
testen können. Die im Überblick betrachteten Bereiche behandeln die Darsellung
Erstellung, Durchführung, Bewertung und Auswertung von Testfällen. Dabei wurde neben
altbekannten vor allem auch auf neuere Methoden eingegangen. Das darauf aufbauende
Framework erreicht seine benötigte Flexibilität durch eine Reihe an XML Spezifikationen, die zur Laufzeit überschrieben werden können.
Dadurch kann die Software in den
spezifizierten Produktumgebungen getestet werden, ohne Redundanzen in den Testfällen
zu erzeugen. Diese Spezifikationen können von den Nutzern des Frameworks dabei selbst, ohne Programmieraufwand, erstellt werden.
Multicoptern. Sie betrachtet sowohl den grundlegenden Aufbau als auch die
physikalischen Grundlagen. Dabei wird eine möglichst allgemeine Betrachtung
angestrebt, weshalb speziellere Bereiche wie das FPV-Racing (First person vIew
racing) ignoriert werden. Es wurde auch eine einfache Testimplementierung
vorgenommen, um die beschriebene Funktionsweise überprüfen und bewerten zu
können. Anhand der Arbeit zeigt sich, dass bereits mit einfachen Mitteln eine auf den
ersten Blick realistisch aussehende Simulation erzeugt werden kann. Gleichzeitig ist
die Entwicklung eines zuverlässigen und sicheren Multicopters aufgrund der vielen
unterschiedlichen Problemstellungen deutlich schwerer als vermutet. Der Autor
verhofft sich ein grundlegendes Verständnis von Multicoptern und deren Problemen.
2016
Waschstraßen zu generieren. Innerhalb dieser Anwendung gibt es eine Benutzerverwaltung, die es ermöglicht, den Zugriff
auf diese Generierung zu administrieren. Zum Erreichen der genannten Funktionalitäten wurden zwei
Komponenten entwickelt:
1. Ein Webservice, welcher auf dem REST-Paradigma aufbaut. Dieser enthält die Businesslogik und verwendet Jason Web
Tokens zur Authentifizierung.
2. Ein Webservice, welcher auf die bereitaestellte API zugreifen kann und diese für
Anwender über eine Webseite zugänglich macht.
Einen Schwerpunkt dieser Arbeit bildet die Konzeption und Realisierung der API. Der
Zugriff für weitere Komponenten, welche in Zukunft noch entwickelt werden, kann somit erleichtert wird.
sofort über Änderungen informiert zu werden, ist ein Beispiel für eine performanzkritische
Anforderung und wird von Kunden immer öfter priorisiert. Dabei kann die altbewährte
Technik des Pollings zu unnötig hohem Ressourcenverbrauch führen. Es gibt bereits andere Techniken, die das Konzept des Pushings verfolgen,
jedoch hat jede ihre Vor- und Nachteile. In dieser Arbeit wird ein Testsystem entwickelt, mit dem sich diese Techni-
ken für den spezifischen Anwendungsfall lassen. Die anschließende Analyse,
mit akribischer Beobachtung der Performanz, führt zu aufschlussreichen Erkenntnissen
und den gesuchten Vor- und Nachteilen dieser Verfahren. Mit diesem Wissen kann eine
Empfehlung für die Firma ausgesprochen werden, deren Umsetzung die Performanz des
Gesamtsystems verbessern wird.
diese in ein Continuous Integration System integrieren lassen. Es werden die einzelnen
Unterschiede der beiden Tools vorgestellt sowie die Vor- und Nachteile, die sich durch die
verschiedenen Ansätze ergeben. Dafür wird besonders das Branching-Konzept der beiden
Versionierungstools und die zugrunde liegende Architektur betrachtet. Es werden auch
zwei grundlegende Branching-Workflows, mit denen CI umgesetzt werden kann, vorgestellt
und einer davon anhand eines Beispielprojekts genauer betrachtet. Abschließend erfolgt
eine Bewertung der Tools und es werden sowohl Best Practices als auch Worst Practices
vorgestellt.
Auftragssteuerung sowie der auf diesen Prototyp aufbauenden Klärung der Frage, ob
regelbasierte Systeme für einen derartigen Einsatz geeignet sind. Nach Erläuterung
von theoretischen Grundlagen zu Industrie 4.0 und Künstliche Intelligenz, zu welcher
regelbasierte Systeme gehören, sowie Aufzeigen von OptaPlanner als Basis für den
Prototyp, folgt eine Darstellung des entwickelten Prototyps. Auf Grundlage von diesem
wird analysiert, ob regelbasierte Systeme für den Einsatz in einer Auftragssteuerung
geeignet sind. Zusätzlich wird die Lösung des Prototyps bezüglich seiner Qualität
bewertet. Im Ergebnis wird deutlich, dass — aufgrund der Ausgliederung der Logik in
flexibel gestaltbare Regel-Dokumente, der guten Erweiterbarkeit bezüglich weiterer
Planungsvariablen sowie der im Vergleich zur händischen Durchführung der
Auftragssteuerung kurzen Dauer der Einordnung der einzelnen Arbeitsfolgen eines
Auftrags – regelbasierte Systeme für den Einsatz in einer regelbasierten
Auftragssteuerung eines mittelständischen Maschinenbauunternehmens geeignet
sind und die Qualität der erstellten Lösung gut ist.
entwicklung am Beispiel einer interaktiven Analysesoftware zur Überwachung von Börsen-
kursen in Echtzeit. Die Beispielanwendung wird in dieser Arbeit anfänglich in Form einer
Webanwendung realisiert. Dafür werden zunächst einige Grundlagen zu der Programmier-
sprache JavaScript und der objektorientierten Programmierung mit JavaScript vermittelt.
In der Webanwendung kommen verschiedene Technologien wie Node.js, Websockets
und AngularJS zum Einsatz. Bei einer anschließenden Portierung auf die Plattformen
Windows und Android werden Technologien angewandt, welche es ermöglichen Weban-
wendungen ohne einen Browser zu verwenden. Dabei wird der Frage nachgegangen, wie
sich Anwendungen für mehrere Plattformen, unter Erhalt einer einheitlichen Quelltextba-
sis, portieren lassen. Ziel ist es ein allgemein verwendbares Vorgehen zu entwickeln, mit
dem sich dieser Prozess vereinheitlichen lässt. Im Ergebnis wird deutlich, dass mit Hilfe
des entwickelten Vorgehens und der verwendeten Technologien, effizient und effektiv
plattformübergreifend Software entwickelt werden kann.
Fahrzeugen und erstellt automatisierte Auswertungen in Form von Reports. Das System fällt
etwa viermal im Monat bei Lastspitzen für 3 bis 28 Stunden aus. Das Abspeichern neuer Datensätze sowie das Erstellen der
Datenauswertungen für Report-Aufträge kann es auberdem
nicht im geforderten Zeitraum ausführen. Dadurch entgeht kasasi Umsatz, da das System nur
einen Bruchteil des Kundenbedarfs decken kann. Das verspätete Zustellen der Auswertungen verringert deren Nutzen für den Kunden.
Dadurch steigt das Risiko, dass unzufriedene
Kunden abspringen. Durch Austauschen zweier Software-Komponenten kann die Verfügbarkeit und die Performance deutlich verbessert werden.
Eine sanfte und agile Systemmigratıon ermöglicht dabei jederzeit den vollen Funktionsumfang, während alle Migrationsschritte in
die agile Softwareentwicklung integriert sind. Ein stabiles Zielsystem verringert Aufwände
zur Wartung bzw. Wiederherstellung. Es stellt eine zuverlässige und rechtzeitige Zustellung
der Auswertungen an die Kunden sicher und steigert so die Kundenzufriedenheit. Durch die Performancesteigerung kann der Renortin-Service zudem an mehr Kunden verkauft werden.
„Prototypische Entwicklung eines erweiterbaren Formatkonverters auf einer
Rich-Client-Plattform“
befasst sich mit der Neuentwicklung eines sich momentan bei der Dachser SE – im
Folgenden Dachser genannt – im Einsatz befindlichen Systems zur
Formatkonvertierung. Das Konvertierungssystem hat die Aufgabe, die von Kunden in
Dateiform erhaltenen Lieferaufträge in das Dachser interne Format zur weiteren
Verarbeitung zu überführen. Das aktuell verwendete System weist eine veraltete
Technologie und erhebliche Mängel in Bereichen der Usability auf. Aus diesen
Gründen hat sich Dachser entschlossen, das Konvertierungssystem mit einer
zukunftsweisenden Technologie neu zu entwerfen. Das Ziel der Arbeit ist die Analyse
der Eclipse 4 Technologie mit einer prototypischen Umsetzung des Konvertierungs-
systems. Hierzu werden die Anforderungen an das neu zu entwickelnde System
erhoben und eine Softwarearchitektur mit einem speziellen Augenmerk auf die
Erweiterbarkeit um weitere Dateiformate erstellt. Durch eine prototypische
Implementierung wird geprüft, ob die erhobenen Anforderungen mit der Technologie
von Eclipse 4 realisierbar sind.
„Refactoring einer Java-Anwendung für die Administration des Kundenzugangs zur Steigerung der Wartbarkeit und der Erweiterbarkeit”
beschäftigt sich mit dem Programm ’Admintool’ im Unternehmen Dachser SE. Dieses Administrationsprogramm dient der Verwaltung der
Kundenzugänge zu einem Onlineportal und den davon bereitgestellten Funktionen. Die Software wurde über einen Zeitraum
mehreren Jahren von verschiedenen Entwicklern geschrieben und erweitert, was nach und
nach zu einer Verschlechterung der Softwarequalität führte. Ziel dieser Arbeit ist es, Teile
dieses Programmes zu analysieren, Schwachstellen aufzudecken und diese unter Zuhilfenahme von Refactoringtechniken zu beheben.
Dabei wird der Programmcode verändert
und umstrukturiert. Das finale Produkt soll ein Programm sein, dessen Code im Vergleich
zum vorherigen besser strukturiert, wartbarer und besser erweiterbar ist. Es ist
nicht das Ziel dieser Arbeit, das Programm vollständig zu überarbeiten, was aufgrund der
Größe der Anwendung nicht möglich ist.
Zusammenstellung können vielfältig sein. Die globale Verteilung des Unternehmens, die Steigerung der
Flexibilität und die Skalierbarkeit der Teams, aber auch Mitarbeiter deren Lebensmittelpunkt weit entfernt ist, können eine Ursache für die Verteilung sein.
Um weiterhin effektiv und effizient innerhalb der verteilten Teams arbeiten zu können, ist es notwendig verschiedene Hilfsmittel für die Kommunikation und Planung zu
verwenden. Maßgebliche Schwerpunkte im Bereich der Planung, die durch das Team ausgeführt werden, ist das Priorisieren und Schätzen der Aufgaben und
Anforderungen. Durch die Struktur der verteilten Teams kann es bei der Schätzung häufig zu koordinativen und kommunikativen Schwierigkeiten kommen.
Dies betrifft Entwickler und Projektleiter gleichermaßen, da gemeinsame Schätzungen innerhalb der Projekte erstellt werden müssen.
Anhand dieser Schwierigkeiten beschäftigt sich die Arbeit zunächst mit den unterschiedlichen Zusammensetzungen verteilter Teams und den Hilfsmitteln
zur Bewältigung der Kommunikation. Unter Durchführung einer Literaturrecherche werden verschiedene
Schätzverfahren, für das Schätzen von Aufgaben und Anforderungen, näher betrachtet.
Unter Verwendung der Schätzmethode „Wall Estimation“ wird in Form einer prototypischen Entwicklung eine plattformübergreifende Anwendung erstellt. Diese
ermöglicht verteilten Teams die gemeinsame Durchführung der Schätzung auf
Basis einer Plattform.
bestehenden Editors, sowie der Konzeption und prototypischen Neuentwicklung als RCP-
Plug-in. Zu diesem Zweck wird der Aufbau und die Verwendung des alten Editors analysiert und als Anforderungsgrundlage für das neue
Plug-in verwendet. Um anschließend eine sinnvolle Architektur für den neuen Editor aufbauen zu können, werden zuvor noch
wichtige Eigenschaften der Zielplattform und wichtige Frameworks erläutert. Abgeschlossen wird die Arbeit mit der prototypischen Umsetzung des Plug-ins.
bei der Softwareentwicklung mit einem kleinen Projektteam zum Einsatz kommen kann.
Hierbei wird eine Vorgehensweise entwickelt, die bei einer Teamgröße von ein bis drei Per-
sonen verwendet werden kann. Die entwickelte Vorgehensweise basiert auf dem Prozessmo-
dell Scrum. Sie übernimmt die Rollen von Scrum und legt fest, wie diese bei einem kleinen
Team besetzt werden. Dadurch können der Prozess und die Praktiken von Scrum angewandt
und die Vorteile von Scrum ausgenutzt werden. Um den Entwicklungsprozess weiter zu ver-
bessern, empfiehlt das entwickelte Vorgehen die Anwendung von XP-Praktiken. Die Eigen-
schaften der entwickelten Vorgehensweise werden auch praktisch untersucht. Hierfür wird sie
hei der Realisierung einer Web-Anwendung eingesetzt. Durch dieses Projekt wird nachgewie-
sen, dass die entwickelte Vorgehensweise sehr gut geeignet ist, um mit einem kleinen Team
agil Softwareproiekte umzusetzen.
Nach einer kurzen Vorstellung der kasasi GmbH wird auf den IST-Zustand des bisherigen Einsatzes von Docker und die
Ziele dieser Masterarbeit eingegangen. Auf Basis der Schwächen des IST-Zustandes, sowie
anhand der Durchführung einer detaillierten Anforderungsanalyse werden die Erwartungen an das neue Management-System festgelegt.
Bevor mögliche Management-Systeme betrachten werden, erfolgt eine Einführung in die Grundlagen der Docker Technologie.
Im Anschluss daran wird die allgemeine Vorgehensweise für die Produktauswahl unter
der Berücksichtigung mehrerer Ziele vorgestellt. Anhand der zuvor beschriebenen Nutzwertanalyse wird die finale Entscheidung
für eine Management-System getroffen. Daran
anschließend muss das ausgewählte Produkt seinen Funktionsumfang in verschiedenen
Testszenarien unter Beweis stellen. Abschließend wird auf die Vorteile durch den Einsatz
dieses Produktes eingegangen, sowie ein Ausblick auf dessen Erweiterbarkeit gegeben.
stellt dieser Bedarf auf der Ebene von Unit-Tests für den Entwickler eine hohe Belastung dar. Dadurch, dass verschiedene Clients auf die
Dachser-internen Webservices zugreifen, müssen diese robust gegenüber vielerlei Eingaben sein. Diese müssen dementsprechend einer hoheh Qualitätprüfung
durch Entwickler unterzogen werden. Um den Entwickler in seinem Testvorgehen zu entlasten, befasst sich die vorliegende Masterarbeit zum
Thema „Automatische Generierung von Unit-Tests“ mit der Analyse und Konzeptionierung eines möglichen Vorgehens zur Generierung von automatisierten
Entwicklertests. Dieses Vorgehen wird durch ein Testautomatisierungssystem verkörpert, das nicht nur die dazugehörigen Unit-Test-Klassen
generieren, sondern auch aus dem bestehenden Quellcode Testdaten ermitteln soll. Die Analyse muss auf der Basis bestehender Anforderungen im Dachser-Umfeld an
ein solches System alle damit verbundenen Möglichkeiten zur Umsetzung des Konzepts in Betracht ziehen und analysieren. Im Laufe der Auswertung wird ein klares
Konzept zur Realisierung eines solchen Systems ermittelt.
Vor der Analyse der Anforderungen, werden allgemeine Begriffe zum Thema Testautomatisierung und Unit-Tests geklärt, um das entsprechende
Wissen zum Verständnis aufzubauen. Daran anchließend werden Techniken zur Ermittlung von Testdaten vorgestellt und mögliche Formen der Testfälle. Mit der Erhebung
der Anforderungen und der Beschreibungen des technischen Umfelds wird eine Basis für die Erstellung der Softwarearchitektur des Testautomatisierungssystems geebnet.
Sie bietet das Grundgerüst für die technische und logische Konzeptionierung, die im Anschluss folgt, um das Thema abzuschließen.
2015
bei der Modellierung von Softwaresystemen
cesses in modeling of software systems. It examines what approaches and models
already exist. Models for communication and collaboration are proposed for the high
school environment. The models are based on existing models and approaches. With
the help of the both models, a structured way can be shown to the students in the
modelling of software systems. For the following work was used German and English
literature (books and scientific articles). As a result of my studies I state that processes
involved in the communication and collaboration can be seen in the modeling and can
be systematized.
für eine bereits im Einsatz befindliche Software zur Steuerung von Stanz- und Biegema-
schinen. Aufgrund von schwer umsetzbaren Anforderungen und der monolithischen Aus-
prägung der Software sind strukturelle Veränderungen notwendig. Die Arbeit analysiert
die Gegebenheiten anhand der bestehenden Software und entwickelt daraus neue Ansät-
ze und evaluiert dabei den Einsatz von neuen Technologien. Dadurch soll die Anwen-
dung mit Hilfe eines definierten Migrationskonzeptes zu einer modularen und flexiblen
Steuerungssoftware überführt werden. Auch spätere Anforderungen werden in vorlie-
genden Arbeit bereits betrachtet und so die Zukunftsfähigkeit der Steuerungssoftware
gewährleistet. Neben der reinen Architekturbetrachtung werden neuartige Technologien,
beispielsweise hinsichtlich der Übertragungsprotokolle für die Netzwerkkommunikation,
berücksichtigt. Somit entsteht im Umfang der Arbeit ein Konzept für das neue Softwa-
resystem, welches Anforderungen in Zukunft besser und schneller umsetzen kann.
Modellgetriebene Softwareentwicklung (Model Driven Architecture – MDA), welche von der Object Management Group (OMG) hervorgebracht wurde, erreicht dieses Ziel anhand einer klaren Trennung von Funktionalität und Technik und somit einer Reduktion der Komplexität in Entwicklungsprozessen. Hierbei wird auf eine höhere Abstraktion als bei anderen Verfahren gesetzt.
Diese Arbeit beschäftigt sich mit der automatischen Codeerzeugung aus formalen Modellen. Grundlage ist hierbei eine zugrunde liegende domänenspezifische Sprache (DSL), auch Grammatik genannt, aus der mit Hilfe von eigens dafür implementierten Codegeneratoren lauffähiger C++-Code erzeugt wird. Auf Basis des generierten Codes wird eine Projektstruktur (Plugin) erstellt, um diesen in ein bestehendes Framework einzubinden und zu verarbeiten. Es zeigt sich hierbei ein großer Vorteil der modellgetriebenen Softwareentwicklung (MDSD). Es können Modelle nicht nur auf textueller Basis, sondern ebenfalls auf/grafischer Basis erstellt und modelliert werden.
tierung eines Continuous Integration Prozesses für Rich-Client-Plattform-Anwendun-
gen und Webservices. Die On-Ergy GmbH möchte zukünftig ihre Softwareprodukte mit
Hilfe einer Continuous Delivery Piselina entwickeln. Das Ziel dieser Arbeit ist es einen
Continuous Intearation Prozess, der Bestandteil der Continuous Delivery Pipeline ist,
beispielhaft an zwei Prototypen zu implementieren. Die Technologien, die eingesetzt
werden, wurden von der On-Ergy GmbH vorgegeben, da bereits teilweise mit diesen
Technologien gearbeitet wird. Somit wurde festgelegt, dass Maven als Build-Tool, SVN
als Versionsverwaltungssystem und Jenkins als Continuous Integration Server einge-
setzt wird. Zuallererst wird erklärt was eine Continuous Delivery Pipeline ist und welche
Vorteile diese in der Softwareentwicklung hat, um im Anschluss die Leistungsmerk-
male der oben genannten Technologien zu eruieren. Dieses gewonnene Wissen wird
dann an einem Beispiel verdeutlicht und implementiert. Die Prototypen werden mithilfe
der Programmiersprache Java umgesetzt.
Dazu mussten nicht messbare Kriterien mehrerer Alternativen für eine
Wirtschaftlichkeitsberechnung einer Vorfeldentwicklung bestimmt, bewertet und mit Hilfe der Nutzwertanalyse in eine Reihenfolge gebracht werden. Gerade das Thema Cloud Computing zeigt, obwohl sehr populär und in aller Munde, dass aufgrund fehlender Standards der Einsatz im professionellen Umfeld genau zu prüfen ist. Es zeigte sich, dass viele Anbieter ausscheiden, aufgrund des fehlenden oder unzureichenden Datenschutzes. Das Ergebnis, ein selbst gehostetes NAS in der DMZ einer Firewall, liefert den besten Nutzwert und stellt sich mittelfristig als wirtschaftlichste Lösung heraus.
Neben der Implementierung der Webservices muss ein Konzept entwickelt und implementiert werden, welches es erlaubt, mit wenig Aufwand weitere Webservices hinzuzufügen. Ziel ist es, dass alle Webservices dieselbe Logik für das Logging sowie für die Validierung der Rechtmäßigkeit des Aufrufs nutzen.
Damit die Kunden und Dachser gleichermaßen von einem hohen Maß an Sicherheit profitieren, ist es notwendig, die Webservices nach aktuellem Stand der Technik abzusichern. Hierzu wird auf einen Übertragung der Daten mittels HTTPS gesetzt.
Ein weiterer Bestandteil der Arbeit ist es, eine Anwendung zu entwickeln, welche die Anfragen der Kunden darstellt. Somit ist gewährleistet, dass einfach nachvollzogen werden kann, welcher Kunde, welchen Webservice, zu welcher Zeit, mit welchen Parametern aufgerufen hat.
Die Entwicklung des Konzeptes begann mit der Anforderungsanalyse. Hier wurden unter anderem die bisherigen Modelle nach ihren positiven und negativen Aspekten analysiert, es wurden Thesen unter Heranziehung verschiedener Informationsquellen formuliert. Des Weiteren wurden Anforderungen ermittelt und diese anschließend mit verschiedenen Modellierungstechniken modelliert. Um die Anwendung benutzerfreundlich zu gestalten, wurden die Gestaltgesetze und die Grundlagen der Dialoggestaltung, bei der Implementierung der Software berücksichtigt. Bei der Implementierung wurden die Tools Java EE und PrimeFaces verwendet. Nach der Entwicklung, wurde die Anwendung auf ihre Funktionalität getestet.
In einem abschließenden Kaptiel wird auf ausgewählte Aspekte der Didaktik im Zusammenhang mit dem entwickleten Prototyp eingegangen.
als auch in privaten Haushalten. Auf der ganzen Welt kommt Temperaturmesstechnik in verschiedenen Branchen — von der Produktion von Grundstoffen
bis zur Abwasserwirtschaft — zum Einsatz. Um das Signal von Temperatursensoren
in ein stabiles und für alle Branchen standardisiertes Ausgangssignal umzuformen,
bedarf es eines Temperaturtransmitters. Diese Arbeit befasst sich mit dem
architektonischen Entwurf, sowie der prototypischen Entwicklung eines Systems
zur Parametrierung von Temperaturtransmittern. Den Ausgangspunkt des
Konzepts bildet eine umfassende Anforderungsanalyse. Im weiteren Verlauf
werden auf Basis der ermittelten Anforderungen zwei konkurrierende Architekturalternativen für das System entwickelt, gegenübergestellt und evaluiert. Letztlich
wird durch die prototypische Implementierung der zuvor entworfenen Architektur
deren Realisierbarkeit demonstriert.
Thematisch soll die Anwedung im Bereich der Kabinenkonfiguration von Verkehrsflugzeugen angesiedelt sein, da es in diesem Bereich zahllose verschiedene Prozesse, Datentypen, beteiligte Stakeholder und existierende Software-Produkte gibt, die sich für eine Untersuchung anbieten.
Dabei sollen technische Grundlagen von Linked Data genauso betrachtet werden, wie das geschäftliche Umfeld der Airbus Group und die Prozesse, die sich zur Zeit im Einsatz befinden und sich für die Verwendung, einer auf Linked Data aufbauenden Softwareanwendung, eignen.
2014
Inhaltlich beschäftigt sich diese Masterarbeit mit der Verbesserung der Software Engineering Ausbildung, durch die Entwicklung eines Software Engineering Lehr- und Lern- Baukastens für interaktive Whiteboards. Zu Beginn dieser Arbeit wurde eine Analyse verschiedener Einsatzszenarien von interaktiven Whiteboards in der Lehre durchgeführt. Außerdem wurde eine Software Engineering Veranstaltung einer Hochschule analysiert, um den konkreten Funktionsumfang des Lehr- und Lern- Baukastens festlegen zu können. Die Analysen zeigen, dass es ein Bedarf für UML (Unified Modeling Language) Modellierungstool gibt, dass speziell für den Einsatz auf interaktiven Whiteboards konzipiert und optimiert ist, jedoch auf dem Markt nicht erhältlich ist. Dadurch entstand das konkrete Thema dieser Arbeit, einen Lern- und Lehrbaukasten in Form eines UML Modellierungstools, optimiert für den Einsatz auf interaktiven Whiteboards, zu entwickeln. Der Hauptteil dieser Arbeit dokumentiert den Entwicklungsprozess eines ersten Prototypen, mit dem UML Klassendiagramme auf interaktiven Whiteboards modelliert werden können. Abschließend soll eine Evaluation des angefertigten Prototyps zeigen, inwieweit die Software Engineering Ausbildung an Hochschulen durch den Einsatz eines UML Modellierungstools für interaktive Whiteboards verbessert werden kann.
Ein erstes Clientsystem wurde ebenfalls entwickelt. Dieser Webclient übernimmt die Bereitstellung der Benutzeroberfläche, deren Layout ebenfalls neu gestaltet wurde. Erweiterte Konfigurationsmöglichkeilen ermöglichen des weiteren eine
bessere Anpassung des Check-in-Systems an die Wünsche der Verleihgeschäfte.
Es werden die grundlegenden Eigenschaften von Komponentensystemen erläutert, in diesem Zuge wird das zur späteren Verwendung vorgesehene Komponentensystem Java Simple Plugin Framework (JSPF) vorgestellt.
Das Vorgehen und die Ergebnisse der Anforderungsanalyse werden beschrieben und die daraus resultierenden Anforderungen an die zu entwickelnden Komponenten.
Bei der Entwicklung der Architektur werden die Schnittstellen, das Architekturmuster, die Klassen und das Datenbankschema beschrieben, bevor schließlich die Implementierung der Lehr- und Lernpfattform, mit den entwickelten Oberflächen, Komponenten, Schnittstellen und Funktionalitäten erläutert wird.
Ziel dieser Diplomarbeit ist es, ein alternatives Verfahren zu der derzeitigen Masterteilmessung an ABS/ESP hydraulischen
Funktionsprüfständen zu entwickeln. Dabei wird zunächst auf die Firma Robert Bosch GmbH, sowie auf den Geschäftsbereich „Chassis Systems Control“ und dem Robert Bosch Werk in Blaichach/Immenstadt eingegangen. Anschließend erfolgt eine genauere Betrachtung des Qualitätswesens in diesem Tätigkeitsfeld. An dieser Stelle erfolgt die IST-Analyse der Masterteilmessung. Dazu wird zunächst ein Überblick über einen hydraulischen Funktionsprüfstand gegeben. Danach erfolgt die Ausführung der Masterteilmessung. Ferner werden die tagtäglichen Prüfungen an den hydraulischen Funktionsprüfständen vorgestellt. Im Anschluss folgt eine Hinleitung zum Robert Bosch GmbH standardisierten Managementprozess, dem sogenannten „Continious Improvement Process im indirekten Bereich“. Im Folgenden wird ein alternatives Messverfahren mit Hilfe des vierstufigen CIP-Modells ausgearbeitet.
Abschließend geht es darum, die festgelegten Maßnahmen und Verbesserungen kontinuierlich und in kleinen Schritten ständig zu verbessern.
Die Bewertung dieser verschiedenen Technologien erfolgt mit Hilfe der Ergebnisse einer ausführlichen Recherche zu den Vor- und Nachteilen sowie den Besonderheiten der genannten Alternativen. Andere Aspekte dieser Arbeit sind die funktionalen Anforderungen und die aktuelle Formularsituation. Die aktuelle Formularsituation wird erfasst, um daraus Anforderungen an eine Formulartechnologie ableiten zu können und zu beurteilen, ob die jeweilige SAP-Formulartechnologie als Lösung in Frage kommt. Die Bestandsaufnahme der aktuellen Formularsituation erfolgt mit Hilfe verschiedener SAP-Auswertungen. Für den Bereich Faktura werden exemplarisch die inhaltlichen Anforderungen an ein Formular aufgenommen. Dafür werden das Datenbeschaffungsprogramm und die Formulare der Faktura analysiert. Zusätzlich werden die User interviewt, um neue Anforderungen zu erfassen. Ergänzend wird die Optik des Formulars mit Orientierung an der DIN 5008 überarbeitet.
2013
Im ersten Kapitel wird die Anforderungsanalyse und Ideenfindung behandelt, worauf in den folgenden Abschnitten, aufbauend auf das analysierte Ergebnis, der Sofwareentwurf inklusive Datenbankdesign und die Implementierung mit Bezug auf die engesetzten Frameworks betrachtet wird. Den Abschluss bildet ein Test der Anwendung.
Die Anforderungsanalyse bildet den Ausgangspunkt der Arbeit mit der Durchführung von Recherchen zu den bisherigen Dateiübertragungsmöglichkeiten der Fernwartungssoftware und zu verschiedenen Cloud-Storage-Anbietern. Auf Grundlage der Ergebnisse wurden anschließend Szenarien und Konzepte entwickelt, die beschreiben, wie die Integration der Cloud-Storage-Dienste in die Anwendung aussehen könnte. Im weiteren Zuge der Analyse stand das Aufstellen von Anforderungen und Anwendungsfällen für die Umsetzung der Integration anhand der erarbeiteten Szenarien und Konzepte.
Die Entwicklung eines Prototyps entstand anschließend auf Basis eines der erstellten Szenarios. Hierfür wurde die Integration in die bestehende Architektur vorgenommen, wichtige Verantwortlichkeitsbereiche definiert und ein Entwurfsmodell aufgebaut, aus dem die Realisierung des Prototyps entstand.
hands of the dispatcher. Once a tour is planned and initiated, he’s in charge of controlling and supervising.
On unexpected events, counteractive measures have to be taken
and customers have to be informed. At Dachser GmbH & Co. KG, one single dispatcher
has an average of 25 parallel monitored tours every day. In total approximately 50 tours
are processed by the dispatcher every day. In order to ease the daily work life, this master thesis with the title
“Prototypical development of a geofencing application for a logistics company”
by Sebastian Linder seeks to automate the process of supervising by using geofencing.
Enabled by recently emerging techniques, geofencing allows for a defined area to be
fenced so that an action can be triggered when a tracked device is entering or leaving Wi
that zone. This principle is applied to the calculated route of a tour in a way that an
alarm is triggered once the relative vehicle leaves a fence. A fence can either be mere
geographical or can include a time dimension in which it moves along the route. After
analyzing several use cases in this quite new field geofencing, a prototype is designed,
implemented and tested. Especially the application of time-related geofencing has proven
to be efficient and time-saving in perceiving delays and unexpected incidences.
Dazu werden als Erstes aktuelle mobile Endgeräte vorgestellt und verglichen. Danach werden die neuen Webtechnologien HTML5, CSS3 und JavaScript vorgestellt und eine Definition einer Web-Anwendung erarbeitet.
Außerdem werden allgemeine Unterschiede zwischen nativen Anwendungen und Web-Anwendungen aufgezeigt.
Da Web-Anwendungen in einem Browser ausgeführt werden, wird geprüft, welche neuen HTML5-Elemente von den gängigsten Desktop- und mobilen Browsern unterstützt werden.
Anschließend wird auf die Softwarearchitektur von nativen Anwendungen und Web-Anwendungen eingegangen und deren Unterschiede hervorgehoben. Um die theoretischen Erkenntnisse zu untermauern, wird die bestehende ADAC-Autodatenbank-Android-Applikation als Web-Anwendung erstellt und mögliche Erweiterungen aufgezeigt.
Abschließend wird eine Prognose für die Zukunft abgegeben und ein Fazit aus diesem Vergleich gezogen.
Im Kapitel Realisierung folgt dann die Auseinandersetzung mit den wichtigsten Punkten der Implementierung des Systems.
Dabei wird neben allgemeinen Aspekten der Softwareentwicklung insbesondere auf Details der Objekt Abbildung eingegangen.
Ein Teil dieser Ausarbeitung konzentriert sich auf Eigenheiten, die bei der Umsetzung der Webservices mit Windows Communication Foundation (WCF) auftreten. Dies umfasst neben dem Entwurf eines Sicherheitskonzepts auch konkrete Ansätze für die Behandlung von Ausnahmefällen.
Abschließend werden Tests beschrieben, welche die Erfüllung der eingangs definierten Anforderungen überprüfen.
Einen größeren positiven Einfluss hat die Wiederverwendung jedoch, wenn sie bereits in der Analysephase eingesetzt wird. Das bestimmende Artefakt in dieser Phase ist dabei die Anforderung.
Im Rahmen dieser Arbeit wird die Problematik der Wiederverwendbarkeit von Anforderungen analysiert, in zwei wesentliche Problemfelder eingeteilt und aufgezeigt, welche Wechselwirkungen und Zusammenhänge zwischen den verschiedenen Ursachen und Auswirkungen bzgl. der Hemmung oder dem Ausbleiben der Wiederverwendbarkeit von Anforderungen auftreten können. Die Herstellung eindeutiger Verantwortlichkeiten basierend auf loser Kopplung und hoher Kohäsion stellen eine wichtige Grundvoraussetzung für die Wiederverwendbarkeit von Anforderungen dar.
Das in dieser Arbeit entwickelte Konzept zeigt einen Formalismus und eine Methodik unter Verwendung von objektorientierten Techniken auf, mit der eine Wiederverwendbarkeit von funktionalen Anforderungen erreicht werden kann.
2012
Das Ziel dieser Arbeit besteht nicht in der praktischen Einführung und organisatorischen Verankerung von Multi-Projektmanagement, sondern in der Erstellung eines Maßnahmenkataloges. Dieser soll die grundlegenden organisatorischen Rahmenbedingungen herausarbeiten, welche für die erfolgreiche Einführung von Multi-Projektmanagement notwendig sind.
von Sebastian Linder behandelt die Erstellung einer Nahverkehrsdispositionskarte, die aus den beiden Komponenten Routenberechnung & -darstellung besteht. Da eine solche grafische Anwendung in der Nahverkehrsdisposition im Unternehmen Dachser GmbH & Co. KG bis heute nicht existent ist, sind die Möglichkeiten der Optimierung allemal gegeben.
Die zentrale Aufgabe ist es, diese Komponenten austauschbar zu gestalten, so dass die Abhängigkeit von einem Dienstleister nicht gegeben ist. Grund hierfür ist, dass man sich im Hause Dachser erst in Zukunft entscheiden möchte, auf welchen Dienstanbieter man setzen möchte bzw. ob man sich überhaupt auf jeweils einen beschränkt. Hierzu werden einige Möglichkeiten ermittelt, evaluiert und im darauffolgenden Schritt teilweise in einem Prototyp realisiert.
Dabei erfolgte im ersten Schritt die Analyse der bisher bestehenden Lösung, die als Grundlage für die anschließende fachliche Konzeption des Project Management Assignment Tools diente. Die prototypische Implementierung der auf diesem Konzept basierenden Applikation sowie eine Evaluation dieses Tools unter den Mitarbeitern des Unternehmens sind ebenfalls wesentliche Bestandteile dieser Bachelorarbeit.
2011
Das Ziel der Arbeit war es, aus dem großen und schwer überschaubaren Markt an Reportgeneratoren eine geringe Anzahl an Programmen, die für die bei CompAS GmbH entwickelte Software passend erscheinen, herauszufiltern und aus dieser Menge wiederrum einen Kandidaten für die spätere Einführung im Betrieb zu evaluieren. Des Weiteren sollte von dem gefundenen Kandidaten ein Prototyp für die Integration erstellt werden.
Nachdem ich mir einen Überblick über den Markt verschafft habe, habe ich das große Angebot eingeschränkt und die an geeignetsten erscheinenden Produkte mir Hilfe einer Nutzwertanalyse miteinander verglichen.
Der dabei gefundene Kandidat „SpagoBI“ wurde im Anschluss als Prototyp von mir aufgesetzt und getestet.
Letztendlich herausgestellt hat sich bei dieser Arbeit, dass ein Vergleich der zum Teil sehr stark unterschiedlichen Reportlösungen durchaus diffizil sein kann und man alle Anforderungen zunächst auf eine abstrakte Basis bringen muss.
Ausgangsbasis der Arbeit ist das bereits seit 1996 existierende Mac-Programm „CDFinder“. Dieses ist ein kompaktes, schnelles Katalogisierungs- und Archivierungsprogramm mit Funktionen wie Geotagging oder der Auswertung von EXIF- und ID3-Tags der zu katalogisierenden Dateien. Im Zuge der immer größeren Verbreitung von Smartphones, insbesondere des Apple iPhones, wäre es durchaus von Nutzen, eine Desktop-Anwendung (eingeschränkt) auch auf Smartphones nutzen zu können.
Der Auftraggeber möchte daher, dass es von der kommenden Version 6.0 von Medora auch eine Version für Smartphones, zunächst beschränkt auf alle unter Apples iOS laufenden Geräte, gibt.
Die im Zuge dieses Projektes durchzuführenden Arbeiten sind: Analyse der existierenden Desktop-Software und Anforderungsanalyse der mobilen Version. Hierfür sollen, gemeinsam mit dem Auftraggeber, alle Muss- und Wunschkriterien festgelegt und genau spezifiziert werden. Ebenso müssen alle Use-Cases dargestellt werden und die Nicht-funktionalen Anforderungen geklärt werden. Anschließend wird die Architektur der bereits bestehenden Software analysiert. Da es sich, abgesehen von der GUI, um eine reine Portierung handelt, wird auch die iPhone-Version diese haben. Die Architektur für die neu zu entwickelnde Benutzeroberfläche ist durch das SDK vorgegeben und wird in dieser Arbeit nur beschrieben.
Anschließend müssen alle Kernklassen von Medora so angepasst werden, dass sie auf iOS 4.1 lauffähig sind, um anschließend eine neue, speziell auf das Betriebssystem von Apple angepasste, grafische Oberfläche zu entwickeln. Hierbei müssen einige Richtlinien und Vorgaben von Apple beachtet werden.
Im Rahmen einer durchgeführten Anforderungsanalyse wurden die Ausgangslage des Projekts sowie die Anforderungen der Firma Hirschvogel gegenüber der neuen Version der Suchmaschine ermittelt und dokumentiert. Im Anschluss daran folgte die Validierung der Anforderungen hinsichtlich verschiedener Qualitätskriterien und Qualitätsaspekte. Bereits zu diesem Zeitpunkt wurden logische Testfälle erstellt. Nachdem die Anforderungen ermittelt, dokumentiert und validiert waren, erfolgte die Beschreibung der Architekturen der Test- sowie Produktivsysteme. Anschließend wurde die Suchmaschine zunächst auf dem Testsystem und nach erfolgreichem Basiskonfigurationstest auch auf dem Produktivsystem installiert. Zu diesem Zeitpunkt befindet sich das Projekt noch in der Implementierungs-Phase, die Systeme müssen noch vollständig konfiguriert werden. Sobald die Systeme für die Dualitätssicherungs-Phase freigegeben sind, können die Tests gemäß dem definierten Testprozess durchgeführt werden. Nach dem Abschluss der Testphase wird die neue Version der Suchmaschine im Unternehmen eingeführt. Die Mitarbeiter werden über das firmeneigene Intranetportal über die Einführung der Suchmaschine informiert. Zudem wird ihnen ein Leitfaden zur effektiven und effizienten Benutzung der Suchfunktion zur Verfügung gestellt. Die Benutzerumfrage sollte einige Zeit nach der Einführung wiederholt werden, um zu ermitteln, ob die Benutzer mit der neuen Version der Suchmaschine zufriedener sind als mit der vorherigen.
2010
Aufgrund der hohen Komplexität des neuen Systems lag ein Hauptaugenmerk auf dem leicht erweiterbaren Design der Applikation.
Mit dieser Arbeit wird die Grundlage für die Weiterentwicklung des Systems geschaffen. Die noch nicht behandelten Testphasen des V-Modells sowie die vollständige Implementierung müssen zu einem späteren Zeitpunkt noch durchgeführt werden.
Der Grund für diese Arbeit ist das Marktsegment der Produktion am Fließband in der Automobilbranche. Dabei ist die Performance ein wichtiger Faktor. In der Produktion wird die Version 2.00.2 des ASAM MCD-3D Standards verlangt, deshalb musste der Server erst auf diese Version umgestellt werden. In dieser Arbeit werden alle nötigen Refactorings beschrieben, die dafür durchgeführt wurden. Um die Performance messen zu können, musste eine Benchmarkumgebung erstellt werden, dazu gehört Hardware, Software und geeignete Testdaten. Nach der Analyse wurden mehrere Optimierungen durchgeführt. Diese Optimierungen werden in dieser Diplomarbeit festgehalten.
Die Software verwaltet dabei den Zugriff auf die eLogistics-Anwendungen der Firma Dachster GmbH & Co. KG. Mit diesen Anwendungen bietet Dachser seinen Kunden webbasierte Logistikdienstleistungen an. Ziel der Arbeit war es, ein Konzept zu erstellen, das nicht nur die bestehenden Probleme löst, sondern auch aktuelle Anforderungen aufgreift und die Weichen für zukünftige Entwicklungen stellt.
In einem ersten Schritt erfolgte die Analyse der bestehenden Lösung, deren Bewertung als Grundlage für die anschließende Konzeption und Definition der Benutzerverwaltung diente. Eine prototypische Implementierung dieses Konzepts rundet die Arbeit ab.