[Zurück]


Diplom- und Master-Arbeiten (eigene und betreute):

W. Rieschl:
"Balancing Quality Assurance Methods along the Project Life Cycle: A Concept for Systematic Quality Assurance Strategy Evaluation";
Betreuer/in(nen): S. Biffl, D. Winkler; Institut für Softwaretechnik und Interaktive Systeme, 2008; Abschlussprüfung: 21.10.2008.



Kurzfassung deutsch:
Software Produkte begleiten uns überall in unserem täglichen Leben, beispielsweise im
Unterhaltungselektronikbereich, bei der Wasserversorgung oder in voll automatisierten Produktionsstraßen.
Qualitativ hochwertige Software muss gemäß den Spezifikationen und Anforderungen mit
Hilfe von verschiedenen Entwicklungs- und Qualitätssicherungsmethoden validiert und verifiziert
werden. Die Anwendung einer speziellen Methode konzentriert sich meist auf die Evaluierung eines
speziellen Dokuments, deren Ergebnisse werden aber selten als Basis für weitere Qualitätsmaßnahmen
herangezogen.[52] Daher scheint es sinnvoll verschiedene Methoden in
unterschiedlichen Projektphase zu kombinieren, damit deren Effektivität und somit die Qualität des
Produktes steigt. Unter dem Schlagwort der Software Produkt und Prozessverbesserung ist daher die
Entwicklung von Qualitätsstrategien sinnvoll.
Jedes Projekt weist spezielle Charakteristiken auf, die in verschiede Gruppen von Eigenschaften
eingeteilt werden können (z.B. Projektgröße oder Dauer) und die sich auf die Auswahl von bewährten
Methoden auswirken. Einige Qualitätsmethoden sind für spezielle Projekttypen und Artefakte besser
geeignet als andere.[17] Beispielsweise ist es klar, dass Testprozesse besser auf Code - Teile
angewendet werden können als auf ein Architekturdokument. Die Auswahl von geeigneten Methoden
bleibt meist dem Projektmanager überlassen, der seine Entscheidung auf Grund von persönlichen
Erfahrungen oder Unternehmensstandards fällt.
Das Ziel dieser Arbeit ist, den Entscheidungsprozess von einem umfassenden Standpunkt aus zu
betrachten, in dem das gesamte Projekt miteinbezogen wird. Dies kann über eine Kombination von
unterschiedlichen Qualitätssicherungsmethoden, die sich mit speziellen Aspekten von Software
Projekten beschäftigen, erreicht werden, wodurch sich die positiven Effekte dieser Methoden erhöhen.
Aufgrund der oben genannten Aspekte ist der Vergleich von projektrelevanten Daten mit verfügbaren
Qualitätsmethoden über definierte Kriterien notwendig. Die Qualitätsmethoden müssen nach
denselben vordefinierten Werten klassifiziert und eingestuft werden, um sie mit den
Projekteigenschaften vergleichbar zu machen. Dies kann über einen so genannten Attributsvektor
erfolgen, in welchem die Kriterien gesammelt und in diskrete Werte umgewandelt werden.
Diese Arbeit beschäftigt sich also mit einem Attribut basierten Ansatz um verschiedene Projekttypen
mit verfügbaren Qualitätsmanagementmethoden gezielt vergleichen zu können, damit die Projektverantwortlichen
eine automatisierte Unterstützung bei der Auswahl der geeigneten Methoden haben.
Diese Denkweise fällt unter den Begriff der kontinuierlichen Software Produkt und
Prozessverbesserung, wie bereits eingangs erwähnt. Zur Umsetzung müssen grundlegende Metriken
definiert werden, um eine gemeinsame Vergleichsbasis zu schaffen und um die
Entscheidungskriterien auf Grund von neu gewonnenen Erfahrungen gezielt anpassen zu können. Weiters beschäftigt sich diese Arbeit mit der Entwicklung und Evaluierung eines Prototyps zur
Bereitstellung von Qualitätsstrategien, die sich aus einzelnen Qualitätsmethoden zusammensetzen
und den Projektverantwortlichen in der Entscheidungsfindung unterstützen sollen. Dieser Ansatz soll
eine Brücke zwischen den Entwicklungs- und Qualitätsbereichen von Softwareprojekten bilden, um die
Effektivität und die Effizienz von Softwareentwicklungsprozessen zu optimieren.

Kurzfassung englisch:
Software products exist in most areas of our life, e.g. in home entertainment equipment, for water
supply control, in fully automated production streets and many more. High quality software needs
verification and validation to provide compliance with specification documents and customer
requirements. Today there are various methods to support construction, verification and validation of
software products, e.g. several development methods, reviews, software inspection and testing
approaches. The application of one individual method focuses on the specific document type but
rarely considers information from previous project phases.[52] Thus, it is reasonable to combine
quality assurance methods in order to provide a high quality product along the product life cycle.
Quality assurance strategies, e.g. bundles of balanced quality assurance (QA) techniques, aim at
improving over product quality. These approaches can be summarized under the headline of software
product and process improvement.
Every project has special characteristics which can be used to classify them into specific groups with
related attributes (e.g. project size, duration) and affect best practice method selection. Up until now
some quality methods are more applicable for particular project types than for others.[17] For instance,
it is at hand that testing is more effective on pieces of code than on an architecture document. The
selection of an appropriate method depends on the project manager or maybe on company standards
as well. The project management´s decision is usually based on the experience of past projects with
the same team and personal knowledge.
The purpose of this work is to include an overall point of view in that decision processes, e.g. the
consideration of the whole product development lifecycle. Therefore, combining different analytical
quality assurance methods addressing special types of software projects, special types of quality
attributes and company strategies will multiply the positive effect for this venture.
Therefore it is important to realize the need of mapping project related data and candidate methods
according to selected criteria which can have an impact on product quality in every project. The key
aspects of different quality assurance methods are related to these project elements and therefore
they can be compared with the help of predefined values. The main idea is to create a vector of
attributes for different quality assurance methods. These attributes can be converted into discrete
values to generalize them for comparison with the attributes of different project types.
Because of these reasons this thesis presents an attribute based approach to match different project
types with various combinations of quality assurance methods to get an adjusted support for any
project. This idea deals with SPPI - Software Product and Process Improvement, as said above.
Some metrics will be introduced to compare different projects and methods. These measurements will
be necessary for improvement purposes by providing feedback from the project application. It is necessary to collect data of project types, used methods and the qualitative outcome of any collected
project.
This thesis deals with the construction and evaluation of an overall quality strategy that can be
adjusted to different project types, to support project and quality managers with their decision making.
It should be an approach to fill the research gap of finding the best quality assurance strategy to
different software development methods. So we have to look at different software development
methods to identify some overall project characteristics.
Therefore a method should be implemented to describe and rate some basic quality assurance
methods and different project types, to deploy a framework of attributes to classify different project
types and to indicate a way to compare these two approaches to get a feasible solution for attribute
based quality decision making. To provide a better view a prototype of this framework will be created.
The proposed approach aims at improving products and processes by providing an agreed set of
methods.

Erstellt aus der Publikationsdatenbank der Technischen Universität Wien.