Versie | Datum | Auteur | Paraaf | Review | Paraaf | Goedkeuring | Paraaf |
---|---|---|---|---|---|---|---|
1 | Carine Wesselius | Bennie Minnema | Harm Duel |
Inleiding
Een nieuwe release van de NWM-applicatie doorloopt de stappen van het OTAP-proces (Ontwikkeling, Test, Acceptatie en Productie). De FAT (Functionele AcceptatieTest) is een belangrijke stap in dit ontwikkelproces en markeert de overgang van OT naar AP-omgeving in een formele oplevering van een bepaalde release aan WVL. De FAT is een stap in een breder proces van kwaliteitsborging om ervoor te zorgen dat uiteindelijk resultaten van berekeningen als open data gepubliceerd kunnen worden. De stappen bestaan op hoofdlijnen uit:
1 Controle invoer: check op volledigheid en consistentie bij uitlevering van nieuwe datasets
2 Functionele acceptatietesten (FAT) bij oplevering: check op functionaliteit en plausibiliteit aan de hand van standaard testprotocollen
3 Testen bij installatie: controle op installatie (doorlopen workflows op alle rekenservers)
4 Gebruikers acceptatietesten: controle voor start berekeningen check op de workflow technisch en zijn resultaten plausibiliteit
5 Vinger-aan-de-pols tijdens berekeningen: monitoring en controles op steekproef tijdens het rekenproces (doel vroegtijdig signaleren van hickups en resultaten o.b.v. expert judgement i.s.m. project)
6 Controle van de uitkomsten: technische toets op volledigheid (datavalidatie)
In deze rapportage staan de testbevindingen die tijdens de FAT zijn uitgevoerd. Op basis van de FAT wordt door Rijkswaterstaat-WVL besloten om wel/niet over te gaan tot installatie van de applicatie op de acceptatieomgeving waar Rijkswaterstaat de GAT (Gebruikers AcceptatieTest) uitvoert. Na goedkeuring van de GAT kan de omgeving aan gebruikers worden vrijgegeven. In deze rapportage staan de testbevindingen voor release 2.1 (CONCEPTVERSIE 11 APRIL 2018). In de (test)sprint van 26 maart t/m 9 april 2018 zijn hiervoor testen uitgevoerd. Hierbij worden wijzigingen in het NWM getest. De wijzigingen staan hieronder beschreven onder 'doel en impact van release 2.1'. Op 9 april is release 2.1 opgeleverd inclusief deze testrapportage.
Deze testrapportage is gebaseerd op de indeling die in memo "Voorstel verbetering testprocedures NWM-zoetwater" (met kenmerk 11202205-004-ZWS-0001 d.d. 5 maart 2018) is beschreven.
Release 2.1: aangebrachte wijzigingen t.o.v. release 2.0
Bij release 2.0 is ook een FAT is uitgevoerd (zie Testbevindingen release 2.0.0.0). Ten opzichte van release 2.0 zijn in release 2.1 zijn de volgende wijzigingen gerealiseerd:
- Parallel rekenen met LHM; Om de doorlooptijd van een workflow te versnellen, is het mogelijk gemaakt om deze parallel door te rekenen. Hierbij is de desbetreffende workflow verdeeld over het aantal rekenservers (FSS-en) dat de gebruiker opgeeft. In juli 2017 is iMOD versie 4.0 gereleased, waarin een nieuwe oplossingsmethode voor MODFLOW is opgenomen, de ‘Parallel Krylov Solver’ (PKS). Deze versnellingsoptie is in LHM 3.3.0 getest. Met de nieuwe solver kunnen berekeningen parallel worden uitgevoerd op verschillende rekencores (iMODFLOW-MetaSWAP).
- Herstructurering van 'locatie datasets'; De locaties van LSM zijn ‘achter de schermen’ op een andere manier geordend, zodat het gemakkelijker is geworden om een dataset (uitvoerlocatie) voor een project toe te voegen. Hiermee is in november 2017 (o.b.v release 2.0) al een begin gemaakt. In release 2.1 zijn deze werkzaamheden afgerond en geïntegreerd in NWM-Zoetwater.
- Referentie2017; Als voorbereiding voor de nieuwe basisprognoses is voor LHM en LSMLT een nieuwe referentieschematisatie (situatie 2017) gemaakt, waardoor ook een update van het LTMLT model nodig was. Het NDB model is niet aangepast. In deze nieuwe schematisaties zijn enkele maatregelen geimplementeerd; zie rapport (Hunink, 2018), dat momenteel de conceptstatus heeft. Hierdoor veranderen de modelresultaten ten opzichte van de vorige situatie (Referentie 2015).
- Nieuwe deltascenario’s; Er zijn nieuwe deltascenario’s opgeleverd. Hierdoor veranderen de modelresultaten.
Op verzoek van WVL worden nog een paar last-minute wijzigingen doorgevoerd. Dit betreft:
- het mogelijk maken van het genereren van extra uitvoer tbv Agricom berekeningen (buiten NWM applicatie om) en
- vervanging van onderdelen in het onderdeel MetaSWAP (LHM), ivm nieuwe inzichten ten aanzien van gewasgroei.
Laatstgenoemde wijziging vraagt ook een update van Agricom, deze is in release 2.0 niet meegenomen. Agricom is (voorlopig) vanaf release 2.0 daarom geen onderdeel van de NWM-applicatie. De update van Agricom wordt na de FAT van release 2.1.0.0 doorgevoerd.
Verwachte impact van de aangebrachte wijzigingen
In deze rapportage staan de testbevindingen die tijdens de FAT zijn uitgevoerd. Op basis van de FAT wordt door Rijkswaterstaat-WVL besloten om wel/niet over te gaan tot installatie van de applicatie op de acceptatieomgeving waar Rijkswaterstaat- de GAT (Gebruikers AcceptatieTest) uitvoert. Na goedkeuring van de GAT kan de omgeving aan gebruikers worden vrijgegeven. In de onderstaande tabel wordt het type wijziging per aangebrachte wijziging uitgewerkt:
Tabel TR.01: Relatie van verandering tot type van verandering en de impact
Wijziging | Type wijziging | Mogelijke impact |
---|---|---|
LHM – parallel rekenen | Nieuwe rekensoftware | Andere resultaten |
Locatie dataset | Nieuwe dataset | Geen andere resultaten |
Referentie 2017 | Nieuwe schematisatie | Andere resultaten |
Deltascenario’s | Nieuwe datasets | Andere resultaten |
Omdat er nieuwe (Referentie 2017) schematisaties zijn, nieuwe datasets en ook de software gedeeltelijk vernieuwd is (parallel rekenen voor LHM), kan gesteld worden dat NWM-Zoetwater volledig vernieuwd is.
Samenstelling van het pakket aan standaardtesten
Op basis van het memo "Voorstel verbetering testprocedures NWM-zoetwater" is er een directe link gelegd tussen het 'type van verandering' in een release en de 'type testen' die uitgevoerd worden. Er zijn vijf 'typen van testen' gedefinieerd, te weten;
- technische testen die oa controleren of een modelschematisatie draait en binnen de gestelde rekentijd (T),
- testen op de correctheid van invoer (I),
- testen voor koppelingen (K),
- testen van de resultaten (R) en
- testen voor Export (E).
De letter tussen haakjes is onderdeel van het testnummer van de testprotocollen, waardoor het type van test voortaan eenvoudig te herkennen is. Voor release 2.1 zijn de reeds aanwezige testen ingedeeld in bovenstaande categorieën. Hieruit blijkt dat nog niet voor alle modellen alle categorieën gevuld zijn. Voor release 2.1 is met RWS-WVL afgesproken om het testen met alleen de aanwezige testen uit te voeren. Voor de categorieën die nog niet voldoende zijn gevuld, wordt in een later stadium een voorstel gedaan voor een geschikte test of deze worden gevuld door middel van release-specifieke testen.
Op basis van de requirements en de daarbij horende 'type van wijziging' is aan de hand van de tabel in paragraaf 4.1 van memo "Voorstel verbetering testprocedures NWM-zoetwater" een lijst van standaardtesten gegenereerd (op basis van de huidige testprotocollen).
De zes Deltascenario's zijn "Referentie2017", "2050 Rust2017","2050 Warm2017", "2050 Druk2017","2050 Stoom2017" en "2050 DrukParijs2017". In principe dienen voor al deze 6 Deltascenario’s alle testen opnieuw uitgevoerd te worden. Echter, voor release 2.1 is van de randvoorwaarde uitgegaan dat de testen binnen een tijdspanne van twee weken uitgevoerd moeten kunnen worden. Binnen het beschikbare tijdpad en budget is het niet haalbaar om alle testen voor alle 6 Deltascenario’s uit te voeren. Op basis van de in release 2.1 aangebrachte veranderingen is in overleg met de experts het volgende pakket van testen samengesteld en uitgevoerd:
Het voorgaande leidt tot het volgende voorstel voor de volgende testberekeningen in release 2.1:
- Voor alle zes Deltascenario's worden de jaren 1911 en 2011 doorgerekend voor het 'LHM zonder zout' model, om globaal te testen of alle Deltascenario's doorgerekend kunnen worden;
- Een doorstart voor het schrikkeljaar 1912 wordt voor een (willekeurig) scenario getest en hiervoor wordt "Referentie2017" en "2050 DrukParijs2017" genomen.
- De gehele modellentrein wordt getest voor het jaar 2003 voor de scenario's "Referentie2017" en "2050 DrukParijs2017".
Met dit pakket aan testen:
- zijn alle scenario’s getest voor de eerste stap in de modellentrein (namelijk LHM zonder zout) en
- is de gehele modellentrein doorlopen voor de nieuwe Referentie 2017.
- Bevat deze FAT ook een nieuwe test waarbinnen de 100-jarige meteo invoer is doorgerekend, namelijk het Gl-scenario dat in Rust of Druk zit.
- zijn de belangrijkste risico’s afgedekt.
De technische controles worden uitgevoerd voor de jaren 1911-1912 en 2011. Hier wordt alleen gekeken naar Het LHM model zonder zout (LHM-Z0). Gekozen is om alleen deze stap te controleren omdat dit model het eerste model is in de rekentrein en daarom het minste doorlooptijd vergt voordat deze sommen aangezet kunnen worden. LHM Z0 gebruikt dezelfde meteo- en hydrologische invoer als LHM, alleen de chloride randvoorwaarden verschillen.
De inhoudelijke controles zijn uitgevoerd voor het jaar 2003, omdat hiervoor de meeste kennis en metingen beschikbaar zijn. Voor het scenario 'Referentie 2017' is de gehele modellentrein doorlopen. Dit betekent dat testen zijn uitgevoerd voor 'LHM zonder zout', 'LSM Light zonder zout', het NDM model', 'LHM met zout' , 'LSM Light met zout' en 'LTL Light'. Samengevat, voor een tweetal scenario's (Referentie 2017 en Warm2017) en voor een bepaald jaar (2003) zijn alle modelschematisaties van de workflow getest.
Overzicht van de resultaten van het pakket aan standaardtesten
In onderstaande tabellen worden de standaardtesten weergegeven. Onderstaande legenda geeft verdere uitleg over de tabellen.Een meer gedetailleerde beschrijving van de uitgevoerde testen is beschreven in de bijlagen.
Legenda:
- : succesvol
- : succesvol na overleg met een inhoudelijk expert
- : niet succesvol
- niet uitgevoerd: de reden hiervoor staat beschreven in de bijlagen
- —: nog niet uitgevoerd
Tabel TR.02: Testen voor de jaren 1911 en 2011 voor alle zes Deltascenario's
Modelschematisatie | Testen | Beschrijving test | Ref2017 1911 | Warm 1911 | Rust 1911 | Stoom 1911 | Druk 1911 | DrukParijs 1911 |
---|---|---|---|---|---|---|---|---|
LHM zonder zout | ZW-LHM-T-01 | Uitvoeren workflow | ||||||
ZW-LHM-T-02 | Rekentijd |
Modelschematisatie | Testen | Beschrijving test | Ref2017 2011 | Warm 2011 | Rust 2011 | Stoom 2011 | Druk 2011 | DrukParijs 2011 |
---|---|---|---|---|---|---|---|---|
LHM zonder zout | ZW-LHM-T-01 | Uitvoeren workflow | ||||||
ZW-LHM-T-02 | Rekentijd |
Tabel TR.03: Testen voor het jaar 1912 voor Deltascenario Referentie2017
Modelschematisatie | Testen | Beschrijving test | Ref2017 1912 | DrukParijs 1912 |
---|---|---|---|---|
LHM Z0 | ZW-LHM-T-01 | Uitvoeren workflow | ||
ZW-LHM-T-02 | Rekentijd | |||
ZW-LHM-R-61 | Takdebieten | |||
LSMLT (zowel zonder als met zout) | ZW-LSMLT-T-01 ZW-LSMLT-T-03 ZW-LSMLT-I-03 | Uitvoeren workflow Doorlooptijd Debieten voor Monsin en Lobith | niet uitgevoerd | |
NDB | ZW-NDB-T-01 | Uitvoeren workflow | niet uitgevoerd | |
LTMLT | ZW-LTMLT-T-01 | Uitvoeren workflow | niet uitgevoerd |
Tabel TR.04: Testen voor het jaar 2003 voor Deltascenario's Referentie2017 en "2050 DrukParijs2017"
Modelschematisatie | Testen | Beschrijving test | Ref2017 2003 | DrukParijs 2003 |
---|---|---|---|---|
LHM-Z0 | ZW-LHM-T-01 | Uitvoeren Workflow | ||
ZW-LHM-T-02 | Rekentijd | |||
ZW-LHM-R-41 | HG3 resultaten | niet uitgevoerd | ||
ZW-LHM-R-45 | cum. verdampingsreductie testdata | niet uitgevoerd | ||
ZW-LHM-R-46 | DEM_WMTOTAL testdata | niet uitgevoerd | ||
ZW-LHM-R-47 | Afboer | niet uitgevoerd | ||
ZW-LHM-R-44 | Peilverloop IJsselmeer | |||
ZW-LHM-R-01 | DM zomer en winterpeil | niet uitgevoerd | ||
ZW-LHM-R-22 | Debiet Waal | |||
ZW-LHM-R-23 | Peilverloop IJsselmeer | niet uitgevoerd | ||
ZW-LHM-R-24 | WABES_capaciteit KWA-15 | |||
ZW-LHM-R-25 | WABES-Roode Vaart | |||
ZW-LHM-R-26 | Aggregatie 17 gebieden | |||
ZW-LHM-E-01 | Wegschrijven naar OpenDAP | niet uitgevoerd | ||
ZW-LHM-E-02 | Bestandsgrootte | niet uitgevoerd | ||
ZW-LHM-E-03 | Aanwezigheid bestanden | niet uitgevoerd | ||
ZW-LHM-E-04 | Controle log | niet uitgevoerd | ||
LSMLT-Z0 | ZW-LSMLT-T-01 | Uitvoeren workflow | ||
ZW-LSMLT-T-03 | Controle SOBEK versies | niet uitgevoerd | ||
ZW-LSMLT-I-01 | SOBEK invoer 2003 | niet uitgevoerd | ||
ZW-LSMLT-I-02 | Waterstanden en Afvoer 2003 | niet uitgevoerd | ||
ZW-LSMLT-R-01 | Waterstand Vredesbrug | niet uitgevoerd | ||
ZW-LSMLT-R-02 | Afvoeren grote rivieren | |||
ZW-LSMLT-E-01 | Wegschrijven naar OpenDAP | niet uitgevoerd | ||
ZW-LSMLT-E-02 | Bestandsgrootte | niet uitgevoerd | ||
ZW-LSMLT-E-03 | Export workflow | niet uitgevoerd | ||
NDB | ZW-NDB-T-01 | Uitvoeren workflow | ||
ZW-NDB-R-02 | Chlorideconcentratie Krimpen aan den IJssel | |||
ZW-NDB-R-03 | Chlorideconcentratie Bernisse | |||
ZW-NDB-R-04 | Chlorideconcentratie Bergambacht | |||
LHM | ZW-LHM-T-01 | Uitvoeren Workflow | ||
ZW-LHM-T-02 | Rekentijd | |||
ZW-LHM-R-41 | HG3 resultaten | niet uitgevoerd | ||
ZW-LHM-R-45 | cum. verdampingsreductie testdata | niet uitgevoerd | ||
ZW-LHM-R-46 | DEM_WMTOTAL testdata | niet uitgevoerd | ||
ZW-LHM-R-47 | Afvoer | niet uitgevoerd | ||
ZW-LHM-R-44 | Peilverloop IJsselmeer | |||
ZW-LHM-R-01 | DM zomer en winterpeil | niet uitgevoerd | ||
ZW-LHM-R-22 | Debiet Waal | |||
ZW-LHM-R-23 | Peilverloop IJsselmeer | niet uitgevoerd | ||
ZW-LHM-R-24 | WABES_capaciteit KWA-15 | |||
ZW-LHM-R-25 | WABES-Roode Vaart | |||
ZW-LHM-R-26 | Aggregatie 17 gebieden | |||
ZW-LHM-E-01 | Wegschrijven naar OpenDAP | |||
ZW-LHM-E-02 | Bestandsgrootte | |||
ZW-LHM-E-03 | Aanwezigheid bestanden | |||
ZW-LHM-E-04 | Controle log | |||
LSMLT | ZW-LSMLT-T-01 | Uitvoeren workflow | ||
ZW-LSMLT-T-03 | Controle SOBEK versies | niet uitgevoerd | ||
ZW-LSMLT-I-01 | SOBEK invoer 2003 | niet uitgevoerd | ||
ZW-LSMLT-I-02 | Waterstanden en Afvoer 2003 | niet uitgevoerd | ||
ZW-LSMLT-R-01 | Waterstand Vredesbrug | niet uitgevoerd | ||
ZW-LSMLT-R-02 | Afvoeren grote rivieren | |||
ZW-LSMLT-E-01 | Wegschrijven naar OpenDAP | |||
ZW-LSMLT-E-02 | Bestandsgrootte | |||
ZW-LSMLT-E-03 | Export workflow | |||
LTMLT | ZW-LTMLT-T-01 | Uitvoeren workflow | ||
ZW-LTMLT-T-02 | Aanpassen T0 | niet uitgevoerd | ||
ZW-LTMLT-R-01 | Watertemperatuur Roosteren | |||
ZW-LTMLT-R-02 | Watertemperatuur randen |
Samenstelling van het pakket aan release-specifieke testen
Naast de standaardtesten worden de volgende release-specifieke testen uitgevoerd. Deze testen worden in het "standaard" format uitgewerkt. Indien in de toekomst wijzigingen doorgevoerd worden die op de betreffende functionaliteit impact heeft kan deze test eenvoudig worden hergebruikt.
Voor de rekenperformance:
- Modelresultaten van een parallelle LHM-simulatie vergelijken met een sequentiële simulatie; Er zijn per definitie verschillen tussen een sequentiële en een parallelle simulatie, omdat een andere (iteratieve) methode toegepast wordt. Bij parallelle simulaties wordt er geïtereerd over de deeldomeinen. De verschillen in uitkomsten moeten zeer klein zijn (zie ook http://nhi.nu/nl/files/2615/1975/2224/11200573-000-BGS-0001-r-Veranderingsrapportage_LHM_3.3.0-nov_2017_-_aangepast_feb_2018_-_def.pdf).
- Vergelijken van doorlooptijden van een parallelle LHM-simulatie vergelijken met een sequentiële simulatie; De verhouding van deze doorlooptijden in relatie tot het aantal toegepaste cores geeft de parallelle efficiëntie aan. Voor de sequentiële simulatie staat de doorlooptijd vermeld in de Testwaarden Zoetwater.
Voor de locatie datasets:
- Test waarin een locatie wordt toegevoegd; Na toevoeging van een locatie aan het spreadsheet controleren of het aantal testlocaties met één is toegenomen. Check of de modelresultaten van de extra locatie zichtbaar zijn in de 'Interactive viewer' van NWM.
- Test waarin een locatie wordt verwijderd; Na verwijdering van een locatie uit het spreadsheet controleren of het aantal testlocaties met één is afgenomen.
Voor referentie 2017:
- Test van een van de maatregelen; Voor de maatregel Noordervaart is in het LSM Light gecontroleerd of de capaciteit is aangepast van 4.0 m3/s naar 5.4 m3/s..
Voor Deltascenario's:
- Resultaattesten; Over de deltascenario's is tijdens de sprint nog te weinig informatie. Tijdens het testen van de resultaten wordt extra overlegd met de experst om te zien of het beeld is zoals verwacht. Er zijn geen extra testen voor de deltascenario's gedefinieerd.
Overzicht van de resultaten van de release-specifieke testen
Tabel TR.05: Overzicht van release-specifieke testen
Modelschematisatie | Testen | Doel van test | Ref2017 2003 | DrukParijs 2003 |
---|---|---|---|---|
LHM | ZW-LHM-r2.1-1 | Check rekentijd parallel rekenen | ||
ZW-LHM-r2.1-2 | Modelresultaten onderling vergelijken | |||
LHM | ZW-LHM-r2.1-3 | Toevoegen van een locatie | ||
ZW-LHM-r2.1-4 | Verwijderen van een locatie | |||
LSM Light | ZW-LSMLT-r2.1-5 | Check maartregel Noordervaart |
Overzicht van opgeleverde data
In release 2.1 worden de volgende producten opgeleverd; zie ook de release notes:
- Software installatie voor NWM release 2.1
- Testrapportage inclusief testprotocollen
- Release notes
Conclusie
De testen zijn allemaal succesvol afgerond. Alleen de test over de bestandsgrootte van de export van het LSMLT model is gefaald. hiervoor staat nog een JIRA-Issue open ( NWM-995 - Getting issue details... STATUS ). Dit issue moet worden opgelost voor de officiele release.
Door de aanpassingen die aan de NWM-applicatie zijn gedaan is er veel inzet van een expert geweest om de resultaten te verifieren.Veel testen hebben daarmee het testoordeel "succesvol na overleg met een inhoudelijk expert".
Momenteel staat er -naast het bovengenoemde issue- nog 1 issue open, welke betrekking heeft op de database viewer (
NWM-994
-
Getting issue details...
STATUS
). Deze wordt in de backlog opgenomen.
Op verzoek van WVL worden nog een paar last-minute wijzigingen doorgevoerd. Dit betreft:
- het mogelijk maken van het genereren van extra uitvoer tbv Agricom berekeningen (buiten NWM applicatie om) en
- vervanging van onderdelen in het onderdeel MetaSWAP (LHM), ivm nieuwe inzichten ten aanzien van gewasgroei.
Laatstgenoemde wijziging vraagt ook een update van Agricom, deze is in release 2.0 niet meegenomen. Agricom is (voorlopig) vanaf release 2.0 daarom geen onderdeel van de NWM-applicatie. De update van Agricom wordt na de FAT van release 2.1.0.0 doorgevoerd.