3,095 research outputs found

    Schaffung einer Basis für die kontinuierliche Qualitätsanalyse

    Get PDF
    Die Qualität der Software ist ein wesentlicher Faktor für den wirtschaftlichen Erfolg von Softwaresystemen, die langlebig und erweiterbar sein sollen. Sie hat vor allem entscheidenden Einfluss auf die Effizienz der Wartung und Weiterentwicklung. Erfahrungsgemäß nimmt aber die Qualität der Software mit der Zeit ab. Die kontinuierlichen Änderungen und Erweiterungen des Quellcodes, sich ständig ändernde Anforderungen und die Anpassungen der Software an unterschiedliche technische Umgebungen können zum schleichenden Qualitätsverfall führen. Um diesem Verfall der Qualität entgegenzuwirken, ist es notwendig gewisse Regeln zu definieren und durch eine kontinuierliche Analyse die Einhaltung dieser Regeln zu kontrollieren. Dabei soll nicht nur der Entwicklungsprozess, sondern auch das Produkt selbst analysiert und verbessert werden. Auf Grund der Größe heutiger Softwaresysteme ist es empfehlenswert solch eine Qualitätsüberprüfung sowohl durch manuelle Inspektionen, als auch mittels dafür geeigneten Werkzeugen durchzuführen. Die Werkzeuge, die zur Operationalisierung der kontinuierlichen Softwarequalitätsanalyse dienen, werden Software Quality Dashboards genannt. Diese Werkzeuge sammeln und liefern Daten über den aktuellen Qualitätszustand eines Softwaresystems in Form von Tabellen, Trends- und Übersichtsgrafiken. Mit Hilfe dieser Daten können später Aussagen über die Qualität und die Weiterentwicklungsfähigkeit des Softwaresystems gemacht werden

    Systematische Prozessunterstützung für die Entwicklung laufzeitkritischer Softwaresysteme: Systematische Prozessunterstützung für die Entwicklung laufzeitkritischer Softwaresysteme: PROKRIS-Methodik und -Framework

    Get PDF
    In vielen Bereichen des täglichen Lebens, angefangen vom Online-Banking bis hin zur Steuerung im Flugzeug, kommt Software mit laufzeitkritischen nicht-funktionalen Eigenschaften (NFE) zum Einsatz. Die Erfüllung der NFE spielt in diesen Anwendungen eine zentrale Rolle. Um dies zu erreichen, ist eine systematische und zielorientierte Behandlung dieser Anforderungen während der Entwicklung zwingend erforderlich. NFE zeichnen sich im Gegensatz zu funktionalen Eigenschaften durch besondere Merkmale aus, die ein adaptives Vorgehen zur Definition des Entwicklungsprozesses erzwingen. In der Arbeit wird eine Methodik zur kontextbasierten Anpassung von Vorgehensmodellen an laufzeitkritische NFE auf der Basis von Prozessmustern sowie das PROKRIS-Framework als unterstützende Umgebung vorgestellt

    Situationsgerechte Methodenweiterentwicklung auf Basis von MetaMe am Beispiel der Server-System-Entwicklung

    Get PDF
    Die Einführung domänenspezifischer Entwicklungsmethoden in Unternehmen birgt Risiken. Der Aufwand, der aus einer kompletten Ersetzungeiner bestehenden Entwicklungsmethode hervorgeht, kann sehr umfangreich sein und dadurch sind die Investitionskosten schlecht planbar. Darüber hinaus sind die erwarteten Vorteile mit Unsicherheiten behaftet, denn jedes Unternehmen besitzt schlecht änderbare, individuelle Eigenschaften, die so genannten Situationsfaktoren. Sie beschreiben den Methodenkontext, in dem die Entwicklungsmethode angewendet wird. Passt die domänenspezifische Entwicklungsmethode nicht zu dem gegebenen Methodenkontext, ist eine erfolgreiche Einführung gefährdet. Zur Reduzierung der genannten Risiken erweitert diese Arbeit den bestehenden Ansatz MetaMe, eine Meta-Methode zur Entwicklung von individuellen Softwareentwicklungsmethoden, um die Eigenschaften der situationsgerechten Methodenweiterentwicklung. Eine zusätzliche Ist-Analyse identifiziert die vorhandene Entwicklungsmethode, die mittels einer neuen Sprache modellbasiert dokumentiert wird. Eine Verbesserungs-Analyse ermittelt darauf aufbauend die Optimierungspotenziale und Situationsfaktoren, aus denen geeigneteMethodenanforderungen erstellt werden. Mit Hilfe der Methodenanforderungen werden iterative Projekte zur Methodenweiterentwicklung definiert. Das ermöglicht die von Unternehmengewünschte schrittweise Änderung der Entwicklungsmethoden. Weiterhin wird gezeigt, wie die Methode mittels Methodenanforderungen an den Methodenkontextangepasst werden kann. Das in dieser Arbeit vorgestellte Vorgehen wird exemplarisch auf zwei industrielle Anwendungsbeispiele aus dem Bereich der Server-System-Entwicklung angewendet. Für jedes Beispiel wird eine individuell entwickelte Entwicklungsmethode vorgestellt.It is risky to introduce domain-specific engineering methods to different companies. The effort to replace an existing engineering method can be extensive so that investment costs are hard to judge. Beside that, the expected advantages have uncertainties because each company has poorly changeable, individual properties, so called situational factors. They describe the method context in that the engineering method will be applied. If the engineering method does not fit to the method context, a successful introduction is jeopardized.To reduce the mentioned risks, this thesis enhances the known approach, MetaMe, a meta-method to develop individual software engineering methods, regarding the characteristics of situational method enhancements. It adds the analysis of the current state to identify the existing engineering method. The engineering method will be described in a model-based manner with a newly introduced language. A demand analysis identifies single improvements and situational factors. Upon that information method requirements are created. Based on the method requirements iterative method enhancement projects are defined. With that it is possible to do a step wise change of engineering methods, which is the desired approach of the companies. Furthermore, it will be shown how to adjust the engineering method according to the method context based on the method requirements.The new method engineering approach is substantiated by two industrial case studies in the area of server-systems-engineering. For each example an individually developed engineering method will be presented.vorgelegt von Michael SpijkermanTag der Verteidigung: 24.03.2015Paderborn, Univ., Diss., 201

    CASE - eine kritische Übersicht

    Get PDF
    CASE ist aus dem Bedürfnis entstanden, den Prozeß der Software-Entwicklung durch Werkzeuge so zu unterstützen, daß die Produktivität gesteigert und die Qualität erhöht wird. Solche Werkzeuge sind auf der Basis moderner Rechner und Betriebssysteme möglich. Für die Interessenten ist es allerdings nicht leicht, die seriösen Produktinformationen von den überzogenen Werbesprüchen zu unterscheiden. Der Beitrag zielt zunächst darauf ab, das Wort CASE mit einem klaren Begriff zu verbinden. Der Zusammenhang zwischen Werkzeugen und Methoden wird ausführlich diskutiert. Weitere Schwerpunkte sind eine Übersicht der Werkzeuge, die unter den Begriff CASE fallen, eine Zusammenstellung der wichtigsten Anforderungen, eine Klassifikation von Werkzeugausstattungen und eine Diskussion ungelöster Probleme heutiger Werkzeuge. Einige Prognosen für die zukünftige Entwicklung des Software Engineerings schließen den Vortrag ab.CASE is the answer to the need for tools which can help the software developer to improve productivity and quality. Modern computers and operating systems make such tools possible. However, distinguishing serious information about products from mere advertisement is everything but easy for a potential customer in the CASE-market. This contribution aims at assigning a clear and useful meaning to the word CASE. The relationships between tools and methods are discussed in some detail. Other topics are a survey of tools covered by the term CASE, a compilation of the most important requirements, a classifikation scheme for tool-boxes, and a discussion of unsolved problems of today's tools. Finally, an attempt is made to sketch a couple of future trends of software engineering

    Evolution und Komposition von Softwaresystemen: Software-Produktlinien als Beitrag zu Flexibilität und Langlebigkeit

    Get PDF
    Software systems are today bigger, more complex and of higher importance for products and services than a decade before. At the same time changes are required many more frequently and of a larger size. Furthermore, they have to be implemented faster. Additionally, the software must achieve a higher life span, particularly because of the cost of its development. In the past, Object-Oriented Programming and Reuse techniques did not provide the expected success. The introduction of software product lines respectively system families makes possible it to reach a degree of prefabrication similar to the one of serial production. At the same time they facilitate the delivery of product variants with a short time to market. In this work methods of the methods of domain analysis are integrated with Reuse approaches and techniques of Generative Programming, and a methodology for product line development is presented. Feature models are used as means expressing variability and product configurations, so that the prefabrication be planned and the production of customer-specific products can be controlled. By enforcing the formalization in terms of syntax and semantics, feature models are made accessible to tools and automation. Object-oriented design models and architecture are separated into fine-granular components in such a way that new products can easily be developed as combinations of those components. The implementation of such products is automated by the composition of source code components. The composition of object models separated similarly enables a uninterrupted automation for the product development, which is controlled by a customer by means of a feature selection. To facilitate such a composition, the Hyperspace approach is applied to UML to Hyper/UML, which makes possible a feature-driven separation and composition of object models. In this way slim products can be developed, containing only the actually needed functionality. For the evolution of product lines and for the integration of existing solutions and components into the evolution, Reverse Engineering and Refactoring techniques are integrated. Requirements, models and implementation are connected by Traceability links to perform changes consistently. As a consequence, the loss of architectural quality - so-called Architectural Decay - can be avoided during the iterative development process. Measures for the improvement of the project and quality management are regarded briefly, as far as they are of importance for the effectiveness of the developed methods. The applicability and suitability of the results of the work were examined in several industrial projects.Softwaresysteme sind heute umfangreicher, komplexer und von entscheidenderer Bedeutung für Produkte und Dienstleistungen als eine Dekade zuvor. Gleichzeitig sind Änderungen viel häufiger und in größerem Umfang erforderlich. Sie müssen auch schneller realisierbar sein. Zudem muss die Software eine höhere Lebensdauer erreichen, vor allem wegen des Aufwandes zu ihrer Entwicklung. Objektorientierte Programmierung und Wiederverwendungstechniken haben dabei nicht den erwarteten Erfolg gebracht. Die Einführung von Software-Produktlinien beziehungsweise Systemfamilien ermöglichen es, einen der Serienfertigung ähnlichen Vorfertigungsgrad zu erreichen und erlauben es gleichzeitig, kurzfristig Produktvarianten zu erstellen. In dieser Arbeit werden Methoden der Domänenanalyse mit Wiederverwendungsansätzen und Generativen Programmiertechniken verknüpft und eine Methodik zur Produktlinien-Entwicklung vorgestellt. Featuremodelle werden als Ausdrucksmittel für Variabilität und Produktkonfigurationen eingesetzt, damit die Vorfertigung geplant und die Erstellung von kundenspezifischen Produkten gesteuert werden kann. Durch Präzisierung ihrer Syntax und Erweiterung ihrer Semantik werden Featuremodelle einer Nutzung in Werkzeugen zugänglich gemacht. Objektorientierte Entwurfsmodelle und Architektur werden so in feingranulare Komponenten zerlegt, dass Varianten als neue Produkte mit geringem Aufwand erstellbar sind. Die Erstellung der Implementierung solcher Produkte wird durch die Komposition von Quelltext-Komponenten automatisiert. Die Komposition von ebenfalls zerlegten Objektmodellen ermöglicht eine durchgehende Automatisierung der Produkterstellung, die durch einen Kunden mittels der Feature-Auswahl gesteuert wird. Dafür wird mit Hyper/UML eine Umsetzung des Hyperspace-Ansatzes auf die Modellierungssprache UML entwickelt, die eine Feature-gesteuerte Zerlegung und Komposition von Objektmodellen ermöglicht. Damit lassen sich schlanke Produkte entwickeln, die nur die tatsächlich benötigte Funktionalität enthalten. Zur Evolution von Produktlinien und zur Einbindung existierender Lösungen und Komponenten in die Evolution werden Reverse-Engineering- und Refactoring-Techniken integriert. Anforderungen, Modelle und Implementierung werden durch Traceability-Links verbunden, damit Änderungen konsistent durchgeführt werden können. Diese Mittel tragen dazu bei, dass während einer iterativen Entwicklung der Verlust an Architektur-Qualität, das sogenannte Architectural Decay, vermieden werden kann. Maßnahmen zur Verbesserung des Projekt- und Qualitätsmanagements werden kurz betrachtet, soweit sie wichtige Randbedingungen für die Wirksamkeit der Methoden schaffen müssen. Die Anwendbarkeit und Eignung der Ergebnisse der Arbeiten wurde in mehreren industriellen Projekten überprüft.Ilmenau, Techn. Univ., Habil.-Schr., 200

    Konzeption und Entwicklung eines automatisierten Workflows zur geovisuellen Analyse von georeferenzierten Textdaten(strömen) / Microblogging Content

    Get PDF
    Die vorliegende Masterarbeit behandelt den Entwurf und die exemplarische Umsetzung eines Arbeitsablaufs zur Aufbereitung von georeferenziertem Microblogging Content. Als beispielhafte Datenquelle wurde Twitter herangezogen. Darauf basierend, wurden Überlegungen angestellt, welche Arbeitsschritte nötig und mit welchen Mitteln sie am besten realisiert werden können. Dabei zeigte sich, dass eine ganze Reihe von Bausteinen aus dem Bereich des Data Mining und des Text Mining für eine Pipeline bereits vorhanden sind und diese zum Teil nur noch mit den richtigen Einstellungen aneinandergereiht werden müssen. Zwar kann eine logische Reihenfolge definiert werden, aber weitere Anpassungen auf die Fragestellung und die verwendeten Daten können notwendig sein. Unterstützt wird dieser Prozess durch verschiedenen Visualisierungen mittels Histogrammen, Wortwolken und Kartendarstellungen. So kann neues Wissen entdeckt und nach und nach die Parametrisierung der Schritte gemäß den Prinzipien des Geovisual Analytics verfeinert werden. Für eine exemplarische Umsetzung wurde nach der Betrachtung verschiedener Softwareprodukte die für statistische Anwendungen optimierte Programmiersprache R ausgewählt. Abschließend wurden die Software mit Daten von Twitter und Flickr evaluiert.This Master's Thesis deals with the conception and exemplary implementation of a workflow for georeferenced Microblogging Content. Data from Twitter is used as an example and as a starting point to think about how to build that workflow. In the field of Data Mining and Text Mining, there was found a whole range of useful software modules that already exist. Mostly, they only need to get lined up to a process pipeline using appropriate preferences. Although a logical order can be defined, further adjustments according to the research question and the data are required. The process is supported by different forms of visualizations such as histograms, tag clouds and maps. This way new knowledge can be discovered and the options for the preparation can be improved. This way of knowledge discovery is already known as Geovisual Analytics. After a review of multiple existing software tools, the programming language R is used to implement the workflow as this language is optimized for solving statistical problems. Finally, the workflow has been tested using data from Twitter and Flickr

    Prozessgebundene Berechnungsbaugruppen - Ein Ansatz zur Lösung komplexer Entscheidungs- und Berechnungsabläufe

    Get PDF
    Interdisziplinäre Produktanforderungen, eine hohe Servicequalität und ein verändertes Nutzerverhalten führen in immer mehr Unternehmen von klassischen funktionsorientierten und abteilungsgebundenen Organisationsformen zu einer Prozessorientierung, in der das Abteilungsdenken durch das Erfolgsziel des Gesamtprozesses ersetzt wird. Dies gilt insbesondere für einen der wichtigsten Teilprozesse der Produktentwicklung, die Berechnung der im Erzeugnis verbauten Maschinenelemente. Deren Auslegung, Optimierung und Nachrechnung sind einerseits Teil eines übergeordneten und arbeitsteiligen Entwicklungsprozesses, bedürfen aber zur eigenen Bestimmung ebenfalls vieler einzelner parallel ablaufender interdisziplinärer Aktivitäten. Die vorliegende Arbeit beschäftigt sich mit der Entwicklung einer Methode zur Systematisierung und Erhöhung der Transparenz der Abläufe in der Produktentwicklung mit dem Schwerpunt der Auslegung und Berechnung von Maschinenelementen und deren Baugruppen. Es wurden die Baugruppen- und Prozessbildung, die Werkzeuge für die Modellbildung sowie eine prototypisch realisierte Baugruppenberechnung vorgestellt. Auf Basis der durchgeführten Literaturrecherche wurden die grundlegenden Vorgehensweisen und Methoden zur Organisation und Durchführung von Berechnungsprozessen identifiziert, analysiert und auf die Anwendbarkeit der Lösung, der im Rahmen dieser Arbeit gestellten Aufgaben zur Systematisierung und Erhöhung der Transparenz der Berechnungsabläufe im Bereich der Maschinenelementeberechnungen untersucht. Die Grundlage der neuen Methode bilden Ansätze, die sich bereits in der Konstruktionsmethodik und in der Informationstechnik bewährt haben. Ergänzt mit den Konzepten der Klassifikation und Prozessautomatisierung sowie den mathematisch-technischen Berechnungsalgorithmen der Ingenieurwissenschaften bilden sie die Basis dieser Methode. Die für die Automatisierung notwendige Formalisierung der Methode wurde basierend auf der Theorie der gerichteten Graphen, der SysML (Systems Modeling Language) und des Business Process Management (BPM) Ansatzes durchgeführt. Die gewonnenen theoretischen Erkenntnisse wurden in Form eines prototypisch entwickelten Design Process Management Systems realisiert, welches die Erreichung der in der Arbeit gesetzten Ziele ermöglicht und für ein nachhaltiges Wissensmanagement bei der Organisation der Berechnungsabläufe sorgt. Die Besonderheiten dieses workfloworientierten Management Systems liegen einerseits in einem Wissens-Repository, welches die modularen Bestandteile zur Definition der Berechnungsabläufe beinhaltet sowie andererseits in einem interaktiven Prozess-Designer, mit dessen Hilfe die Abläufe graphisch, schnell und intuitiv modelliert und ausgeführt werden können. In den Produktplanungsphasen vom Anforderungsmanagement bis zur Validierung nach dem Prinzip des „Systems Engineering“ kann dabei auf eine Bibliothek modularer Berechnungsobjekte in Form von Prozess-Bausteinen zugegriffen werden, deren Schnittstellen und Datenstrukturen ausnahmslos einheitlichen Definitionen entsprechen. Gemeinsam mit der nach eCl@ss - Standard entwickelten Merkmalsstruktur der Berechnungsobjekte wird so eine hohe Wiederverwendbarkeit erzielt. Die Klassifizierung der Berechnungsobjekte orientiert sich an konstruktionssystematischen Gesichtspunkten. Der eigentliche Prozess der Baugruppenbildung erfolgt mit einem Editor, der die Berechnungsobjekte miteinander verknüpft, indem er die zugehörigen Informationsobjekte, Datenbankzugriffe und Algorithmen in die Benutzeroberfläche und in den Prozess einbindet. Ebenso können externe Prozesse und Datenquellen nahtlos in die Modellierung einfließen. Schließlich wird die Vorgehensweise bei der Modellbildung einer Berechnungs-Baugruppe am Beispiel einer Getriebeauslegung dargestellt. Ausgehend von den geforderten Merkmalen der Lösungskonfiguration wird die Funktionsstruktur durch analoge Berechnungsobjekte abgebildet und anschließend über eine geeignete Logik miteinander verknüpft. Der dabei entstehende Prozess bildet die neue Berechnungs-Baugruppe der Getriebeauslegung und kann schließlich für Parameterstudien herangezogen werden. Mit den prozessgebundenen Berechnungsbaugruppen wurde eine Methode vorgestellt, die den Konstrukteuren die Möglichkeit bietet, ihre zum Teil mehrstufigen und rekursiven Berechnungen durch den Einsatz modularer Funktionsbausteine verbindlich, nachvollziehbar und vor allem zeitsparender zu gestalten. Dabei sind die Arbeitsergebnisse allen Ingenieuren und Abteilungen einer Community, vor allem auch dem Qualitätsmanagement und damit einem kontinuierlichen Verbesserungsprozess zugänglich. Inwieweit die hier vorgetragenen Methoden auch den Validierungsprozess unterstützen können, bleibt weiteren Untersuchungen vorbehalten
    corecore