8 resultados para SOFTWARE ENGINEERING BY EXAMPLES
em Universitätsbibliothek Kassel, Universität Kassel, Germany
Resumo:
Many examples for emergent behaviors may be observed in self-organizing physical and biological systems which prove to be robust, stable, and adaptable. Such behaviors are often based on very simple mechanisms and rules, but artificially creating them is a challenging task which does not comply with traditional software engineering. In this article, we propose a hybrid approach by combining strategies from Genetic Programming and agent software engineering, and demonstrate that this approach effectively yields an emergent design for given problems.
Resumo:
Self-adaptive software provides a profound solution for adapting applications to changing contexts in dynamic and heterogeneous environments. Having emerged from Autonomic Computing, it incorporates fully autonomous decision making based on predefined structural and behavioural models. The most common approach for architectural runtime adaptation is the MAPE-K adaptation loop implementing an external adaptation manager without manual user control. However, it has turned out that adaptation behaviour lacks acceptance if it does not correspond to a user’s expectations – particularly for Ubiquitous Computing scenarios with user interaction. Adaptations can be irritating and distracting if they are not appropriate for a certain situation. In general, uncertainty during development and at run-time causes problems with users being outside the adaptation loop. In a literature study, we analyse publications about self-adaptive software research. The results show a discrepancy between the motivated application domains, the maturity of examples, and the quality of evaluations on the one hand and the provided solutions on the other hand. Only few publications analysed the impact of their work on the user, but many employ user-oriented examples for motivation and demonstration. To incorporate the user within the adaptation loop and to deal with uncertainty, our proposed solutions enable user participation for interactive selfadaptive software while at the same time maintaining the benefits of intelligent autonomous behaviour. We define three dimensions of user participation, namely temporal, behavioural, and structural user participation. This dissertation contributes solutions for user participation in the temporal and behavioural dimension. The temporal dimension addresses the moment of adaptation which is classically determined by the self-adaptive system. We provide mechanisms allowing users to influence or to define the moment of adaptation. With our solution, users can have full control over the moment of adaptation or the self-adaptive software considers the user’s situation more appropriately. The behavioural dimension addresses the actual adaptation logic and the resulting run-time behaviour. Application behaviour is established during development and does not necessarily match the run-time expectations. Our contributions are three distinct solutions which allow users to make changes to the application’s runtime behaviour: dynamic utility functions, fuzzy-based reasoning, and learning-based reasoning. The foundation of our work is a notification and feedback solution that improves intelligibility and controllability of self-adaptive applications by implementing a bi-directional communication between self-adaptive software and the user. The different mechanisms from the temporal and behavioural participation dimension require the notification and feedback solution to inform users on adaptation actions and to provide a mechanism to influence adaptations. Case studies show the feasibility of the developed solutions. Moreover, an extensive user study with 62 participants was conducted to evaluate the impact of notifications before and after adaptations. Although the study revealed that there is no preference for a particular notification design, participants clearly appreciated intelligibility and controllability over autonomous adaptations.
Resumo:
Die Dissertation befasst sich mit der Einführung komplexer Softwaresysteme, die, bestehend aus einer Kombination aus parametrisierter Standardsoftware gepaart mit Wettbewerbsvorteil sichernden Individualsoftwarekomponenten, keine Software-Engineering-Projekte im klassischen Sinn mehr darstellen, sondern einer strategieorientierten Gestaltung von Geschäftsprozessen und deren Implementierung in Softwaresystemen bedürfen. Die Problemstellung einer adäquaten Abwägung zwischen TCO-optimierender Einführung und einer gleichzeitigen vollständigen Unterstützung der kritischen Erfolgsfaktoren des Unternehmens ist hierbei von besonderer Bedeutung. Der Einsatz integrierter betriebswirtschaftlicher Standardsoftware, mit den Möglichkeiten einer TCO-Senkung, jedoch ebenfalls der Gefahr eines Verlustes von Alleinstellungsmerkmalen am Markt durch Vereinheitlichungstendenzen, stellt ein in Einführungsprojekten wesentliches zu lösendes Problem dar, um Suboptima zu vermeiden. Die Verwendung von Vorgehensmodellen, die sich oftmals an klassischen Softwareentwicklungsprojekten orientieren oder vereinfachte Phasenmodelle für das Projektmanagement darstellen, bedingt eine fehlende Situationsadäquanz in den Detailsituationen der Teilprojekte eines komplexen Einführungsprojektes. Das in dieser Arbeit entwickelte generische Vorgehensmodell zur strategieorientierten und partizipativen Einführung komplexer Softwaresysteme im betriebswirtschaftlichen Anwendungsbereich macht - aufgrund der besonders herausgearbeiteten Ansätze zu einer strategieorientierten Einführung, respektive Entwicklung derartiger Systeme sowie aufgrund der situationsadäquaten Vorgehensstrategien im Rahmen der Teilprojektorganisation � ein Softwareeinführungsprojekt zu einem Wettbewerbsfaktor stärkenden, strategischen Element im Unternehmen. Die in der Dissertation diskutierten Überlegungen lassen eine Vorgehensweise präferieren, die eine enge Verschmelzung des Projektes zur Organisationsoptimierung mit dem Softwareimplementierungsprozess impliziert. Eine Priorisierung der Geschäftsprozesse mit dem Ziel, zum einen bei Prozessen mit hoher wettbewerbsseitiger Priorität ein organisatorisches Suboptimum zu vermeiden und zum anderen trotzdem den organisatorischen Gestaltungs- und den Systemimplementierungsprozess schnell und ressourcenschonend durchzuführen, ist ein wesentliches Ergebnis der Ausarbeitungen. Zusätzlich führt die Ausgrenzung weiterer Prozesse vom Einführungsvorgang zunächst zu einem Produktivsystem, welches das Unternehmen in den wesentlichen Punkten abdeckt, das aber ebenso in späteren Projektschritten zu einem System erweitert werden kann, welches eine umfassende Funktionalität besitzt. Hieraus ergeben sich Möglichkeiten, strategischen Anforderungen an ein modernes Informationssystem, das die kritischen Erfolgsfaktoren eines Unternehmens konsequent unterstützen muss, gerecht zu werden und gleichzeitig ein so weit als möglich ressourcenschonendes, weil die Kostenreduktionsaspekte einer Standardlösung nutzend, Projekt durchzuführen. Ein weiterer wesentlicher Aspekt ist die situationsadäquate Modellinstanziierung, also die projektspezifische Anpassung des Vorgehensmodells sowie die situationsadäquate Wahl der Vorgehensweisen in Teilprojekten und dadurch Nutzung der Vorteile der verschiedenen Vorgehensstrategien beim konkreten Projektmanagement. Der Notwendigkeit der Entwicklung einer Projektorganisation für prototypingorientiertes Vorgehen wird in diesem Zusammenhang ebenfalls Rechnung getragen. Die Notwendigkeit der Unternehmen, sich einerseits mit starken Differenzierungspotenzialen am Markt hervorzuheben und andererseits bei ständig sinkenden Margen einer Kostenoptimierung nachzukommen, lässt auch in Zukunft das entwickelte Modell als erfolgreich erscheinen. Hinzu kommt die Tendenz zu Best-Of-Breed-Ansätzen und komponentenbasierten Systemen im Rahmen der Softwareauswahl, die eine ausgesprochen differenzierte Vorgehensweise in Projekten verstärkt notwendig machen wird. Durch die in das entwickelte Modell integrierten Prototyping-Ansätze wird der auch in Zukunft an Bedeutung gewinnenden Notwendigkeit der Anwenderintegration Rechnung getragen.
Resumo:
Fujaba is an Open Source UML CASE tool project started at the software engineering group of Paderborn University in 1997. In 2002 Fujaba has been redesigned and became the Fujaba Tool Suite with a plug-in architecture allowing developers to add functionality easily while retaining full control over their contributions. Multiple Application Domains Fujaba followed the model-driven development philosophy right from its beginning in 1997. At the early days, Fujaba had a special focus on code generation from UML diagrams resulting in a visual programming language with a special emphasis on object structure manipulating rules. Today, at least six rather independent tool versions are under development in Paderborn, Kassel, and Darmstadt for supporting (1) reengineering, (2) embedded real-time systems, (3) education, (4) specification of distributed control systems, (5) integration with the ECLIPSE platform, and (6) MOF-based integration of system (re-) engineering tools. International Community According to our knowledge, quite a number of research groups have also chosen Fujaba as a platform for UML and MDA related research activities. In addition, quite a number of Fujaba users send requests for more functionality and extensions. Therefore, the 8th International Fujaba Days aimed at bringing together Fujaba develop- ers and Fujaba users from all over the world to present their ideas and projects and to discuss them with each other and with the Fujaba core development team.
Resumo:
This thesis aims at empowering software customers with a tool to build software tests them selves, based on a gradual refinement of natural language scenarios into executable visual test models. The process is divided in five steps: 1. First, a natural language parser is used to extract a graph of grammatical relations from the textual scenario descriptions. 2. The resulting graph is transformed into an informal story pattern by interpreting structurization rules based on Fujaba Story Diagrams. 3. While the informal story pattern can already be used by humans the diagram still lacks technical details, especially type information. To add them, a recommender based framework uses web sites and other resources to generate formalization rules. 4. As a preparation for the code generation the classes derived for formal story patterns are aligned across all story steps, substituting a class diagram. 5. Finally, a headless version of Fujaba is used to generate an executable JUnit test. The graph transformations used in the browser application are specified in a textual domain specific language and visualized as story pattern. Last but not least, only the heavyweight parsing (step 1) and code generation (step 5) are executed on the server side. All graph transformation steps (2, 3 and 4) are executed in the browser by an interpreter written in JavaScript/GWT. This result paves the way for online collaboration between global teams of software customers, IT business analysts and software developers.
Resumo:
Die ubiquitäre Datenverarbeitung ist ein attraktives Forschungsgebiet des vergangenen und aktuellen Jahrzehnts. Es handelt von unaufdringlicher Unterstützung von Menschen in ihren alltäglichen Aufgaben durch Rechner. Diese Unterstützung wird durch die Allgegenwärtigkeit von Rechnern ermöglicht die sich spontan zu verteilten Kommunikationsnetzwerken zusammen finden, um Informationen auszutauschen und zu verarbeiten. Umgebende Intelligenz ist eine Anwendung der ubiquitären Datenverarbeitung und eine strategische Forschungsrichtung der Information Society Technology der Europäischen Union. Das Ziel der umbebenden Intelligenz ist komfortableres und sichereres Leben. Verteilte Kommunikationsnetzwerke für die ubiquitäre Datenverarbeitung charakterisieren sich durch Heterogenität der verwendeten Rechner. Diese reichen von Kleinstrechnern, eingebettet in Gegenstände des täglichen Gebrauchs, bis hin zu leistungsfähigen Großrechnern. Die Rechner verbinden sich spontan über kabellose Netzwerktechnologien wie wireless local area networks (WLAN), Bluetooth, oder UMTS. Die Heterogenität verkompliziert die Entwicklung und den Aufbau von verteilten Kommunikationsnetzwerken. Middleware ist eine Software Technologie um Komplexität durch Abstraktion zu einer homogenen Schicht zu reduzieren. Middleware bietet eine einheitliche Sicht auf die durch sie abstrahierten Ressourcen, Funktionalitäten, und Rechner. Verteilte Kommunikationsnetzwerke für die ubiquitäre Datenverarbeitung sind durch die spontane Verbindung von Rechnern gekennzeichnet. Klassische Middleware geht davon aus, dass Rechner dauerhaft miteinander in Kommunikationsbeziehungen stehen. Das Konzept der dienstorienterten Architektur ermöglicht die Entwicklung von Middleware die auch spontane Verbindungen zwischen Rechnern erlaubt. Die Funktionalität von Middleware ist dabei durch Dienste realisiert, die unabhängige Software-Einheiten darstellen. Das Wireless World Research Forum beschreibt Dienste die zukünftige Middleware beinhalten sollte. Diese Dienste werden von einer Ausführungsumgebung beherbergt. Jedoch gibt es noch keine Definitionen wie sich eine solche Ausführungsumgebung ausprägen und welchen Funktionsumfang sie haben muss. Diese Arbeit trägt zu Aspekten der Middleware-Entwicklung für verteilte Kommunikationsnetzwerke in der ubiquitären Datenverarbeitung bei. Der Schwerpunkt liegt auf Middleware und Grundlagentechnologien. Die Beiträge liegen als Konzepte und Ideen für die Entwicklung von Middleware vor. Sie decken die Bereiche Dienstfindung, Dienstaktualisierung, sowie Verträge zwischen Diensten ab. Sie sind in einem Rahmenwerk bereit gestellt, welches auf die Entwicklung von Middleware optimiert ist. Dieses Rahmenwerk, Framework for Applications in Mobile Environments (FAME²) genannt, beinhaltet Richtlinien, eine Definition einer Ausführungsumgebung, sowie Unterstützung für verschiedene Zugriffskontrollmechanismen um Middleware vor unerlaubter Benutzung zu schützen. Das Leistungsspektrum der Ausführungsumgebung von FAME² umfasst: • minimale Ressourcenbenutzung, um auch auf Rechnern mit wenigen Ressourcen, wie z.B. Mobiltelefone und Kleinstrechnern, nutzbar zu sein • Unterstützung für die Anpassung von Middleware durch Änderung der enthaltenen Dienste während die Middleware ausgeführt wird • eine offene Schnittstelle um praktisch jede existierende Lösung für das Finden von Diensten zu verwenden • und eine Möglichkeit der Aktualisierung von Diensten zu deren Laufzeit um damit Fehlerbereinigende, optimierende, und anpassende Wartungsarbeiten an Diensten durchführen zu können Eine begleitende Arbeit ist das Extensible Constraint Framework (ECF), welches Design by Contract (DbC) im Rahmen von FAME² nutzbar macht. DbC ist eine Technologie um Verträge zwischen Diensten zu formulieren und damit die Qualität von Software zu erhöhen. ECF erlaubt das aushandeln sowie die Optimierung von solchen Verträgen.
Resumo:
Simulation hat sich in der Vergangenheit als unterstützendes Planungsinstrument und Prognosemethode zur Untersuchung von Materialflusssystemen in verschiedenen Branchen etabliert. Dafür werden neben Simulationswerkzeugen auch zunehmend Virtual Reality (VR), insbesondere mit dem Ansatz Digitale Fabrik, eingesetzt. Ein Materialflusssimulator, der für den VR–Einsatz geeignet ist,existiert noch nicht, so dass Anwender gegenwärtig mit verschiedenen Systemen arbeiten müssen, um Untersuchungen eines Simulationsmodells in einem VR–Umfeld wie beispielsweise in einem CAVE zu ermöglichen. Zeitlicher Aufwand ist dadurch vorprogrammiert und das Auftreten von Fehlern bei der Konvertierung des Simulationsmodells möglich. Da auch der hauseigene Materialflusssimulator SIMFLEX/3D nicht für beide Anwendungsgebiete genutzt werden kann und für einen solchen Einsatz mit sehr hohem Aufwand angepasst werden müsste, wurde stattdessen ein neues Simulationssystem entworfen. Das Simulationssystem wird in der vorliegenden Arbeit als ein interoperables und offenes System beschrieben, das über eine flexible Softwarearchitektur verfügt und in einem vernetzten Umfeld mit anderen Werkzeugen Daten austauschen kann. Die grundlegende Idee besteht darin, eine flexible Softwarearchitektur zu entwerfen, die zunächst interaktive und ereignisorientierte 3D–Simulation erlaubt, aber zusätzlich für andere Anwendungszwecke offen gehalten wird. Durch den offenen Ansatz können Erweiterungen, die in Form von Plugins entwickelt werden, mit geringem Aufwand in das System integriert werden, wodurch eine hohe Flexibilität des Systems erreicht wird. Für interoperable Zwecke werden Softwaremodule vorgestellt, die optional eingesetzt werden können und standardisierte Formate wie bspw. XML benutzen. Mit dem neuen Simulationssystem wird die Lücke zwischen Desktop– und VR–Einsatz geschlossen und aus diesem Grund der Zeitaufwand und Fehlerquellen reduziert. Darüber hinaus ermöglicht der offene Ansatz, das Simulationssystem rollen- und aufgabenspezifisch anzupassen, indem die erforderlichen Plugins bereitgestellt werden. Aus diesem Grund kann das Simulationssystem mit sehr geringem Aufwand um weitere Untersuchungsschwerpunkte wie beispielsweise Avatare ergänzt werden. Erste Untersuchungen in einem CAVE wurden erfolgreich durchgeführt. Für die Digitale Fabrik kann der Prototyp eingesetzt werden, um die Produktionsplanung mit Hilfe der Simulation und die Entwicklung mit Hilfe der entwickelten Viewer zu unterstützen. Letzteres ist möglich, da die Viewer zahlreiche CAD–Formate lesen und um weitere Formate ergänzt werden können. Das entwickelte System ist für den Einsatz in verschiedenen Prozessen einer Wertschöpfungskette geeignet,um es als Untersuchungs-, Kommunikations- und Steuerungswerkzeug einzusetzen.
Resumo:
In der vorliegenden Dissertation geht es um die Dokumentation, theoretische Begründung und Auswertung des in 25 Jahren Praxis entwickelten Curriculums der Bewusstseinsschulung und -weitung der Orgodynamik. Dabei geht es insbesondere um den Vergleich und die forschungsorientierte Verknüpfung verschiedener Traditionen der Bewusstseinsbildung, der ihnen zugrunde liegenden Konzepte und anthropologischen Dimensionen im Schnittfeld pädagogischer, psychologischer und spiritueller Perspektiven. In Anlehnung an das von Fuhr/Dauber (2002) entwickelte Modell, der Praxisentwicklungsforschung, welche die Verflechtung von Theorie und Praxis ansteuert, wird der orgodynamische Ansatz wissenschaftlich dokumentiert und theoretisch begründet. Über eine induktive Vorgehensweise werden die historischen Wurzeln konzeptionell dargelegt, die verborgenen Paradigmen herausgearbeitet, sowie das Curriculum erläutert und ausgewertet. In einem ersten theorieorientierten Kapitel wird das orgodynamische Methodenspektrum in seinem Grundmodell und den vier zentralen Dimensionen (mentale, körperliche, emotionale, energetische Dimension) aufgezeigt und mit theoretischen Hintergrundkonzepten verglichen und verknüpft. Die vier sich überlappenden Methodengruppen der mental, körperlich, emotional und energetisch orientierten Bewusstseinsarbeit werden differenziert dargestellt und in ihrer Beziehung zueinander diskutiert. Anhand eines Modells (Methodenrad) wird die multi-dimensionale Perspektive des Methodenspektrums, in einer nichthierarchischen Zuordnung sichtbar. Im zweiten theorieorientierten Hauptteil werden zunächst die zentralen vier Paradigmen der Orgodynamik (Präsenz, Multidimensionalität, Flow/Fließendes Gewahrsein, Bezogenheit) vorgestellt, theoretisch und praxisbezogen entfaltet und in einer Paradigmen-Landkarte zueinander in Beziehung gesetzt. Dabei werden die kategorialen Ausführungen durchgehend an Praxisbeispielen veranschaulicht und im Blick auf drei vorgestellte Zugänge zur Bewusstseinsweitung (Immersion, Integration und Dekonstruktion) exemplarisch didaktisch kommentiert. Im dritten Hauptteil wird das Curriculum im Zusammenhang mit einer Auswertungsmatrix erläutert. Diese dient als Überprüfungsinstrument. Mit ihrer Hilfe werden die verschiedenen methodischen Zugangsweisen und Arbeitsformen dieses Ansatzes, exemplarisch anhand von 2 Ausbildungswochen, im Blick der Multidimensionalität dokumentiert. Damit wird diese multidimensional angelegte Praxis exemplarisch bis in methodische Details nachvollziehbar und in dialogisch-selbstreflexiver Form überprüfbar. Exemplarisch werden in einem Exkurs erste Itemvorschläge gemacht, welche die wissenschaftliche Anschlussfähigkeit an neuere Forschung im transpersonalen Bereich aufzeigen. Das innere Anliegen der vorliegenden Arbeit zeigt in der Verschränkung von Theorie und Praxis, dass die Paradigmen der Orgodynamik, Präsenz, Multidimensionalität, fließendes Gewahrsein und bewusste Bezogenheit vier pädagogisch umgesetzte Paradigmen für eine Bewusstseinserforschung in der Erwachsenenbildung sind. Stichworte: Multidimensional, Bewusstseinserforschung, Bewusstseinsweite, Präsenz, bewusste Bezogenheit, Flow/Fließendes Gewahrsein, das „Größere“, Immersion, Integration, Dekonstruktion, pädagogische Paradigmen, Erwachsenenbildung, Multidimensionales Methodenspektrum, Orgodynamik, Körpertherapie. ---------------------------