TU Darmstadt / ULB / TUprints

Entwicklungsbegleitendes Testen mittels UML Sequenzdiagrammen

Fraikin, Falk (2004)
Entwicklungsbegleitendes Testen mittels UML Sequenzdiagrammen.
Technische Universität Darmstadt
Ph.D. Thesis, Primary publication

[img]
Preview
PDF
Fraikin.pdf
Copyright Information: In Copyright.

Download (712kB) | Preview
Item Type: Ph.D. Thesis
Type of entry: Primary publication
Title: Entwicklungsbegleitendes Testen mittels UML Sequenzdiagrammen
Language: German
Referees: Mezini, Prof. Dr. Mira
Advisors: Henhapl, Prof. Dr. Wolfgang
Date: 21 January 2004
Place of Publication: Darmstadt
Date of oral examination: 3 December 2003
Abstract:

UML Sequenzdiagramme sind ein wesentlicher Bestandteil des Designs bei der Anwendung von einer Reihe von verbreiteten Softwareentwicklungsprozessen wie zum Beispiel Rational Unified Process oder Feature Driven Development. Außerdem finden sie Verwendung bei der Beschreibung von Design Patterns und generell bei der Beschreibung von Schnittstellen. Da die Implementierung konform zu diesen Diagrammen erfolgen soll, stellt sich die Frage, inwieweit sich die Diagramme als Basis für dynamische Tests nutzen lassen. Diese Fragestellung ist insofern nahe liegend, da UML Sequenzdiagramme sich mit ihren Objekten und Nachrichten intuitiv auf die Instanzen und Methodenaufrufe eines objektorientierten Programms abbilden lassen und damit einen logischen Testfall darstellen. Ergänzt man die Methodenaufrufe im Sequenzdiagramm um Aufrufparameter und Rückgabewerte, so erhält man einen konkreten Testfall für die Kommunikation zwischen den abgebildeten Instanzen der zu testenden Klassen. Im ersten Teil dieser Arbeit wird der Begriff der "Testbaren Sequenzdiagramme" eingeführt, der die Anforderungen an ein UML Sequenzdiagramm definiert, die sicherstellen, dass das Diagramm einen konkreten, d.h. ausführbaren Testfall beschreibt. Einzelne testbare Sequenzdiagramme lassen sich zu kombinierten testbaren Sequenzdiagrammen zusammenfügen. Dies reduziert sowohl die Anzahl als auch die Komplexität der benötigten einzelnen testbaren Sequenzdiagramme. Da das in einem testbaren Sequenzdiagramm beschriebene Verhalten nicht nur als Testeingabe dient, sondern auch gleichzeitig das erwartete Ergebnis beschreibt, bietet es sich beim Testen auf der Basis von Sequenzdiagrammen an, die Testergebnisse ebenfalls als Sequenzdiagramme darzustellen. Um eine effektive Evaluation der Testergebnisse zu ermöglichen, wird für testbare Sequenzdiagramme ein Verfeinerungskonzept entwickelt, das eine Informationshierarchie für testbare Sequenzdiagramme definiert. Im zweiten Teil der Arbeit wird das Testwerkzeug SeDiTeC vorgestellt, das die im ersten Teil der Arbeit vorgestellten Konzepte implementiert. Dabei werden weitere Anforderungen definiert, die an ein solches Testwerkzeug gestellt werden, und es wird beschrieben, wie diese in SeDiTeC realisiert wurden. Hierzu gehört u.a. die Möglichkeit der automatischen Generierung von "intelligenten" Teststubs.

Alternative Abstract:
Alternative AbstractLanguage

When applying software development processes as Rational Unified Process or Feature Driven Development, UML sequence diagrams are an essential part of software design. Furthermore they are used for describing design patterns and for describing interfaces in general. Realizing that the implementation is supposed to conform to those diagrams raises the question, how those diagrams can be used as a basis for dynamic testing. This question suggests itself in so far as UML sequence diagrams and their objects and messages can be mapped intuitively to instances and method calls of object-oriented programs, thus representing a logical test case. Complementing the method calls of a sequence diagram with parameters and return values creates a concrete test case for the communication between the depicted instances of the classes under test. The first part of this thesis introduces the notion of "Testable Sequence Diagram", which defines the requirements a diagram has to meet to describe a concrete, e.g. executable test case. Single testable sequence diagrams can be joined to create combined testable sequence diagrams, thus reducing the number and the complexity of the set of testable sequence diagrams needed. As the behaviour described in a testable sequence diagram not only represents the test input, but furthermore defines the expected result, it is reasonable to also display the test results as sequence diagrams while testing based on sequence diagrams. To allow for an effective way of evaluating the test results a concept of refinement for testable sequence diagrams is presented that defines an information hierarchy for testable sequence diagrams. The second part of this thesis describes the test tool SeDiTeC that implements the concepts introduced in the first part of this thesis. Further requirements for a sequence diagram based test tool are defined followed by a description of the way SeDiTeC implements those requirements. Among other things this includes the possibility to automatically generate "intelligent" test stubs.

English
Uncontrolled Keywords: Sequenzdiagramm, Teststumpf
Alternative keywords:
Alternative keywordsLanguage
Sequenzdiagramm, TeststumpfGerman
sequence diagram, test stubEnglish
URN: urn:nbn:de:tuda-tuprints-3963
Classification DDC: 000 Generalities, computers, information > 004 Computer science
Divisions: 20 Department of Computer Science
Date Deposited: 17 Oct 2008 09:21
Last Modified: 07 Dec 2012 11:49
URI: https://tuprints.ulb.tu-darmstadt.de/id/eprint/396
PPN:
Export:
Actions (login required)
View Item View Item