Versie | Datum | Auteur | Paraaf | Review | Paraaf | Goedkeuring | Paraaf |
---|---|---|---|---|---|---|---|
1 | Carine Wesselius | Bennie Minnema | Harm Duel |
Inleiding
De ontwikkeling 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. 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.
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 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 beschreven bij de '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.
Doel en impact van release 2.1
Bij release 2.0 is ook een FAT is uitgevoerd (zie Testbevindingen release 2.0.0.0). In release 2.1 zijnde volgende requirements 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 en beschikbaar gesteld aan gebruikers. Met de nieuwe solver kunnen berekeningen parallel worden uitgevoerd op verschillende rekencores.
- 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 is besloten nog een paar last-minute wijzigingen door te voeren. Dit betreft:
- extra uitvoer tbv agricom berekeningen (buiten NWM applicatie om) en
- vervanging van onderdelen in het onderdeel metaswap (LHM), ivm nieuwe inzichten in verandering gewasgroei,
Dit 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 applicatie. De werkzaamheden worden na de FAT van release 2.1.0.0 doorgevoerd.
Beschrijving van het type van verandering
Bij de hierboven genoemde requirements hoort een bepaald 'type verandering' dat vervolgens tot mogelijke gevolgen leidt. In de memo "Voorstel verbetering testprocedures NWM-zoetwater" (met kenmerk 11202205-004-ZWS-0001 d.d. 5 maart 2018) is vervolgens een koppeling gelegd tussen het type verandering en de testen die uitgevoerd dienen te worden. In de onderstaande tabel word het type verandering per requirement uitgewerkt:
Tabel TR.01: Relatie van requirements tot type van verandering en de impact
Verandering | Type verandering | Mogelijke gevolgen |
---|---|---|
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 en ook de software gedeeltelijk vernieuwd is (parallel rekenen voor LHM), kan gesteld worden dat NWM-Zoetwater volledig vernieuwd is.
Onderbouwing keuze 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 categorien. Hieruit blijkt dat nog niet voor alle modellen alle categorien gevuld zijn. Voor release 2.1 is met RWS-WVL afgesproken om het testen met alleen de aanwezige testen uit te voeren. Voor de categorien 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 releasespecifieke 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 te gegenereerd (op basis van de huidige testprotocollen).
De zes Deltascenario's zijn "Referentie2017", "2050 Rust2017","2050 Warm2017", "2050 Druk2017","2050 Stoom2017" en "2050 DrukParijs2017". Dit betekent, in principe, dat alle testen opnieuw uitgevoerd zouden moeten worden. Voor release 2.1 is uitgegaan dat de testen binnen een tijdspanne van twee weken uitgevoerd moeten worden. Binnen het beschikbare tijdpad en budget is het niet haalbaar om alle testen te doen. Op basis van de veranderingen is in overleg met de experts zijn de volgende testen uitgevoerd. Met dit pakket aan testen zijn de belangrijkste risico’s afgedekt door alle scenario’s te testen voor de eerste stap in de modellentrein (namelijk LHM zonder zout) en is de gehele modellentrein doorlopen voor de Referentie 2017, die vernieuwd is. Ook is in deze FAT gekozen voor een scenario waarvoor de 100-jarige meteo invoer nog niet eerder is doorgerekend te testen, namelijk het Gl-scenario dat in Rust of Druk zit.
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".
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 standaardtesten
In onderstaande tabellen worden de standaardtesten weergegeven. Onderstaande legenda geeft verdere uitleg over de tabellen.
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 |
Onderbouwing keuze release-specifieke testen
Naast de standaardtesten worden de volgende release-specifieke testen uitgevoerd. Deze testen worden in het "standaard" format worden uitgewerkt. Indien in de toekomst wijzigingen doorgevoerd worden die op deze 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 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 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
nog openstaande issues (in dit geval LHMR-R-24 en 25)