DC ElementWertSprache
dc.contributor.advisorLudwig, Thomas-
dc.contributor.advisorZüllighoven, Heinz-
dc.contributor.authorHovy, Christian-
dc.date.accessioned2021-03-12T13:03:54Z-
dc.date.available2021-03-12T13:03:54Z-
dc.date.issued2020-01-
dc.identifier.urihttps://ediss.sub.uni-hamburg.de/handle/ediss/8877-
dc.description.abstractModerne Klimamodelle, d.h. Computerprogramme zur numerischen Simulation klimatologischer Prozesse, werden von interdisziplinären Teams entwickelt und enthalten zahlreiche miteinander gekoppelte Teilmodelle, die unterschiedliche Komponenten und Prozesse des Klimasystems abbilden. Die steigende Komplexität der Modelle sowie die Notwendigkeit, sich an immer leistungsfähigere Rechnerarchitekturen anzupassen, ist mit hohen softwaretechnischen Herausforderungen verbunden. Dies betrifft insbesondere auch das Testen dieser Modelle. Diese Dissertation im Fach Informatik befasst sich daher aus softwaretechnischer Sicht mit dem Testen von Klimamodellen und der Frage, wie sich die Erstellung von Unittests, d.h. von isolierten Tests kleinerer Codeeinheiten auf Prozedur- oder Modulebene, in diesem Kontext unterstützen lässt. Im Rahmen einer internationalen Studie wird die Softwaretestpraxis in der Klimamodellierung an vier Forschungsinstituten untersucht. Ein zentrales Ergebnis der Studie ist, dass Unittests dabei selten zum Einsatz kommen. Stattdessen werden sowohl für die wissenschaftliche Evaluation der Modelle als auch beim Regressionstesten im Wesentlichen sog. Ende-zu-Ende-Tests eingesetzt. Dabei wird jedes Mal das Hauptprogramm der Modellsoftware mit einer ausgewählten Konfiguration ausgeführt und alle Phasen einer Simulation durchlaufen. Aufbauend auf den Ergebnissen der Studie wird argumentiert, dass Unittests eine sinnvolle Ergänzung dieser Testpraxis darstellen könnten, um die Produktivität der Entwicklung zu erhöhen. Dies setzt jedoch voraus, dass der Aufwand für die Erstellung der Tests in einem vertretbaren Verhältnis zum Nutzen steht. Um den Aufwand für die Erstellung von Unittests für Klimamodelle mit Hilfe eines anwendungsorientierten Verfahrens zu reduzieren, wird der sog. Capture-&-Replay-Ansatz vorgeschlagen. Dabei werden Testdaten für Unittests einzelner Prozeduren aus existierenden Ende-zu-Ende-Tests gewonnen, indem bei deren Ausführung Ein- und ggf. Ausgangsdaten der zu testenden Prozedur aufgezeichnet werden. Die Voraussetzungen und Gestaltungsoptionen für eine anwendungsorientierte Umsetzung dieses Vorgehens im Kontext Klimamodellierung werden diskutiert. Zudem wird ein Softwarewerkzeug, der FortranTestGenerator, vorgestellt, welches auf Grundlage einer statischen Codeanalyse Code zum Aufzeichnen der Testdaten generiert sowie ein Testprogramm, in dem die aufgezeichneten Daten geladen werden, die zu testende Prozedur isoliert ausgeführt und dessen Ergebnisse validiert. Sämtlicher generierter Code basiert dabei auf modifizierbaren Templates und lässt sich so an die Anforderungen der jeweiligen Umgebung und einzelner BenutzerInnen anpassen. Im Rahmen von Experimenten mit vier unterschiedlichen Klimamodellen und einer Benutzerstudie mit drei Klimamodellentwicklern wird die Funktionsfähigkeit, Tauglichkeit und Benutzbarkeit des Werkzeugs demonstriert.de
dc.description.abstractClimate models are computer programs for the numerical simulation of climatological processes. They are developed by interdisciplinary teams and consist of numerous submodels representing different components and processes of the climate system. The increasing complexity of these models and the need for adaptation to more and more powerful computer architectures come along with big software engineering challenges. This also effects the testing of such models. Therefore, this doctoral thesis in Informatics looks at the testing of climate models from a software engineering perspective. Specifically, it addresses the question how the creation of unit tests (i.e. isolated tests of smaller code regions on module or procedure level) can be supported in that context. A qualitative study on the software testing practices at four international climate modeling centers is conducted. One of the main results is that unit tests are used quite rarely in this area. Instead, scientific evaluation as well as regression testing is done mainly with the help of so-called end-to-end tests. For those tests, the main program of the model software is executed, and all phases of a simulation are went through. Based on the results of this study it is argued that unit tests could be a beneficial addition to the current testing practice. Such tests can help to increase the productivity of the model development provided that the effort for their creation stands in a reasonable relation to their benefits. As an application-oriented mean to reduce the effort for the creation of unit tests for climate models the so-called Capture & Replay method is proposed. With this approach, test data for unit tests of individual procedures are derived from existing end-to-end tests by capturing in- and output data of the procedure to be tested during the end-to-end test execution. Requirements and design options of an application-oriented implementation of this approach in the context of climate modeling are discussed. In addition, a software tool called FortranTestGenerator is presented. Based on a static source code analysis, the FortranTestGenerator generates a) the code for the capturing of the test data and b) a test program which loads the captured data, runs the procedure to be tested in isolation, and validates its results. All parts of the generated code are derived from customizable templates and can hence be adapted to requirements of the current environment and individual users. With experiments on four different climate models and a user study with three climate model developers the functioning, suitability, and usability of the tool is demonstrated.en
dc.language.isodede_DE
dc.publisherStaats- und Universitätsbibliothek Hamburg Carl von Ossietzkyde
dc.rightshttp://purl.org/coar/access_right/c_abf2de_DE
dc.subjectKlimamodellierungde
dc.subjectSoftwaretestsde
dc.subjectUnittestsde
dc.subjectSoftwaretechnikde
dc.subjectHigh Performance Computingen
dc.subjectWissenschaftliche Softwareentwicklungde
dc.subjectFortrande
dc.subject.ddc004: Informatikde_DE
dc.titleUnittests für die Klimamodellentwicklungde
dc.title.alternativeUnit Tests for Climate Model Developmenten
dc.typedoctoralThesisen
dcterms.dateAccepted2020-12-18-
dc.rights.cchttps://creativecommons.org/licenses/by-nc-nd/4.0/de_DE
dc.rights.rshttp://rightsstatements.org/vocab/InC/1.0/-
dc.subject.bcl54.52: Software engineeringde_DE
dc.type.casraiDissertation-
dc.type.dinidoctoralThesis-
dc.type.driverdoctoralThesis-
dc.type.statusinfo:eu-repo/semantics/publishedVersionde_DE
dc.type.thesisdoctoralThesisde_DE
tuhh.type.opusDissertation-
thesis.grantor.departmentInformatikde_DE
thesis.grantor.placeHamburg-
thesis.grantor.universityOrInstitutionUniversität Hamburgde_DE
dcterms.DCMITypeText-
datacite.relation.IsSupplementedByhttps://github.com/fortesgde_DE
dc.identifier.urnurn:nbn:de:gbv:18-ediss-90774-
item.advisorGNDLudwig, Thomas-
item.advisorGNDZüllighoven, Heinz-
item.creatorGNDHovy, Christian-
item.languageiso639-1other-
item.grantfulltextopen-
item.creatorOrcidHovy, Christian-
item.fulltextWith Fulltext-
Enthalten in den Sammlungen:Elektronische Dissertationen und Habilitationen
Dateien zu dieser Ressource:
Datei Beschreibung GrößeFormat  
diss_publish_20210307.pdf13.04 MBAdobe PDFÖffnen/Anzeigen
Zur Kurzanzeige

Info

Seitenansichten

77
Letzte Woche
Letzten Monat
geprüft am 26.09.2021

Download(s)

205
Letzte Woche
Letzten Monat
geprüft am 26.09.2021
Werkzeuge

Google ScholarTM

Prüfe