WaterGAP A global hydrology and water use model
|
|
- Joachim Brodbeck
- vor 5 Jahren
- Abrufe
Transkript
1 Softwareentwicklung in der Wissenschaft WaterGAP A global hydrology and water use model Seminararbeit eingereicht bei Prof. Dr. Thomas Ludwig Arbeitsbereich Wissenschaftliches Rechnen MIN Fakultät Universität Hamburg Betreuer: Hermann Lenhart von Maral Chimed-Ochir
2 WaterGAP Global Hydrology and Water Use Model - II - Inhaltsverzeichnis Abbildungsverzeichnis...IV Abkürzungsverzeichnis...V 1 Zielsetzung WaterGAP allgemein Interviewpartner WaterGAP Einführung Motivation Historie Einsatz Modellentwicklung Vorgehensweise der Entwicklung Modellierung Inputdaten und Pre-Processing der Inputdaten Implementierung Outputdaten und Post-Processing der Outputdaten Testen Debuggen Kalibrierung Validierung Qualitätssicherung Entwicklungsschritte Eingesetzte Hard- und Software Releasemanagement/Versionskontrolle Mittel der Interaktion Kollaboration Softwareeinführung Softwarelebenszyklus Wartung/Pflege Datenarchivierung Qualitätskontrolle nach der Norm ISO/IEC Funktionalität Zuverlässigkeit Benutzbarkeit Effizienz Änderbarkeit Übertragbarkeit Besonderheiten...18
3 WaterGAP Global Hydrology and Water Use Model - III - 4 Zusammenfassung Zusammenfassung des Interviews Fazit...19 Literaturverzeichnis...20
4 WaterGAP Global Hydrology and Water Use Model - IV - Abbildungsverzeichnis Abbildung 1: Visuelle Darstellung der Schneebedeckung mittels GIS für eine bestimmte Zeit (Quelle: Aus Der Beek, 2010).. 3 Abbildung 2: WaterGAP-Modellschema (Quelle: Aus der Beek, 2010)....5 Abbildung 3: WaterGAP-Modellschema - Pre-Processing (Quelle: Aus der Beek, 2010) Abbildung 4: WaterGAP-Modellschema- Implementierung (Quelle: Aus der Beek, 2010).. 8 Abbildung 5: WaterGAP-Modellschema - Post-Processing (Quelle: Aus der Beek, 2010)..9 Abbildung 6: Kalibrierungsschritte des WaterGAP-Modells (Quelle: Aus der Beek, 2010) Abbildung 7: Kalibrierte Modellergebnisse der verschiedenen Flusseinzugsgebieten (Quelle: Aus der Beek, 2010)...12 Abbildung 8: Schritte zur Qualitätssicherung der Modellergebnisse (Quelle: Aus der Beek, 2010)... 13
5 WaterGAP Global Hydrology and Water Use Model - V - Abkürzungsverzeichnis BMBF: CESR: EEA: EU: GIS: GUI: UNEP: WaterGAP: Bundesministerium für Bildung und Forschung Center for Environmental Sytems Research European Environment Agency Europäische Union Geoinformationssystem Graphic User Interface (Graphische Benutzeroberfläche) United Nations Environment Programme Water - Global Assessment and Prognosis
6 WaterGAP Global Hydrology and Water Use Model Zielsetzung Das Ziel dieser Seminararbeit ist die Darstellung des Entwicklungsprozesses einer wissenschaftlichen Software in der Praxis anhand eines Beispiels. Die Definition von wissenschaftlicher Software ist nach Kreyman et al eine Software mit großen rechenaufwendigen Komponenten, die physische Phänomene modelliert und Daten für die Entscheidungsfindung liefert [1]. Das Hauptziel der Entwicklung einer solchen Software ist es meist, Ergebnisse von Berechnungen eines wissenschaftlichen oder technischen Modells zu erhalten [2][3][4]. Wissenschaftliche Software hat meistens die Aufgabe, einen bestimmten naturwissenschaftlichen Prozess zu simulieren und bestimmte Fragen zu diesem Prozess zu beantworten. Die Personen, die wissenschaftliche Software entwickeln, testen und benutzen, sind häufig Wissenschaftler und Ingenieure, von denen viele unter Segals Definition des professional end-user-developer passen [5]. Diese sind nach Segal Personen, die in technischen Berufen und solchen, die große Sachkenntnis erfordern, ihre eigene Software entwickeln, um ihre persönlichen beruflichen Ziele voranzutreiben. Im Gegensatz zum normalen Endbenutzer- Entwickler sind sie keine professionellen Entwickler, sondern lediglich Profis in ihrem Fachgebiet. Deshalb haben sie häufig Probleme mit der Implementierung der Software [2]. Die Entwicklung einer wissenschaftlichen Software bringt einige Herausforderungen mit sich. Wissenschaftliche Software ist meistens rechenaufwändig. Sie wird meist in und für kleine Teams entwickelt und ist daher oft unverständlich oder nicht intuitiv verständlich für Außenstehende. Die Vorgehensweise der Entwicklung folgt oft nicht den Prinzipien traditioneller Entwicklungsmodelle, da Aspekte wie Benutzerfreundlichkeit und andere nicht im Vordergrund stehen. Auch die Testbarkeit stellen einige Herausforderungen dar, da z.b. das Ergebnis vorher noch nicht feststeht. Um die Entwicklungsprozess einer wissenschaftlichen Software anschaulicher darzustellen zu können, wurde ein Interview mit einem Entwickler einer wissenschaftlichen Software durchgeführt. In den nächsten Kapiteln werden die wissenschaftlichen Fragestellungen über die Modellierung und Programmierung bis zur Analyse der Ergebnisse eines wissenschaftlichen Modells beschrieben.
7 WaterGAP Global Hydrology and Water Use Model WaterGAP allgemein WaterGAP ist ein hydrologisches Modell zur Simulation der globalen Wassernutzung, Wasserverfügbarkeit und Wasserqualität. Das WaterGAP-Modell wurde in Center for Environmental Systems Research (CESR) an der Universität Kassel entwickelt und weiterentwickelt. 1.2 Interviewpartner Der Interviewpartner ist ein wissenschaftlicher Mitarbeiter und Doktorand am CESR. Er ist beteiligt an der Weiterentwicklung des WaterGAP3-Modells (Version 3) und zurzeit mit der Entwicklung eines Bewässerung-Teilmoduls beschäftigt. Er besuchte einen dreiwöchcigen Blockkurs über die Programmiersprache C während seines Hydrologiestudiums in Freiburg. Da es einige Probleme in der Programmierung gibt, unterstützt die Chefprogrammiererin (Mathematikerin) am CESR ihn teilweise bei seiner Arbeit. Der Interviewpartner erhielt nie eine Ausbildung im Bereich des Software-Engineerings und hat keinerlei vorherige Erfahrung im IT-Bereich. Das Interview erfolgte durch -Korrespondenz. 2 WaterGAP Einführung WaterGAP ist eine kartografisch genaue Modellierung der globalen Wassernutzung, Wasserverfügbarkeit und Wasserqualität und die Simulation zukünftiger Entwicklungen. Dabei wird versucht, Antworten auf die Frage Wann, wo und aus welchem Grund sind welche Wasserressourcen vorhanden bzw. genutzt? zu erhalten. Das Modell-Framework wird konstant weiterentwickelt, um klimatische, physiographische und sozioökomische Prozesse realitätsnah in einem Computermodell wiedergeben zu können. Das Modell kann den Einfluss von naturräumlichen und klimatischen Bedingungen (Niederschlag, Verdunstung usw.) auf die Wasserverfügbarkeit und die demographischen, ökonomischen und technologischen Veränderungen (z.b. Industriewasserentnahme) auf die Wassernutzung bis 2100 simulieren. Es deckt die gesamte Landmasse der Erde mit Ausnahme der Antarktis ab und hat eine räumliche Auflösung von 0.5 x0.5 (WaterGAP2) bzw. 5x5 Bogenminuten (WaterGAP3) mit Rasterzellgrößen von ca km² mit insgesamt Zellen bzw km² mit insgesamt 2,3 Mio. Zellen. Die zeitliche Auflösung hat eine Berechnungsschrittweite von einem Tag und die Ausgabe der Ergebniszeitreihe ist ein Monat (WaterGAP2 und WaterGAP3) bzw. ein Tag (WaterGAP3). WaterGAP3 ist das einzige räumlich so hoch aufgelöste Wassermodell. Das WaterGAP-Modell ist nicht frei verfügbar, da es sehr komplex ist, keine GUI (graphische Benutzeroberfläche) und keine ausführliche Anleitung besitzt. Es ist aber auch keine kom-
8 WaterGAP Global Hydrology and Water Use Model merzielle Software. Die Software wird je nach Bedarf den Kooperationspartnern frei zur Verfügung gestellt und entsprechende Schulungen werden durchgeführt. Abbildung 1: Visuelle Darstellung der Schneebedeckung mittels GIS für eine bestimmte Zeit (Quelle: Aus Der Beek, 2010) links: Modellergebnisse von WaterGAP2, rechts: Modelergebnisse von WaterGAP3 2.1 Motivation Es gibt bereits einige Wassermodelle im Einsatz. Allerdings decken diese nur ein bestimmtes örtliches Gebiet ab und deswegen konnten sie Fragen wie - Welche Wassermengen stehen uns heute zur Verfügung und wie sind sie räumlich und zeitlich auf der Erde verteilt? - Welche Rolle spielt der Einfluss des globalen Wandels (z.b. Klimaänderung, Bevölkerungsentwicklung) auf die Wasserverfügbarkeit und Wassernutzung? - Wo tritt eine nicht nachhaltige Wassernutzung auf, wo bestehen noch Handlunsoptionen?
9 WaterGAP Global Hydrology and Water Use Model nicht beantworten. Die Beantwortung dieser Fragen ist sowohl für politische als auch für wirtschaftliche Zwecke von großer Bedeutung [6]. Daraus hat sich die Notwendigkeit ergeben, ein Global-Skala-Modell zu entwickeln, um Antworten auf diese Fragen zu erhalten. 2.2 Historie WaterGAP wurde erst 1996 am CESR entwickelt und war drei Jahre im Einsatz. In 2000 begann die Entwicklung von Version 2 (WaterGAP2), welche immer noch an der Universität Frankfurt mit fünf Entwicklern und am Geoforschungszentrum Potsdam mit zwei Entwicklern weiterentwickelt wird. Die Entwicklung von WaterGAP3 begann 2007 am CESR und zurzeit sind zehn Personen involviert. 2.3 Einsatz Die Hauptbenutzer des Modells sind gleichzeitig die Entwickler selbst (ca Personen). Eventuell benutzen weitere Master- und Diplomstudierende im Rahmen ihrer Abschlussarbeit das WaterGAP-Modell. Der Ergebnisnutzergruppe ist aber erheblich größer. Die Modellergebnisse können über Web-GIS heruntergeladen und analysiert werden. GIS (Geoinformationssysteme) sind Informationssysteme zur Erfassung, Bearbeitung, Organisation, Analyse und Präsentation geografischer Daten. Viele Veröffentlichungen der Ergebnisse erscheinen in wissenschaftlichen Journalen, aber auch in den Reports von UNEP, EU, EAA usw. 3 Modellentwicklung Das WaterGAP-Modell besteht aus einzelnen Teilmodellen: - Hydrologie-Modell - 5 Wassernutzungsmodelle (Bewässerung, Viehhaltung, Elektrizitätsproduktion, verarbeitendes Gewerbe, Haushalte) - Wasserqualitätsmodell - Metamodell Diese Teilmodelle bilden das WaterGAP- Framework. Die sind konzeptionell mathematischphysikalisch und werden durch loose Kopplung miteinander verknüpft. Die loose Kopplung bedeutet, dass der Modelloutput der Wassernutzungsmodelle direkt vom Hydrologiemodell eingelesen und verwertet werden können (oder umgekehrt).
10 WaterGAP Global Hydrology and Water Use Model In den folgenden Kapiteln werden die Teilmodelle Wasserqualitätsmodell und Metamodell nicht berücksichtigt, da sie im Zeitpunkt des Interviews gerade erst fertig gestellt waren und entsprechende Dokumentationen bzw. Informationen nicht vorhanden waren. Abbildung 2: WaterGAP-Modellschema (Quelle: Aus Der Beek, 2010) 3.1 Vorgehensweise der Entwicklung Die Vorgehensweise der Softwareentwicklung entspricht nicht den traditionellen Modellen der Softwareentwicklung. Weder die Anforderungen an die Software noch die erwarteten Ergebnisse sind zu Anfang der Entwicklung bekannt. Dennoch scheint diese Vorgehensweise innerhalb dieses Kontextes erfolgreich zu sein [2]. WaterGAP nutzt ebenfalls diese Vorgehensweise. Das Ziel der Entwicklung ist es, einen Algorithmus zu finden, mit dem sich zukünftig gemessene Klimadaten möglichst genau vorhersagen lassen. Um dies zu verwirklichen, wird eine Zeitreihe ausgewählt, in der bereits Daten gemessen wurden. Anschließend wird ein Algorithmus entwickelt, der aus verschiedenen Parametern diese Werte möglichst genau zurückliefert. Durch Anpassung der Parameter des Algorithmus wird versucht, näher an die gemessenen Werte zu gelangen. Ist ein akzeptables Ergebnis vorhanden, kann mit der Validierung begonnen werden. Dafür wird der Algorithmus mit Parametern aus einer anderen
11 WaterGAP Global Hydrology and Water Use Model Zeitreihe verglichen. Unterscheiden sich die gemessenen Werte nur wenig von den Ergebnissen, funktioniert der Algorithmus akzeptabel. Andernfalls muss der Algorithmus und seine Parameter angepasst werden. Der Algorithmus ist nichts anders als eine mathematische Funktion, die in Software implementiert wird. Er wird als Methode bezeichnet. Bei der WaterGAP-Entwicklung werden folgende Schritte durchlaufen: 1. Literaturrecherche zum Thema 2. Methodenauswahl (Welche mathematische Formel kann zur Berechnung der Modelldaten benutzt werden?) 3. Datenakquise (Sind die zu assimilierenden Eingangsdaten zur Bearbeitung der neuen wissenschaftlichen Fragestellung überhaupt vorhanden? 4. Planung der Implementierung 5. Implementierung 6. Test/Validierung des neuen Modelloutputs Wenn die ausgewählte Methode nicht passend ist bzw. nicht kalibriert oder validiert werden kann, führt dies zurück zur Literaturrecherche und der Vorgang beginnt von Neuem. 3.2 Modellierung Die Modellierung besteht aus drei Hauptbereichen. Im Mittelpunkt steht das Modell selbst. Es liest die Inputdaten, verrechnet diese und liefert die Outputdaten, die später analysiert und bewertet werden. Das Pre- und Post-Processing der Input- und Outputdaten ist ein Teil der Modellentwicklung und kann nicht separat betrachtet werden.
12 WaterGAP Global Hydrology and Water Use Model Inputdaten und Pre-Processing der Inputdaten Abbildung 3: WaterGAP-Pre-Processing (Quelle: Tim aus der Beek, 2010) Je nach Teilmodell werden verschiedene Inputdaten benötigt. Die Hauptinputdaten sind Klimadaten (z.b. Temperatur, Niederschlag, Verdunstung), Basisdaten (z.b. Basiskarten, Landnutzung, Bevölkerung) und sozioökonomische Daten (z.b. gemessene Abflüsse, Wasserentnahme der Industrien). Da für jede der Rasterzellen (Grids) eine Berechnung stattfindet, müssen die Inputdaten nach räumliche und zeitliche Kriterien aufgeteilt werden. Dieser Schritt wird als Pre-Processing genannt. Er umfasst die: Formatierung der Daten - Alle Inputdaten sollen entsprechend auf die Auflösung räumlich und zeitlich aggregiert werden. Hierfür wird eine mathematisch-physische Methode verwendet. Die Überprüfung dieser Daten erfolgt meist durch die Visualisierung mit Hilfe von GIS. Homogenisierung der Dateiformate - Alle Inputdaten müssen anschließend ins binäre UNF- Format umgewandelt werden. Das Modell bearbeitet nur UNF-Dateien. Konzepte zur Organisation der Inputdaten - Die Klimadaten liegen mit täglichen und monatlichen Grids von 1901 bis 2002 als binäre Datei vor, die ca. 350 GB umfasst. Die Basisdaten bestehen aus statischen Grids und umfassen 2 GB. Die sozioökonomischen Daten betra-
13 WaterGAP Global Hydrology and Water Use Model gen ca. 300 GB. Zur Verwaltung dieser Dateien wird ein Datenbank-Managementsystem eingesetzt Implementierung Abbildung 4: WaterGAP-Modellschema - Modellentwicklung(Quelle: Aus Der Beek, 2010) Für die Implementierung eingesetzte Programmiersprache ist je nach Teilmodell unterschiedlich. Das Hydrologie-Modell ist fast komplett auf C++ geschrieben. Die Teilmodelle Wasserqualität, industrielle Wassernutzung und häusliche Wassernutzung sind nur in C++, die Tier- Wassernutzung ist in C und Bewässerungswassernutzung ist in C/C++ geschrieben. Entwicklungswerkzeuge sind Eclipse und verschiedene Texteditoren. Eine MPI-Bibliothek wird zum Parallel-Processing, die NetCDF-Bibliothek wird zur Homogenisierung der Outputdaten und die MySQL++-Bibliothek wird zum Einlesen der Inputdaten aus der Datenbank verwendet. Der Aufwand der Implementierung beträgt ca Zeilen Code für das Hydrologiemodell, ca Zeilen für die Wassernutzungsmodelle und ca Zeilen für das Wasserqualitätsmodell. Das Modell besteht insgesamt aus über Zeilen Code (keine Angabe zum Implementierungsaufwand des Metamodells). Bibliotheken sind Sammlungen von Routinen und nützliche Datentypen, die in anderen Programmen verwendet werden können. Eine MPI-Bibliothek ist ein Framework für die Kommunikation zwischen den auf den verschiedenen Rechenknoten laufenden parallelen Prozessen. MPI wurde für höheren Datendurchsatz auf massiv parallelen Rechner und auf Workstation-Clustern konstruiert und allgemein als Standard angesehen [7]. Die Parallelisierung wird
14 WaterGAP Global Hydrology and Water Use Model zur Rechenzeitoptimierung eingesetzt und ist auf dem Cluster der Universität Kassel lauffähig. NetCDF ist ein standardisiertes binäres Dateiformat in der wissenschaftlichen Software Outputdaten und Post-Processing der Outputdaten Abbildung 5: WaterGAP-Modellschema- Post-Processing (Quelle: Aus Der Beek, 2010) Das Modell liefert die Outputdaten als täglichen und monatlichen Grid mit ca. 40 dynamischen Ausgabeparametern (Wasserverfügbarkeit, Grundwasserneubildung, usw.) als binäre Dateien im UNF-Format. Für einzelne Grids oder ganze Länder wird das Ergebnis als Textdatei geliefert. Diese binären Outputdaten werden anschließend in nutzbares Format umgewandelt für die Auswertung. Dieser Schritt wird Post-Processing genannt. Es werden ca. 15 verschiedene Programme benutzt, mit denen die Konvertierung (UNF-Datei zu NetCDF-Datei), Auswertung (z.b. Evaluierung der Modellgüte) und Formatierung (z.b. zeitlich räumliche Aggregierung) des Modelloutputs. Oft findet auch eine visuelle Überprüfung mittels GIS (z.b. ArcGIS 9) statt Testen Der Softwaretest ist definiert nach Myers die Ausführung eines Programms mit der Absicht, Fehler zu finden [8]. Das klassische Testverfahren ist in der wissenschaftlichen Softwareentwicklung schwierig zu verwenden, da das Testen einige Herausforderungen mit sich bringt. Die verwendete Methode kann leicht sehr komplex werden, wobei die Validierung sehr
15 WaterGAP Global Hydrology and Water Use Model schwierig wird. Außerdem ist es bei falschen Ergebnissen schwierig herauszufinden, welche Parameter falsch gewählt wurden. In der wissenschaftlichen Softwareentwicklung spielen die Richtigkeit, Verifikation und Validierung der Berechnung eine Große Rolle. Die Richtigkeit oder die Genauigkeit einer Berechnung, ist ein kritischer Faktor für die Qualität meisten wissenschaftlichen Software. Wissenschaftliche Software erfordert oft ein hohes Maß an Korrektheit um seine Anforderungen zu erfüllen [5]. Die Verifikation ist die Sicherstellung, dass der Code die Gleichungen des Modells korrekt löst [3] oder nach Post und Votta die Feststellung, ob der Code das gewählte Modell richtig löst [9]. Allgemein ist sie die Antwort auf die Frage, ob der Code und der Algorithmus wie gewünscht funktioniert [4]. Die Validierung ist nach Kendall et al die Feststellung, ob das in den Code implementierte mathematische Modell das beabsichtigte physikalische Verhalten richtig imitiert [3] und nach Post und Votta die Bestimmung, ob das Modell die wesentlichen physikalischen Phänomene mit ausreichender Genauigkeit erfasst [9]. Das Problem bei der Verifizierung ist, dass sie sehr aufwendig ist und entsprechendes Fachwissen erfordert. Daher tendieren die Wissenschaftler zu Validierungstests. Auf andere Tests wie Integrations- oder Komponententest wird meistens verzichtet. Der Validierungstest befasst sich mit den von Ihnen erstellten Modellen und ist daher für sie leichter durchzuführen als andere Tests [5]. Auch eine Überprüfung durch externen Tester stellt ein Problem dar, weil die meisten Tests voraussetzen, dass der Tester die Arbeitsweise der Software versteht. Der Mangel an wissenschaftlichen Fachkenntnissen unter Software-Testern verhindert ihren Einsatz im Bereich der wissenschaftlichen Softwareentwicklung. Bei der WaterGAP-Entwicklung werden keine Softwaretests nach bestimmten Verfahren durchgeführt, jeder Entwickler testet das Programm nach seiner eigenen Methode Debuggen Wegen der Parallelisierung der Software wird klassisches Debugging kaum verwendet. Stattdessen werden die Zwischenwerte mit der Printf-Methode ausgegeben. Printf ist eine Funktion in C/C++, die formatierte Werte in der Standardausgabe stdout (normalerweise Bildschirm) zeigt. Falls keine Fehler in der Berechnung vorliegen, wird mit der Kalibrierung fortgefahren. Treten Fehler auf, werden die Zwischenergebnisse gesammelt und der Code wird analysiert.
16 WaterGAP Global Hydrology and Water Use Model Kalibrierung Kalibrierung ist der Vergleich von Messungen eines Prüfmittels mit vorhandenen Werten nach einem dokumentierten Verfahren mit dem Ziel, Abweichungen zu erkennen und aufzuzeichnen. Dabei kann zusätzlich die Einhaltung vorgegebener Toleranzen überprüft und ggf. ein Abgleich durchgeführt werden. Der Begriff beinhaltet diesen Abgleich jedoch nicht zwangsläufig. Durch die Kalibrierung von Prüfmitteln wird deren Funktion und Genauigkeit überprüft und im Kalibrierschein dokumentiert [10]. Bei WaterGAP werden durch die Kalibrierung die Parameter der verwendeten Methode bestimmt. Wie in Abbildung 6 dargestellt, werden die Modellparameter variiert und die Simulationsergebnisse mit gemessenen Werten verglichen. Nichtübereinstimmung oder nicht plausible Ergebnisse führen zu Variation der Modellparameter bis sich die Ergebnisse an die gemessenen Werte annähern. Wenn die Kalibrierung nicht möglich ist, ist die gewählte Methode nicht passend gewählt, was wieder zurück zum Ausgangspunkt führt, der Literaturrecherche. Abbildung 6: Kalibrierungsschritte von WaterGAP (Quelle: Aus Der Beek, 2010) Die Abbildung 6 zeigt die Schritte der Kalibrierung des Modells. In Abbildung 7 ist deutlich zu sehen, dass eine eins-zu-eins Übereinstimmung nahezu unmöglich ist. Aber der Verlauf
17 WaterGAP Global Hydrology and Water Use Model der Ergebnisse ist ähnlich dem der gemessenen Werte. Abbildung 7: Kalibrierte Modellergebnisse in verschiedenen Flusseinzugsgebieten (Quelle: Aus Der Beek, 2010) Eine erfolgreiche Kalibrierung führt zum Schritt der Validierung Validierung Bei WaterGAP ist die Validierung die Bestätigung, dass die Modellparameter richtig kalibriert wurden und die Simulation wie erwartet funktioniert. Das bedeutet, das Modell liefert zuverlässige Ergebnisse und die ausgewählte Methode ist die richtige. Die Simulation wird mit den gemessenen Daten aus einer unabhängigen Zeitreihe und mit den durch Kalibrierung bestimmten Modellparametern durchgeführt. Diese Modellergebnisse werden mit den gemessenen Daten, sowie mit Statistiken und zusätzlich mit anderen hydrologischen Modellen verglichen. Notfalls werden die Ergebnisse durch Experten analysiert (siehe z.b. Journal of Hydrology 270 (2003): A global hydrology model for deriving water availability indicators: model tuning and validation, Döll et al.).
18 WaterGAP Global Hydrology and Water Use Model Qualitätssicherung Die anschließende Sensitivitäts- und Unsicherheitsanalyse sind notwendig um die Zuverlässigkeit des Modells festzustellen. Sie gehören zum Schritt der Qualitätssicherung. Die Abbildung 8 stellt die Schritte zur Qualitätssicherung der Modellergebnisse dar. Abbildung 8: Schritte zur Qualitätssicherung der Modellergebnisse (Quelle: Aus Der Beek, 2010) 3.3 Entwicklungsschritte Eingesetzte Hard- und Software Das Hydrologie-Teilmodell wird am Cluster der Universität Kassel ausgeführt. Deshalb ist die Parallelisierung von WaterGAP3 zur Rechenzeitoptimierung erfolgt. Die restlichen Modelle werden auf einer Workstation mit einem AMD Opteron Prozessor mit 4 Kernen, 6,2 TB Festplatte und 32 GB Arbeitsspeicher ausgeführt. Das eingesetzte Betriebssystem ist Linux SUSE Releasemanagement/Versionskontrolle Zur Releasemanagement wird die Versionierung verwendet. Ein bestimmtes Verfahren zum Releasemanagement und zur Versionskontrolle ist nicht festgelegt.
19 WaterGAP Global Hydrology and Water Use Model Mittel der Interaktion Nach der Fertigstellung einer (Sub-)Version werden die interne schriftliche technische Berichte und Kurzanleitungen gefertigt. Diese Anleitungen werden in Microsoft-Word geschrieben und befinden sich auf dem Server des CESR. Der Einsatz von anderen Mitteln wie z.b. Wikis findet nicht statt Kollaboration Aufgrund der Komplexität des Modells beschränkt sich die Benutzergruppe auf die Universitäten Kassel, Frankfurt und das Geoforschungszentrum Potsdam. Zurzeit sind ca Entwickler/Benutzer involviert Softwareeinführung Die Softwareeinführung erfolgt durch involvierte Entwickler. Die Einarbeitung dauert mehrere Monate und die Schulung ist unbedingt notwendig Softwarelebenszyklus Das Modell ist ständig weiterentwickelt bzw. erweitert. Eine neue Version 4 ist zurzeit nicht geplant. Eine neue Version ist nur dann sinnvoller, wenn die aktuell verwendete räumliche Auflösung verfeinert werden muss Wartung/Pflege Der Programmcode wurde vollständig mit Kommentaren versehen und Releases werden in Subversionen veröffentlicht. Alle 5 6 Jahr werden die Workstations gewechselt. Dies stellte in der Vergangenheit keine Schwierigkeiten dar. Zuletzt erfolgte eine Migration des Systems zu einer 64 Bit-Architektur, welche ebenfalls keine Probleme verursachte Datenarchivierung Nach Abschluss von Projekten werden sämtliche Modellergebnisse komprimiert und im Backup-System gespeichert. 3.4 Qualitätskontrolle nach der Norm ISO/IEC 9126 Die Norm ISO/IEC 9126 ist ein Modell zur Sicherstellung der Softwarequalität. Sie umfasst sechs wichtige Qualitätsmerkmale: Funktionalität, Zuverlässigkeit, Benutzbarkeit, Effizienz, Änderbarkeit und Übertragbarkeit. In folgenden Unterkapiteln wird das WaterGAP-Modell nach dieser Norm durch den Interviewpartner bewertet.
20 WaterGAP Global Hydrology and Water Use Model Funktionalität Die Definition der Funktionalität ist beschrieben durch das Vorhandensein von Funktionen mit festgelegten Eigenschaften. Diese Funktionen erfüllen die definierten Anforderungen [11]. Sie umfasst Angemessenheit, Richtigkeit, Interoperabilität, Sicherheit und Ordnungsmäßigkeit. Angemessenheit ist die Eignung von Funktionen für spezifizierte Aufgabe, zum Beispiel aufgabenorientierte Zusammensetzung von Funktionen aus Teilfunktionen [11]. Der Interviewpartner konnte zu diesem Punkt keine Angaben machen. Richtigkeit ist das Liefern der richtigen oder vereinbarten Ergebnisse oder Wirkungen, zum Beispiel die benötigte Genauigkeit von berechneten Werten [11]. Es wird angenommen, dass das Modell richtige Ergebnisse liefert, ansonsten würde es nicht eingesetzt werden. Die Modellergebnisse schließen aber right for wrong reasons [6] nicht aus. Auch die empirisch bestimmten ausgewählten Methoden stellen eine Fehlerquelle dar. Interoperabilität ist die Fähigkeit, mit vorgegebenen Systemen zusammenzuwirken. [11]. Der Interviewpartner konnte zu diesem Punkt keine Angabe machen. Sicherheit ist die Fähigkeit, unberechtigten Zugriff, sowohl versehentlich, als auch vorsätzlich, auf Programme und Daten zu verhindern. [11]. Die Daten und der Programmcode liegen auf dem internen Server des CESR und das Programm ist nicht online erreichbar. Sofern der Server nicht kompromittiert wird, ist es als sicher angesehen. Ordnungsmäßigkeit besteht dann, wenn eine Software Merkmale besitzt, die bewirken, dass die Software anwendungsspezifische Normen oder Vereinbarungen oder gesetzliche Bestimmungen und ähnliche Vorschriften erfüllt [11]. Der Interviewpartner konnte zu diesem Punkt keine Angabe machen Zuverlässigkeit Zuverlässigkeit ist die Fähigkeit der Software, ihr Leistungsniveau unter festgelegten Bedingungen über einen festgelegten Zeitraum zu bewähren. [11]. Diese Norm umfasst vier Merkmale: Reife, Fehlertoleranz, Wiederherstellbarkeit und Konformität. Reife ist definiert durch Geringe Versagenshäufigkeit durch Fehlerzustände. [11]. Das Modell ist ausgereift genug um stabil zu laufen.
21 WaterGAP Global Hydrology and Water Use Model Fehlertoleranz ist die Fähigkeit, ein spezifiziertes Leistungsniveau bei Software-Fehlern oder Nicht-Einhaltung ihrer spezifizierten Schnittstelle zu bewahren [11]. Einen Programmabbruch gibt es nur bei schwerwiegenden Fehlern wie fehlende Eingangsdaten. Wiederherstellbarkeit ist die Fähigkeit, bei einem Versagen das Leistungsniveau wiederherzustellen und die direkt betroffenen Daten wiederzugewinnen. Zu berücksichtigen sind die dafür benötigte Zeit und der benötigte Aufwand [11]. Das Programm wird durch Neustart wiederhergestellt. Konformität ist der Grad, in dem die Software Normen oder Vereinbarungen zur Zuverlässigkeit erfüllen [11]. Da zur Zuverlässigkeit keine Angaben gemacht werden konnten, kann auch keine Angabe zur Konformität gemacht werden Benutzbarkeit Benutzbarkeit ist der Aufwand, der zur Benutzung erforderlich ist, und individuelle Beurteilung der Benutzung durch eine festgelegte oder vorausgesetzte Benutzergruppe [11]. Diese Norm umfasst fünf wichtige Eigenschaften: Verständlichkeit, Erlernbarkeit, Bedienbarkeit, Attraktivität und Konformität einer Software. Verständlichkeit ist der Aufwand für den Benutzer, das Konzept und die Anwendung zu verstehen [11]. Um das Programm zu verstehen muss der Benutzer erst die komplexen hydrologischen Prozesse verstehen. Für den normalen Endbenutzer stellt dies ein großes Problem dar. Erlernbarkeit ist der Aufwand für den Benutzer, die Anwendung zu erlernen [11]. Die Erlernbarkeit ist sehr aufwendig, da die Einarbeitung mehrere Monate dauert. Bedienbarkeit ist der Aufwand für den Benutzer, die Anwendung zu bedienen [11]. Die Bedienbarkeit ist eingeschränkt, da es keine graphische Benutzeroberfläche (GUI) gibt. Attraktivität ist die Anziehungskraft der Anwendung gegenüber dem Benutzer [11]. Das Programm besitzt kaum eine Attraktivität gegenüber normalen Benutzern. Konformität ist der Grad, in dem die Software Normen oder Vereinbarungen zur Benutzbarkeit erfüllt [11]. Da zur Zuverlässigkeit keine Angaben gemacht werden konnten, kann auch keine Angabe zur Konformität gemacht werden. Das Modell wird hauptsächlich von Entwicklern genutzt, deshalb stellt die Benutzbarkeit nur ein geringes Problem dar.
22 WaterGAP Global Hydrology and Water Use Model Effizienz Effizienz ist das Verhältnis zwischen dem Leistungsniveau der Software und dem Umfang der eingesetzten Betriebsmittel unter festgelegten Bedingungen [11]. Diese Norm umfasst drei wichtige Eigenschaften: Zeitverhalten, Verbrauchsverhalten und Konformität. Das WaterGAP hat erhöhten Bedarf an Rechenzeit und Speicher. Zeitverhalten beschreibt die Antwort- und Verarbeitungszeiten sowie Durchsatz bei der Funktionsausführung [11]. Zur Optimierung der Rechenzeit wurde eine Parallelisierung des Programmcodes für den Cluster durchgeführt. Ein Modelldurchlauf dauert ca. 1,5 Tage auf dem Cluster. Verbrauchsverhalten beschreibt die Anzahl und Dauer der benötigten Betriebsmittel bei der Erfüllung der Funktionen. Ressourcenverbrauch, wie CPU-Zeit, Festplattenzugriffe usw. [11]. Das Programm besitzt erhöhten Bedarf an Ressourcen. Der Arbeitsspeicher mit 32GB RAM ist zurzeit zufriedenstellend, aber der Zielspeicher (Festplatte) ist zu klein (6TB) für die Outputdaten. Konformität bedeutet Grad. In dem die Software Normen oder Vereinbarungen zur Effizienz erfüllt [11]. Da zum Effizienz keine Angaben gemacht werden konnten, kann auch keine Angabe zur Konformität gemacht werden. Allgemein ist die Software als effizient anzusehen Änderbarkeit Änderbarkeit ist der Aufwand, der zur Durchführung vorgegebener Änderungen notwendig ist. Änderungen können Korrekturen, Verbesserungen oder Anpassungen an Änderungen der Umgebung, der Anforderungen oder der funktionalen Spezifikationen einschließen [11]. Diese Norm umfasst vier Eigenschaften: Analysierbarkeit, Modifizierbarkeit, Stabilität und Testbarkeit. Analysierbarkeit beschreibt den Aufwand, um Mängel oder Ursachen von Versagen zu diagnostizieren oder um änderungsbedürftige Teile zu bestimmen [11]. Die Änderungen im Programm sind sehr aufwendig. Modifizierbarkeit beschreibt den Aufwand zur Ausführung von Verbesserungen, zur Fehlerbeseitigung oder Anpassung an Umgebungsänderungen [11]. Da die Analyse sehr aufwendig ist, ist auch die Modifikation sehr aufwendig.
23 WaterGAP Global Hydrology and Water Use Model Stabilität beschreibt die Wahrscheinlichkeit des Auftretens unerwarteter Wirkungen von Änderungen [11]. Diese Eigenschaft ist nicht voraussehbar. Testbarkeit bedeutet Aufwand, der zur Prüfung der geänderten Software notwendig ist [11]. Tests sind bei WaterGAP sehr aufwendig Übertragbarkeit Übertragbarkeit ist die Eignung der Software, von der Umgebung in eine andere übertragen werden zu können. Umgebung kann organisatorische Umgebung, Hardware- oder Software- Umgebung sein [11]. Diese Norm umfasst fünf Eigenschaften: Anpassbarkeit, Installierbarkeit, Koexistenz, Austauschbarkeit und Konformität. Anpassbarkeit ist die Fähigkeit der Software, diese an verschiedene Umgebungen anzupassen [11]. Das Programm ist nur unter Linux SUSE lauffähig. Es gibt es keine Angabe zur Kompatibilität mit anderen Linux-Distributionen. Installierbarkeit beschreibt den Aufwand, der zum Installieren der Software in einer festgelegten Umgebung notwendig ist [11]. Bei WaterGAP ist keine Installation notwendig. Koexistenz ist die Fähigkeit der Software neben einer anderen mit ähnlichen oder gleichen Funktionen zu arbeiten [11]. Zur Fähigkeit der Koexistenz mit anderer Software oder Funktionen ist nichts Genaueres bekannt. Austauschbarkeit ist die Möglichkeit, diese Software anstelle einer spezifizierten anderen in der Umgebung jener Software zu verwenden, sowie der dafür notwendige Aufwand [11]. Es gibt kein anderes Modell, das auf der Global-Skala rechnet. Ein Austausch mit einer anderen Software ist daher nicht möglich. Konformität bedeutet Grad, in dem die Software Normen oder Vereinbarungen zur Übertragbarkeit erfüllen [11]. Zur Konformität kann keine Angabe gemacht werden. 3.5 Besonderheiten Es sind keine dauerhaften Stellen zur Programmierung und Pflege von WaterGAP vorhanden. Die Entwicklung von WaterGAP wird durch Drittmittelprojekte (z.b. BMBF, EU) finanziert, welche keine solche Stelle vorsehen. Deswegen sind ausschließlich Naturwissenschaftler in der Entwicklung involviert. Lediglich die Parallelisierung wurde von einem externen Informatiker übernommen. Die Chefprogrammiererin am CESR unterstützt die Entwickler teilwei-
24 WaterGAP Global Hydrology and Water Use Model se bei ihrer Arbeit. Die Entwickler am CESR arbeiten im selben Gebäude und jede Woche werden im Team-Meeting die Fortschritte bzw. Ergebnisse diskutiert. Aus finanziellen Gründen wird hauptsächlich Freeware (z.b. Eclipse, MySQL) eingesetzt. 4 Zusammenfassung 4.1 Zusammenfassung des Interviews Der Interviewpartner bezeichnet Softwareentwicklung in der Wissenschaft als notwendig um natürliche und sozioökonomische Prozesse realitätsnah in einem Computermodell wiederzugeben und damit weitergehende Fragestellungen bearbeiten zu können. In Projekten wird oftmals das Ziel verfolgt, das Modell weiter zu entwickeln um neue wissenschaftliche Fragestellungen zu beantworten: z.b. Wie wirkt sich der Klimawandel auf die Wasserressourcen aus? Außerdem ist sie unterstützend beim Pre- und Post-Processing der Input- und Outputdaten [6]. Der Interviewpartner konnte während des Interviews softwaretechnischen Fragen gar nicht oder nur teilweise beantworten. Wahrscheinlich liegt der Grund dafür darin, dass der Interviewpartner die formalen Aspekte der Softwareentwicklung nicht kennt. 4.2 Fazit Es ist schwierig für Informatiker in das Projekt einzuspringen und die Implementierungsrolle zu übernehmen. Da das Modell sehr komplex ist, ist das naturwissenschaftliche Fachwissen unbedingt erforderlich. Der Einsatz von Software-Testern ist auch deshalb sehr schwierig. Eine Hilfstätigkeit ist daher sinnvoller z.b. zur Parallelisierung, Automatisierung der Modelldurchläufe, die Implementierung bestimmter Funktionen oder die Pflege der Software. Die traditionellen Softwareentwicklungsprinzipien müssen nicht an erster Stelle stehen, da sich Vorgehensweise meist sehr von der traditionellen Softwareentwicklung unterscheidet. Es ist jedoch von Vorteil, einige Werkzeuge wie verbesserte Mittel zur Dokumentation (z.b. eigene Wiki) und ein verbessertes Datenmanagement (Backup-System, Versionsmanagement, Releasemanagement) einzusetzen.
25 WaterGAP Global Hydrology and Water Use Model Literaturverzeichnis Quellen: Aus der Beek, Tim (2010): Geodätisches Oberseminar Universität Stuttgart J.Alcamo, P.Döll, T.Henrichs, F.Kaspar, B.Lehner, T.Rösch, S.Siebert (2003): Development and the testing of the WaterGAP2, Hydrological Sciences-Journal-des Sciences Hydrologiques 48(3) June 2003 P.Döll, F.Kaspar, B.Lehner (2001): A global hydrology model for deriving water availability indicators: model tuning and validation, Journal of Hydrology 270 (2003) Referenzen: [1] K.Kreyman, D.L.Parnas, S.Qiao (1999): Inspection Procedures for Critical Programs that Model Physical Phenomena. CRL Report No.368. McCaster University [2] J.Segal (2004): Models of scientific software development [3] R.P.Kendall, D.E. Post, J.C. Carver, D.B. Henderson, D.A.Fisher (2007): A proposed Taxonomy for Software Development Risks for High-performance Computing (HPC) Scientific/Engineering Applications. Technical Notes. Carnegie Mellon University. [4] D.E.Stevenson (1999): A Critical Look at Quality in Large-Scale Simulations. Computing in Science and Engineering, (May-Jun. 1999), [5] D.Kelly, R.Sanders (2008): The Challenge of Testing Scientific Software, Dissertation on CAST (2008) [6] T.Aus der Beek (2011): Interview zum WaterGAP-Modell [7] [8] G.J.Myers (2004): The Art of Software Testing, 2nd Edition John Wiley & Sons Inc. [9] D.E. Post, L.G.Votta (2005): Computational Science Demands a New Paradigm. Physics Today (2005), [10] [11] ISO/IEC 9126
WaterGAP. model. Seminar Softwareentwicklung in der Wissenschaft
WaterGAP A global hydrology and water use model Seminar Softwareentwicklung in der Wissenschaft Maral Chimed-Ochir Gliederung 1. Übersicht 2. WaterGAP 2.1 Beispiel: Räumliche Auslösung 2.2 Entwicklung
Softwareentwicklung in der Wissenschaft. Planet Simulator. Enno Köster. Enno Köster / 24
Softwareentwicklung in der Wissenschaft Planet Simulator Enno Köster Enno Köster 9.2.2011 1 / 24 Gliederung Überblick Software Entwicklung Abgleich mit ISO-Norm Verbesserungsvorschläge Fazit Enno Köster
Qualität, Fehler un Testvorgehen
, Fehler un Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek Software Engineering 20. Februar 2013 HOM/FHTeL, Fehler un 20. Februar 2013 1/23 , Fehler un Pieter van den Hombergh Fontys
Grundlagen des Datenschutzes und der IT-Sicherheit (9) Vorlesung im Sommersemester 2005 von Bernhard C. Witt
und der IT-Sicherheit (9) Vorlesung im Sommersemester 2005 von Ergebnis Systemsicherheit Unterschiede zwischen symmetrischen und asymmetrischen Authentifikationen (vor allem hinsichtlich der Zielsetzung)
Aufgabe 3 Erstellt am: Softwaretechnik Praktikum SS06 Verantwortliche: Irina Justus
Pflichtenheft Gliederung 1. Zielbestimmung 2. Produkteinsatz 3. Produktübersicht 4. Produktfunktionen 5. Produktdaten 6. Produktleistungen 7. Qualitätsanforderungen 8. Benutzeroberfläche 9. Nicht funktionale
Willkommen zur Vorlesung. im Sommersemester 2012 Prof. Dr. Jan Jürjens
Willkommen zur Vorlesung im Sommersemester 2012 Prof. Dr. Jan Jürjens TU Dortmund, Fakultät Informatik, Lehrstuhl XIV 1 : Grundlagen [inkl. Beiträge von Prof. Summerville, St. Andrews University und Prof.
Pflichtenheft. Thema: Datenbankbasiertes Installations- und Management System für Windows 2000 / XP.
Pflichtenheft Thema: Datenbankbasiertes Installations- und Management System für Windows 2000 / XP. Betreuer/in: Frau Reinhart-Fröstl und Herr Keller Projektgruppe: Christian Dierkes Björn Jankord Ludger
Qualitätssicherung. Was ist Qualität?
Ein Überblick Methoden und Werkzeuge zur Softwareproduktion Was ist Qualität? "Als Qualität eines Gegenstandes bezeichnen wir die Gesamtheit seiner charakteristischen Eigenschaften" Hesse et al. 2 Was
Validierung von Software-Werkzeugen Medical Device Day, Dipl.-Phys. Matthias Hölzer-Klüpfel, M.Sc.
Willkommen Validierung von Software-Werkzeugen Medical Device Day, 2011-09-20 Dipl.-Phys. Matthias Hölzer-Klüpfel, M.Sc. Super Werkzeug! Ist das validiert? Ist das überhaupt validiert? Super Tool! Was
Software Entwicklung in der Wissenschaft
Software Entwicklung in der Wissenschaft Ein Dialog zwischen Theorie und Praxis einiger Softwaretechnikelemente anhand eines Interviews Webadresse, E-Mail oder sonstige Referenz Seite 1/30 07.10.2015 Gliederung
Modellgetriebene Entwicklung von Webanwendungen: eine erste Analyse
Modellgetriebene Entwicklung von Webanwendungen: eine erste Analyse 25. Oktober 2012 Taentzer Modellgetriebene Softwareentwicklung 59 Überblick Anforderungsanalyse auf zwei Ebenen: Analyse einer konkreten
Technische Voraussetzungen GemDat Bau
Technische Voraussetzungen GemDat Bau Version 6 Zielgruppe Freigabedatum Status Kunden, Partner und GemDat Informatik AG 2. i 20 Freigegeben Copyright 20 by GemDat Informatik AG Druckdatum 26.00, Anzahl
Lernziel Für Fallstudien und Beispiele eine Qualitätszielbestimmung anhand des ISO 9126-Qualitätsmodells vornehmen können.
1 Software-Qualitätssicherung 2 Einführung und Überblick LE 1 V Unternehmensmodellierung 1 Grundlagen [stark gekürzt] Prof. Dr. Helmut Balzert Lehrstuhl für Software-Technik Ruhr-Universität Bochum 1 Grundlagen
1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge
Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete
Nicht-funktionale Anforderungen
Juristisches IT-Projektmanagement Michael Braun Nicht-funktionale Anforderungen 12.1.2016 Nicht-funktionale Anforderungen 12.1.2016 Folie 1 Unterscheidung Anforderungen an ein Software System Funktionale
Kundenstamm öffnen. Artikelstamm öffnen 50,86 50,86 50,86 50,86 52,00 50, , ,86 52,00 52,00
W³S fehlerhafte Aufträge bearbeiten Menüleiste Belege W³S fehlerhafte Aufträge bearbeiten + - Auftrag Menüleiste + - neue Aufträge + - manuell leiste Handling 5,00 LIEF B Position hinzufügen Position löschen
Systematisches Testen der Funktionalität von Softwaresystemen. 17. Juni 2015
Systematisches Testen der Funktionalität von Softwaresystemen 17. Juni 2015 Überblick Semantische Qualität von Software Teststrategien und prinzipien Testgetriebene Softwareentwicklung Welche Arten von
Requirements Engineering I. Nicht-funktionale Anforderungen
Martin Glinz Requirements Engineering I Kapitel 11 Nicht-funktionale Anforderungen Universität Zürich Institut für Informatik 2006 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe sind
Die Zertifizierungsstelle der TÜV Informationstechnik GmbH bescheinigt hiermit dem Unternehmen
Die Zertifizierungsstelle der TÜV Informationstechnik GmbH bescheinigt hiermit dem Unternehmen Philips Deutschland GmbH Lübeckertordamm 5 20099 Hamburg für das Softwareprodukt IMKB-Berechnung Version 1.2.2
Softwareentwicklung in der Wissenschaft Steffen Göttsch
Softwareentwicklung in der Wissenschaft 9.12.2010 Steffen Göttsch Gliederung Motivation Prinzipien guter Softwareentwicklung Praxis in der SiW Programmiermethoden Zusammenarbeit SE und Wissenschaft Open
Konfiguration und Installation eines Datenbank Cluster-Systems in virtuellen Systemumgebungen
Informatik Markus Bräunig Konfiguration und Installation eines Datenbank Cluster-Systems in virtuellen Systemumgebungen Diplomarbeit Bibliografische Information der Deutschen Nationalbibliothek: Die Deutsche
Test offener, dynamischer Systeme
Test offener, dynamischer Systeme Institut für Informatik Neuenheimer Feld 326 69120 Heidelberg http://www-swe.informatik.uni-heidelberg.de paech@informatik.uni-heidelberg.de RUPRECHT-KARLS-UNIVERSITÄT
Geo 241 Modellierung von Systemen Modulverantwortlicher: Dr. Krause. Sommersemester 2009
Geo 241 Modellierung von Systemen Modulverantwortlicher: Dr. Krause Sensitivität Tino Wunderlich Matrikel 100028 Gliederung 1. Sensitivität in der Statistik ( Berechnung / Beispiel) 2. Sensitivität in
Qualitätssicherung - eine Einführung -
Systementwicklung Qualitätssicherung - eine Einführung - Uwe H. Suhl und Chris Bizer SS 2008 Qualitätssicherung erweitert die Sicht des Entwicklers um eine zusätzliche Dimension Qualitätssicherungsmaßnahmen
Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013
Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 7. Februar 2013 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion
Performance Engineering: Forschung und Dienstleistung für HPC-Kunden. Dirk Schmidl
Performance Engineering: Forschung und Dienstleistung für HPC-Kunden Hardware Komplexität GPU KNL MPI L U S T R E SMP Claix NVMe HOME Storage OPA Die Komplexität moderner HPC Systeme erfordert Optimierung
Stand der Überarbeitung in der IEC SC 65A/MT , Vorbereitung 3. Ausgabe der IEC GAK Frankfurt,
Stand der Überarbeitung in der IEC SC 65A/MT 61508-3, Vorbereitung 3. Ausgabe der IEC 61508 GAK 914.0.3 Frankfurt, 1.03.2017 Einordnung der vorbereitenden Maßnahmen zur 3. Ausgabe der IEC 61508 - Im November
Womit wir uns beschäftigen
Berechnung und Optimierung von Grenzwerten für Mengen von Software Metriken Steffen Herbold, Jens Grabowski, Stephan Waack Georg-August-Universität Göttingen Softwareforen Leipzig Womit wir uns beschäftigen
Objektorientierte Programmierung (OOP)
orientierte Programmierung (OOP) 1. Motivation Die objektorientierte Sichtweise der Welt Als Motivation für die OOP sieht man sich am besten die reale Welt an: Die reale Welt besteht aus "en", z. B.: Gegenstände,
Kontakt: Tel
Kurzfassung: Dieser Beitrag untersucht die Anforderungen an das Messdatenmanagement, die sich direkt oder abgeleitet aus der IEC 61508 ergeben. Es wird dargestellt,: - welche Bedeutung das Modell des Sicherheitslebenszyklus
Kernprozess zur System- und Softwareentwicklung. Logische Systemarchitektur f 1. f 2 f 3. f 4 Funktion. Technische Systemarchitektur SG 1 SG 2 SG 3
Systems Engineering Systems Engineering ist die gezielte Anwendung von wissenschaftlichen und technischen Ressourcen! zur Transformation eines operationellen Bedürfnisses in die Beschreibung einer Systemkonfiguration
Pflichtenheft. Didier Cherix. Christopher Hermann. Frank Stumpf SWP CHRISTOPHER HERMANN, DIDIER CHERIX, FRANK STUMPF
Pflichtenheft Didier Cherix Christopher Hermann Frank Stumpf 16.05.2010 SEITE 1 VON 9 Inhaltverzeichnis 1 Zielbestimmung... 3 2 Produkteinsatz... 3 3 Produktübersicht... 4 3.1 Erläuterung... 4 4 Funktionale
Technische Richtlinie XML-Datenaustauschformat für hoheitliche Dokumente (TR XhD) 1 Rahmenwerk
Technische Richtlinie XML-Datenaustauschformat für hoheitliche Dokumente (TR XhD) 1 Rahmenwerk Version 1.4 18.11.2013 BSI TR-03123-1 Bundesamt für Sicherheit in der Informationstechnik Postfach 20 03 63
Implementierung LDT3 Besonderheiten und Erfahrungen. Eva Meloth Product Owner MIPS vianova Labor
Implementierung LDT3 Besonderheiten und Erfahrungen Eva Meloth Product Owner MIPS vianova Labor Unsere Lösung Implementierung LDT3 Erfahrungen Feedback Unsere Lösung MIPS vianova Labor: Prozessoptimierung
Sensitivität der Modellergebnisse gegenüber der räumlichen Diskretisierung und der Informationsdichte. Helge Bormann
11. Workshop für großskalige hydrologische Modellierung Sensitivität der Modellergebnisse gegenüber der räumlichen Diskretisierung und der Informationsdichte Helge Bormann Universität Oldenburg Institut
Softwareentwicklungsumgebungen
Softwareentwicklungsumgebungen Pit Pietsch Dipl.-Wirt.-Inform. Universität Siegen Fachgruppe Praktische Informatik Themen 1. SEU / Eclipse 2. Emf Ecore & Model Driven Engineering 3. Model-Repositories
Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH
Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen
IT- und Medientechnik
IT- und Medientechnik Vorlesung 6: 20.11.2017 Wintersemester 2017/2018 h_da, Lehrbeauftragter Teil 1: IT- und Medientechnik Themenübersicht der Vorlesung Hard- und Software Hardware: CPU, Speicher, Bus,
GIOMAID Grundwasserhydrologisches Informationssystem zur Organisation und modellgerechten Aufbereitung von Informationen und Daten
- 111 - GIOMAID 2005 Grundwasserhydrologisches Informationssystem zur Organisation und modellgerechten Aufbereitung von Informationen und Daten G. Schaud ISB AG Karlstraße 52-54 76133 Karlsruhe B. Schneider
Context-Awareness: aktuelle Projekte. Wintersemester 2007/2008 HAW-Hamburg Jaroslaw Urich
Context-Awareness: aktuelle Projekte Wintersemester 2007/2008 HAW-Hamburg Jaroslaw Urich Agenda Einleitung Context-Awareness Aktuelle Projekte (am Beispiel von CAMUS) Fazit und Ausblick Quellen 04.12.2007
Das Softwaresystem BASEMENT
Numerische Modellierung von Naturgefahren mit dem Softwaresystem BASEMENT Workshop vom 6. Oktober 2006 an der VAW ETH Zürich Das Softwaresystem BASEMENT David Vetsch Inhalt 1. Motivation und Entstehungsgeschichte
WICHTIGSTE NEUERUNGEN VON A-PLAN 2018 ZUSAMMENFASSUNG
WICHTIGSTE NEUERUNGEN VON A-PLAN 2018 ZUSAMMENFASSUNG Bei der neuen Version wurden u. a. folgende Verbesserungen bei A-Plan eingeführt: Unterstützung hochauflösender Bildschirme. Wesentlich höhere Scrollgeschwindigkeit
Effizienz & Gütekriterien
Prozessmodellierung II Effizienz & Gütekriterien Linda Spazier Matrikel: 93515 Linda.Spazier@uni jena.de 25.05.2009 GEO 241 Modellierung von Systemen 1 Effizienz und Gütekriterien Stellen Übereinstimmungen
Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 11. Februar 2015
Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 11. Februar 2015 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion
Team Foundation Server & Ranorex Workshop
Tag 1: Testing Fundamentals Der Kurs (Tag) zeigt wie Software Tests in einem "best practice" Ansatz gestaltet werden können. Referenzierend auf den ISTQB gibt es ein "Best off" aus der Gestaltung, Abwicklung,
TUD Computer Poker Challenge
TUD Computer Poker Challenge The Challenge of Poker Björn Heidenreich 31. März 2008 The Challenge of Poker Björn Heidenreich 1 Anforderungen an einen guten Poker-Spieler Hand Strength Hand Potential Bluffing
Constraint-basierte Planung und Optimierung von Prüfungsterminen mithilfe einer graphischen Benutzeroberfläche
Douglas Cunningham,Petra Hofstedt, Klaus Meer, IngoSchmitt (Hrsg.): INFORMATIK 2015 LectureNotes in Informatics (LNI), Gesellschaft für Informatik, Bonn 2015 Constraint-basierte Planung und Optimierung
ISim Standardisierung von Flugkörpersimulationen. Vortragender: Florian Peter DGLR, Braunschweig Datum: 30.
ISim Standardisierung von Flugkörpersimulationen Vortragender: Florian Peter (florian.peter@mbda-systems.de) Ort: DGLR, Braunschweig Datum: 30. Mai 2017 Übersicht 1. Motivation 2. Rolle von ISim im Technologiefeld
- dynamisches Laden -
- - Fachbereich Technik Department Elektrotechnik und Informatik 21. Juni 2012 1/23 2/23 s dynamisch Code kann von mehreren Programmen genutzt werden => kleinere Programme einzelne Teile eines Programms
NI-TDM-Datenformat. Komfortables Arbeiten mit TDM-Dateien in LabVIEW
NI-TDM-Dateiformat NI-TDM-Datenformat Im Verlauf des gesamten Entwicklungsprozesses für ein neues Produkt werden große Mengen technischer Daten erzeugt sei es bei der Simulation bestimmter Vorgänge oder
Model Querys zur Überprüfung von sicherheitsrelevanten Eigenschaften
Model Querys zur Überprüfung von sicherheitsrelevanten Eigenschaften Proseminarvortrag Werkzeugunterstützung für sichere Software Jens Knipper Fakultät für Informatik Technische Universität Dortmund 31.
Softwarequalität erhöhen durch DevOps
Softwarequalität erhöhen durch DevOps Leipzig, 31.03.2017 Jeremias Hackbeil Softwareforen Leipzig GmbH 1 Nur wer schnell ist, überlebt im Markt. Dafür braucht es neue Arbeitsstrukturen. Computerwoche vom
Softwaretechnik-Praktikum SS 2007 Aufgabenblatt 3. Gruppe: HK-07-4 Gruppenleiter: Stanley Hillner Lastenheft. (Editor für Eclipse GMF)
Lastenheft (Editor für Eclipse GMF) Inhaltsverzeichnis 1.Zielbestimmung... 2 2.Produkteinsatz...2 3.Produktübersicht...2 4.Produktfunktionen...3 4.1.Muss-Funktionen...3 4.2.Kann-Funktionen...4 5.Produktdaten...
swp12-6 Aufgabenblatt Qualita tssicherungskonzept
1 Dokumentationskonzept Interne Dokumentation 2 Dokumentation der Funktionen 2 Programmierstandards 2 Externe Dokumentation Dokumente 3 Was muss in jedem Dokument vorhanden sein? 3 2 Testkonzept Einleitung
Softwarequalität. Gabriele Taentzer Philipps-Universität Marburg. Sommersemester 2016
Softwarequalität Gabriele Taentzer Philipps-Universität Marburg Sommersemester 2016 Organisation der LV Umfang: 6 SWS, 9 ECTS Punkte Veranstalter: Gabriele Taentzer, Stefan John Kontakt: taentzer@mathematik.uni-marburg.de,
Linux-Treiber entwickeln
Linux-Treiber entwickeln Eine systematische Einführung in Gerätetreiber für den Kernel 2.6 von Jürgen Quade, Eva K Kunst überarbeitet Linux-Treiber entwickeln Quade / Kunst schnell und portofrei erhältlich
Blockpraktikum Multimediaprogrammierung
Blockpraktikum Multimediaprogrammierung 15. September 26. September 2008 Max Maurer Erfahrungsbericht Extreme Programming Kleiner Rückblick zur Vorlesung Prof. Heinrich Hußmann Agile Development for Multimedia
Studienprojekt SAT:LAB
Institut für Parallele und Verteilte System () Universitätsstraße 38 D-70569 Stuttgart Studienprojekt SAT:LAB Eine kollaborative Problemlösungsumgebung für SAT-basierte Methoden Vorstellung der Studienprojekte
Was versteht man unter Softwarequalität?
Was versteht man unter? ist die Gesamtheit der Merkmale und Merkmalswerte eines Softwareproduktes, die sich auf dessen Eignung beziehen, festgelegte oder vorausgesetzte Erfordernisse zu erfüllen. Was ist
Usability. Katja Fuhrmann FG Software Engineering Leibniz Universität Hannover
Usability Katja Fuhrmann katja.fuhrmann@inf.uni-hannover.de FG Software Engineering Leibniz Universität Hannover 21.12.2016 Katja Fuhrmann Wissenschaftliche Mitarbeiterin am FG Software Engineering Usability
1 EINLEITUNG PROJEKTABLAUF Allgemeine Zielsetzung Projektstruktur und Zeitplan ANFORDERUNGSANALYSE...
Inhaltsverzeichnis Inhaltsverzeichnis 1 EINLEITUNG... 1 2 PROJEKTABLAUF... 4 2.1 Allgemeine Zielsetzung... 4 2.2 Projektstruktur und Zeitplan... 4 3 ANFORDERUNGSANALYSE... 8 3.1 Der Prototyp des Anlagenmodells...
Einführung in die Simulation. Dr. Christoph Laroque Wintersemester 11/12. Dresden,
Fakultät Informatik, Institut für Angewandte Informatik, Professur Modellierung und Simulation Einführung in die Simulation Dr. Christoph Laroque Wintersemester 11/12 Dresden, 06.12.2011 06.12.2011 Folie
Produktivität von Programmiersprachen
Wie misst man die? Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Fachbereich Informatik, Arbeitsbereich Wissenschaftliches Rechnen Seminar Softwareentwicklung in der Wissenschaft
Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen
Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen Roland Koppe, Stefan Häusler, Axel Hahn 2 Übersicht Einleitung und Motivation Ansatz und Methodik
G DATA TechPaper. Update auf Version 14.1 der G DATA Unternehmenslösungen
G DATA TechPaper Update auf Version 14.1 der G DATA Software AG Application Development Q3 2017 Inhaltsverzeichnis Zusammenfassung & Umfang... 3 Typographische Konventionen... 3 Vorbereitung... 4 Update
Robert Graf CEO Mobile
Robert Graf CEO Mobile +43 664 1314403 Email: rg@prolion.at Über ProLion CEO, Robert Graf Hauptzentrale und Entwicklung in Österreich ProLion hat ClusterLion entwickelt (automatic switchover for MC) NetApp
Neueste Trends im Hochleistungsrechnen
Proseminar Neueste Trends im Hochleistungsrechnen Julian Kunkel, Michael Kuhn, Philipp Neumann Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften
Software Design basierend auf dem Plug-In Konzept
Software Design basierend auf dem Plug-In Konzept Michael Antes Seminar Simulation und Bildanalyse mit Java, WS2003 Universität Ulm Software-Design basierend auf dem Plug-In-Konzept Inhalt: Einführung:
Die Zertifizierungsstelle der TÜV Informationstechnik GmbH bescheinigt hiermit dem Unternehmen
Die Zertifizierungsstelle der TÜV Informationstechnik GmbH bescheinigt hiermit dem Unternehmen GAD eg GAD-Straße 2-6 48163 Münster für die Internetanwendung Online-Filiale (bank21-release 5.2) die Erfüllung
ERSTELLUNG EINES KONZEPTS ZUM TESTEN DER PERFORMANCE VON JAVA CODE MIT HILFE DER FRAMEWORKS JUNIT UND TESTNG
ERSTELLUNG EINES KONZEPTS ZUM TESTEN DER PERFORMANCE VON JAVA CODE MIT HILFE DER FRAMEWORKS JUNIT UND TESTNG VORTRAG ZUR SEMINARARBEIT JOHANNES WALLFAHRER 20. JANUAR 2016 Inhalt 1. Einleitung 2. Was ist
Zwischenbericht II der TU Dortmund
D-Grid IaaS - Erweiterung der D-Grid Basis für die kommerzielle Nutzung Zwischenbericht II der TU Dortmund Datum 04. Juli 2011 Version 1.0 Status Referenz Final http://www.irf.tu-dortmund.de/cms/de/it/projekte/d-
Virtuelle Inbetriebnahme von Maschinen und Fabriken
Proseminar Technische Informationssysteme Virtuelle Inbetriebnahme von Maschinen und Fabriken Dresden, den 14.01.2010 Virtuelle Inbetriebnahme von Maschinen und Fabriken 1. serklärung 2. Vorteile und Grenzen
Softwarequalität und Softwarealterung. Anne Moormann Benedikt Scholz Michael Herbener
Softwarequalität und Softwarealterung Anne Moormann Benedikt Scholz Michael Herbener Präsentationstitel, Referent: Meta Normal-Roman 12 pt 2 Agenda Softwarequalität Softwarealterung Maßnahmen gegen Softwarealterung
ARCHITEKTUR KATA als Trainingsform für agile Teams
02.12.2014 ARCHITEKTUR KATA als Trainingsform für agile Teams Roland Mast Sybit GmbH Software Architekt Scrum Master roland.mast@sybit.de 1 02.12.2014 Ich Du Wir Ihr Architektur Kata Architektur Vision
Erfahrungsbericht, Konsolidierung und Administration Real Application Cluster
Erfahrungsbericht, Konsolidierung und Administration Real Application Cluster Themen Über mich Projekt RAC bei Heine Probleme Resultate Fragen 2 Über mich virtual7 GmbH Jürgen Bouché Zeppelinstraße 2 76185
Pflichtenheft. 3. Produktübersicht
Pflichtenheft 1. Zielbestimmung Mit dem Produkt soll ein schneller erster Einstieg der Firma EduSoft in das bisher vernachlässigte Marktsegment der Dynamischen Geometrie -Software auf Java -Basis erreicht
1. Grundbegriffe der Softwaretechnik. 1.1 Herausforderungen
1. Grundbegriffe der Softwaretechnik 1.1 Herausforderungen Worin bestehen die Herausforderungen großer (Software-)Projekte? Ein Gartenbauer benötigt 3 Stunden, um eine 0,8 m lange Zierbrücke über einen
isb.swissrivers.ch : Die neue Internet Plattform für
isb.swissrivers.ch : Die neue Internet Plattform für die Bewässerung der Region Seeland-Broye Frédéric Jordan, e-dric.ch Murielle thomet, e-dric.ch Jürg Fuhrer, Agroscope Pascalle Smith, Agroscope Peter
Hello World! Eine Einführung in das Programmieren Das erste Programm
Hello World! Eine Einführung in das Programmieren Das erste Programm Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Betriebssystem Funktion Anwendung Gerätesteuerung
Inhaltsverzeichnis. Georg Stark. Robotik mit MATLAB ISBN: Weitere Informationen oder Bestellungen unter
Inhaltsverzeichnis Georg Stark Robotik mit MATLAB ISBN: 978-3-446-41962-9 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41962-9 sowie im Buchhandel. Carl Hanser Verlag, München
Systemanforderungen Verlage & Akzidenzdruck
OneVision Software AG Inhalt Asura 9.5, Asura Pro 9.5, Garda 5.0...2 PlugBALANCEin 6.5, PlugCROPin 6.5, PlugFITin 6.5, PlugRECOMPOSEin 6.5, PlugSPOTin 6.5,...2 PlugTEXTin 6.5, PlugINKSAVEin 6.5, PlugWEBin
Was kennzeichnet qualitativ hochwertige Software Systeme? Wie kann hohe Software Qualität erreicht werden?
Was kennzeichnet qualitativ hochwertige Software Systeme? Wie kann hohe Software Qualität erreicht werden? WS 2016 HTW Dresden FIM Software Engineering I Prof. Dr. Ing. Anna Sabine Hauptmann 1 Funktionserfüllung
Seminar Softwareentwicklung in der Wissenschaft. Prof. Thomas Ludwig, Hermann Lenhart, Julian Kunkel
Seminar Softwareentwicklung in der Wissenschaft Prof. Thomas Ludwig, Hermann Lenhart, Julian Kunkel Einordnung am Beispiel: Workshop Dialekte der Klimaforschung Agenda Von der Anschauung und Messdaten
10 Inhaltsverzeichnis
Georg Stark Robotik mit MATLAB Mit 101 Bildern, 33 Tabellen, 40 Beispielen, 55 Aufgaben und 37 Listings Fachbuchverlag Leipzig im Carl Hanser Verlag Inhaltsverzeichnis 1 Einführung in die Robotik 13 1.1
Beobachtung 1: Beispiel: Intuitive Programme sind oft ineffizient.
Beobachtung 1: Intuitive Programme sind oft ineffizient. Beispiel: void swap (int i, int j) { int t; if (a[i] > a[j]) { t = a[j]; a[j] = a[i]; a[i] = t; } } 731 Ineffizienzen: Adressen a[i], a[j] werden
Systemanforderungen und unterstützte Software
Systemanforderungen und unterstützte Software 1. Systemanforderungen für Server Diese en gelten für den Betrieb von Sage 200 Extra Version 2015 per 01.04.2017. Die Übersicht beschreibt die für ein komfortables
Prozessbasiertes Qualitätsmanagement 200 Fragen und Antworten zum Selbststudium
QUALITY-APPS Applikationen für das Qualitätsmanagement Prozessbasiertes Qualitätsmanagement 200 Fragen und Antworten zum Selbststudium Autor: Prof. Dr. Jürgen P. Bläsing Das moderne Verständnis, wie ein
Microsoft.NET Framework & Component Object Model. ein Vortrag von Florian Steuber
Microsoft.NET Framework & Component Object Model ein Vortrag von Florian Steuber Übersicht I..NET Framework 1. Was ist das.net Framework? 2. Das.NET Execution Model 3. Sprachunabhängigkeit, CTS und CLS
Behutsame Modernisierung
Software Evolution mit Legacy Systemen Forum Forschungsförderung / ViSEK Trends im Software Engineering Software Evolution mit Legacy Systemen Behutsame Modernisierung Jan Wloka
Pflichtenheft. Elektronische Studentenakte. von Vladislava Nadova und Marcus Stuber. 1. Zielbestimmung Musskriterien...2
Pflichtenheft Elektronische Studentenakte von Vladislava Nadova und Marcus Stuber Inhaltsverzeichnis: 1. Zielbestimmung...2 1.1 Musskriterien...2 1.2 Wunschkriterien...2 1.3 Abgrenzungskriterien...3 2.
Systemvoraussetzungen
Systemvoraussetzungen Gültig ab Stotax Version 2017.2 Stand 07 / 2017 1 Online Nutzung... 2 1.1 Allgemeines... 2 1.2 Stotax SaaS... 2 2 Lokale Nutzung... 3 2.1 Allgemeines... 3 2.2 Einzelplatz... 4 2.2.1