Unrealistische Zeitpläne und Aufwandsschätzungen gelten nach personellen Mängeln als zweitgrößter Risikofaktor von Softwareentwicklungsprojekten. Vor allem den Tests wird angelastet, die Auslieferung zu verzögern und Ursache teilweise erheblicher Budgetüberschreitungen zu sein. Dabei macht der Testaufwand je nach Komplexität und Kritikalität der zu entwickelnden Software zwischen 10 % und 50 % des gesamten Projektaufwands aus.
Wissenschaftliche Erkenntnisse zur Aufwandsschätzung in der Softwareentwicklung sind rar, da die meisten Methoden praktischen Ursprung haben und nicht wissenschaftlich begründet sind. Methoden speziell zur Testaufwandsschätzung werden in der wissenschaftlichen Literatur nicht zufriedenstellend behandelt. In der Praxis wird die Testphase häufig als Puffer für Verzögerungen im Projektverlauf betrachtet, und der Testaufwand unsystematisch sowie ohne definiertes Ziel geplant. Sowohl aus wissenschaftlicher als auch aus praktischer Sicht besteht also großer Bedarf an systematischen, fundierten und effizienten Vorgehensweisen zur Testaufwandsschätzung.
Die vorliegende Forschungsarbeit stellt solch eine Vorgehensweise bereit. Dazu werden die potenziellen Einflussfaktoren des Testaufwands in der Softwareentwicklung identifiziert und eine Methode entwickelt, wie mit statistischen Mitteln aus diesen Einflussfaktoren die jeweils in einer Organisation bedeutendsten selektiert und darauf aufbauend Testaufwand geschätzt werden kann.
Anhand von umfangreichen Fallstudien in zwei Softwareentwicklungsunternehmen werden die vermuteten Einflüsse auf den Testaufwand untersucht und die Methode erprobt. Dadurch trägt die Arbeit zum besseren Verständnis des Testaufwands in Softwareentwicklungsprojekten bei und gibt dem Praktiker systematisch begründete Handlungsempfehlungen, wie mit vertretbarem Aufwand frühzeitig im Projekt Testaufwand geschätzt werden kann.Unrealistic schedules and effort estimates are considered to be the second most important risk factor (following personell shortcomings) in software development projects. Particularly testing is regarded as the cause for delayed deliveries and missed budget constraints. Testing in this context accounts for 10 % to 50 % (depending on software complexity and criticality) of the total project effort.
Scientific publications regarding effort estimation in software development are scarce, since most methods stem from practical experience and haven't been validated scientifically. Methods to estimate test effort in particular are not dealt with to a satisfying degree in scientific publications. In practice, the testing phase is frequently used as buffer for delays in the course of the project, and testing effort is planned unsystematically and without defined aim. Therefore, from a scientific as well as a practitioner's point of view, there's great need for systematic, well founded and efficient procedures to estimate test effort.
This work of research provides such a procedure. To this end, the potentially influencing factors of the test effort in software development are identified. In addition, a method is created to select from these the most important factors in a given organisation by applying statistical means, and to estimate test effort based on the selected factors.
By way of extensive case studies in two software developing companies the supposed influencing factors are analysed and the method is tested. Thus, this work enhances understanding of the test effort in software development projects and supplies systematically founded advice for practitioners on how to estimate test effort at acceptable cost early on in a software project