SME-LET
Announcement ofOpportunities 2009:
Cal/Val and User
Services – Calvalus

Acceptance Test Plan
Version 1.2
31. October 2011

Prepared by
Norman FomferraCalvalus Acceptance Test PlanBrockmann Consult GmbH

Change Log
Version

Date

Revised by

ChangeAuthors

1.0

16.09.2011-

The initial version of this document.

N. Fomferra

1.1

10.10.2011

E. Kwiatkowska
O. FaberLevel 2 processing: Added another test casewith NetCDf as output format. Added anothertest case that uses QAA as IOP algorithm.

N. Fomferra
M. Zühlke

Matchup Analysis: Added better explanation
for good-pixel expression and good-record
expression.
Level 3 processing: Fixed spatial resolution to
be 9.29 km. Fixed averaging period to be 10
days.
Trend Analysis: Fixed compositing period to
32 days.
1.2

31.10.2011

E. Kwiatkowska

Explicitely naming the L2W processor version
to be used for the test (namely 1.3).
Added a description on how to change thecolour mapping in images displayed by
BEAM/VISAT.
Using new L3 image screenshot, the old one
had artefacts caused by an invalid water mask
used for the server-side processing.
Added some minor improvements and fixedsome typos.

ii

N. FomferraBrockmann Consult GmbHCalvalus Acceptance Test Plan

Table of Contents
1

2

3

Introduction ................................................................................................................................. - 1 1.1

Purpose and Scope .............................................................................................................. - 1 -1.2

Terms and Definitions ......................................................................................................... - 1 -1.3

Abbreviations ...................................................................................................................... - 2 -1.4

References ........................................................................................................................... - 3 -1.5

Document Overview ............................................................................................................ - 5 -Overview...................................................................................................................................... - 6 2.1

Calvalus Portal ..................................................................................................................... - 6 -2.2

Calvalus Command-line Tools ............................................................................................. - 6 -Acceptance Tests ......................................................................................................................... - 8 3.1

Acceptance Test Plan........................................................................................................... - 8 -3.2

Test Group 1– Web-Application Accessibility ..................................................................... - 8 -3.2.1

Feature Description ..................................................................................................... - 8 -3.2.2

Test 1.1 ........................................................................................................................ - 8 -3.3

Test Group 2– Common Components ................................................................................. - 9 -3.3.1

Feature Description ..................................................................................................... - 9 -3.3.2

Test 2.1 ...................................................................................................................... - 12 -3.3.3

Test 2.2 ...................................................................................................................... - 12 -3.3.4

Test 2.3 ...................................................................................................................... - 13 -3.3.5

Test 2.4 ...................................................................................................................... - 13 -3.3.6

Test 2.5 ...................................................................................................................... - 13 -3.4

Test Group 3 – Level-2 Processing (L2).............................................................................. - 14 -3.4.1

Feature Description ................................................................................................... - 14 -3.4.2

Realisation using Hadoop .......................................................................................... - 14 -3.4.3

Test 3.1 ...................................................................................................................... - 14 -3.4.4

Test 3.2 ...................................................................................................................... - 16 -3.5

Test Group 4 – Match-up Analysis (MA) ........................................................................... - 17 -3.5.1

Feature Description ................................................................................................... - 18 -3.5.2

Realisation in Hadoop................................................................................................ - 20 -3.5.3

Test 4.1 ...................................................................................................................... - 21 -3.5.4

Test 4.2 ...................................................................................................................... - 22 -3.6

Test Group 5 – Level-3 Processing (L3).............................................................................. - 23 -3.6.1

Feature Description ................................................................................................... - 23 -3.6.2

Realisation in Hadoop................................................................................................ - 24 -3.6.3

Test 5.1 ...................................................................................................................... - 24 -3.6.4

Test 5.2 ...................................................................................................................... - 26 iii

Calvalus Acceptance Test Plan

3.7

Brockmann Consult GmbH

Test Group 6 – Trend Analysis (TA) ................................................................................... - 28 -3.7.1

Feature Description ................................................................................................... - 28 -3.7.2

Realisation in Hadoop................................................................................................ - 28 -3.7.3

Test 6.1 ...................................................................................................................... - 28 -Annex ................................................................................................................................................. - 31 Annex A: CoastColour L2W Processor (version 1.3) ...................................................................... - 31 CoastColour L2W Output Product ............................................................................................. - 31 CoastColour L2W Parameters ................................................................................................... - 32 Annex B: Usage of the Command Line Tool cpt (version 0.3) ....................................................... - 34 -iv

Brockmann Consult GmbHCalvalus Acceptance Test Plan

1 Introduction
Calvalus is a technology study that investigates the use of Hadoop Map-Reduce massive parallel
processing on distributed data for the improvement of the cal/val cycle of processor development
and validation. It also supports the evaluation of the temporal stability of the instrument byprocessing large time series for trend analysis.

1.1 Purpose and Scope
This document describes the plan for the final acceptance test of the Calvalus system. It is adeliverable in the ESA project 22869/09/NL/VS. The acceptance test comprises end-to-end testing of
the system that has been implemented according to the user requirements baseline [AD 1] and thesystem technical specification [AD-3].
The focus is on a selected set of production scenarios that are typical for the cal/val cycle of
instrument and processor validation:

L1–to–L2 processing of satellite data including match-up analysis against in-situ data,

L1 –to–L2–to–L3 processing, including long-term trend analysis.

Typically, these scenarios are computationally expensive and time-consuming if large datasets areused. Calvalus addresses this challenge. Therefore the acceptance tests described in this document
provide the step-by-step procedures that demonstrate that the Calvalus system meets its initialchallenge. The technical approach is described in the technical specification. This document describes
how users interact with the system and what they have to expect in terms of processing performanceand of downloadable results.
The acceptance tests described in the following are referred to as end-to-end system tests. During
development of the Calvalus system, other types of extensive tests have been performed by thedevelopment team. The tests included unit-level testing on around 200 Java test cases, andintegration testing, where7 Java modules continuously pulled from a versioning system, werebuild,unit-level tested and integrated on a build server. These are not described here.

1.2 Terms and Definitions
The following terms describe concepts used in this document with a specific meaning. Though theterms may be common in the earth observation domain some of them may be used differently inother documents and contexts.
Term

Definition

Product Files

EO data used for both, input and output of a Processing Step. A product may
be represented by one or more physical files.

Product File Set

In this document, a product set denotes a named collection of references to
Product files.

Production Request

A request to the processing system to produce something. A production request
operates on one or more Product Sets and may produce a new Product Set.

Production Request
Template

An incomplete Production Request that users may use as prototype for new
processing requests, e.g. by altering single parameter values.

Production Job

The server-side process as a result of an accepted Production Request. The
production job therefore has a limited lifespan.

-1-

Calvalus Acceptance Test PlanBrockmann Consult GmbHTerm

Definition

Production Scenario

An operational end-to-end scenario implemented into the Calvalus system. The
core system contains production scenarios for L1-to-L2 Bulk Processing, L2to-L3 Bulk Processing, for a Match-up Analysis and Trend Analysis.

Production Step

A single step in a Production Scenario that usually operates on Product Sets.

Processing Step

An atomic transformation of an input into an output by a Processor that usuallyoperates on single Products.

Processor

An implementation of an algorithm that transforms an input into an
output.

1.3 Abbreviations
The following abbreviations are used within the document without repeated definition.
Abbrev.

Expansion

API

Application Programming Interface

BC

Brockmann Consult GmbH

BEAM

Basic ERS & Envisat (A)ATSR and Meris Toolbox

cal/valcalibration and validation

CCI

ESA Climate Change Initiative

CEOS

Committee on Earth Observation Satellites

CPU

Central Processing Unit

DEM

Digital Elevation Model

ECSS

European Cooperation for Space Standardization

EO

Earth Observation

ESA

European Space Agency

FRS

Full resolution swath

GAC

GKSS Atmospheric Correction

GAC QAAA QAA (see below) using as input the output of GAC

GPFGraph Processing Framework of BEAM

HDFS

Hadoop Distributed File System

I/O

Input/output

IOP

Inherent optical properties

L1, L2, L3

Level 1, Level 2, Level 3 data (CEOS classification)

LET-SME

Leading Edge Technology - Small and Medium-sized Enterprises

NASA

National Aeronautics and Space Administration

OBPG

Ocean Biology Processing Group

OGC

Open GIS Consortium

QAA

Quasi-Analytical Algorithm, see [RD-8]-2-

Brockmann Consult GmbH

Abbrev.

Expansion

RR

Reduced resolution

SoW

Statement of Work

UML

Unified Modelling Language

WPS

Web Processing Service OGC specification

Calvalus Acceptance Test Plan

1.4 References
The following documents are applicable to this document.
ID

Title

Issue

Date

[AD 1]

SME‐LET 2009 - CalVal and User Services, Offer A3067 in response toInvitation To Tender/AO‐1‐6037/09/F/VS, LET‐SME Announcementof opportunities 2009

1.0

15.09.2009[AD 2]

Cal/Val and User Services – Calvados Requirements Baseline, ESA
SME-LET AoO 2009, Brockmann Consult

1.2

30.06.2010[AD 3]

Cal/Val and User Services – Calvalus Technical Specification, ESA
SME-LET AoO 2009, Brockmann Consult

1.2

31.03.2011

Date

The following documents are referenced in this document.
ID

Title

Issue

[RD 1]

Fomferra, N.: The BEAM 3 Architecture;
http://www.brockmann-consult.de/beam/doc/BEAM-Architecture1.2.pdf

1.2[RD 2]

Brockmann, C., Fomferra, N., Peters, M., Zühlke, M., Regner, P.,
Doerffer, R.: A Programming Environment for Prototyping New
Algorithms for AATSR and MERIS – iBEAM; in: Proceedings of
ENVISAT Symposium 2007, ESRIN Frascati, Italy2007[RD 3]

Fomferra, N., Brockmann C. and Regner, P.: BEAM - the ENVISATMERIS and AATSR Toolbox; in: Proceedings of the MERIS-AATSR
Workshop 2005, ESRIN Frascati, Italy2005[RD 4]Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung: The
Google File System; in: 19th ACM Symposium on Operating Systems
Principles, Lake George, NY(http://labs.google.com/papers/gfs.html)

Oct. 2003[RD 5]

Jeffrey Dean and Sanjay Ghemawat: MapReduce: Simplified Data
Processing on Large Clusters; OSDI'04: Sixth Symposium on
Operating System Design and Implementation; San Francisco, CA(http://labs.google.com/papers/mapreduce.html)

Dec. 2004[RD 6]

Ariel Cary, Zhengguo Sun, Vagelis Hristidis, Naphtali Rishe:
Experiences on Processing Spatial Data with MapReduce; Lecture
Notes In Computer Science; Vol. 5566 - Proceedings of the 21stInternational Conference on Scientific and Statistical Database

2009

-3-

Calvalus Acceptance Test PlanBrockmann Consult GmbHManagement - New Orleans, LA, USA(http://users.cis.fiu.edu/~vagelis/publications/Spatial-MapReduceSSDBM2009.pdf)[RD 7]

R. Doerffer, H. Schiller: MERIS Lake Water Algorithm for BEAM andMERIS Regional Coastal and Lake Case 2 Water Project, Atmospheric
Correction ATBD; ESRIN Contract No. 20436

June 2008[RD 8]

Zhong Ping Lee, Kendall L. Carder, and Robert A. Arnone: Deriving
inherent optical properties from water color: A multiband quasianalytical algorithm for optically deep waters; APPLIED OPTICS,
Vol.41,No.27

20.09.2002[RD 9]

Bryan A. Franz, Sean W. Bailey, P. Jeremy Werdell, and Charles R.
McClain: Sensor-independent approach to the vicarious calibrationof satellite ocean color radiometry; APPLIED OPTICS Vol.46,No.22, 1

Aug. 2007[RD 10]Bryan Franz: Methods for Assessing the Quality and Consistency of
Ocean Color Products; NASA Goddard Space Flight Center, Ocean
Biology Processing Group
http://oceancolor.gsfc.nasa.gov/DOCS/methods/sensor_analysis_m
ethods.html

18.01.2005[RD 11]

Janet W. Campbell, John M. Blaisdell, Michael Darzi: Level-3 SeaWiFS
Data Products: Spatial and Temporal Binning Algorithms; SeaWiFS
Technical Report Series, NASA Technical Memorandum 104566, Vol.
32

Aug. 1995[RD 12]K. Barker et al: MERMAID: The MEris MAtchup In-situ Database;
ARGANS Limited(http://hermes.acri.fr/mermaid/doc/Barker-et-al2008_MERMAID.pdf)

2008[RD 13]

NASA OBPG: Ocean Color Level 3 Binned Products(http://oceancolor.gsfc.nasa.gov/DOCS/Ocean_Level3_Binned_Data_Products.pdf)[RD 14]

CoastColour web site (http://www.coastcolour.org/)[RD 15]ECSS-E-ST-40C ECSS Space Engineering - Software, European
Cooperation for Space Standardization, ESA-ESTEC, Noordwijk, The
Netherlands[RD 16]

Bryan Franz: OBPG l2gen User's Guide;(http://oceancolor.gsfc.nasa.gov/seadas/doc/l2gen/l2gen.html)[RD 17]Web site of the ESA Climate Change Initiative(http://earth.eo.esa.int/workshops/esa_cci/intro.html)[RD 18]C

06.03.2009

OGC Web Processing Service Specification(http://www.opengeospatial.org/standards/wps)

1.0

08.06.2007[RD 19]Case2R source code repository at https://github.com/bcdev/beammeris-case2

1.4.3

ongoing[RD 20]QAA source code repository at https://github.com/bcdev/beammeris-qaa

1.0.2

ongoing[RD 21]

BEAM user manual (http://www.brockmann-consult.de/beam)

4.8

ongoing-4-

Brockmann Consult GmbHCalvalus Acceptance Test Plan

[RD 22]

Sean W. Bailey, P. Jeremy Werdell: A multi-sensor approach for theon-orbit validation of ocean color satellite data products; Remote
Sensing of Environment 102 (2006) 12–23[RD 23]

DUE CoastColour Product User Guide,
http://www.coastcolour.org/documents/Coastcolour-PUG-v2.1.pdf

2.1

1.5 Document Overview
After this formal introduction
Chapter 2

introduces the user interfaces of the Calvalus software to be tested.

Chapter

provides a detailed description of the tests to be performed.

Annex Ais a description of the output product and processing parameters of the Ocean Colour
CoastColour L2W Level-2 processor.

Annex Bis a usage dump of the Calvalus command-line tool cpt.

-5-Calvalus Acceptance Test PlanBrockmann Consult GmbH

2 Overview
This chapter introduces the user interfaces of the Calvalus software that are going to be tested anddemonstrated, namely the Calvalus Portal and the a set of tool invoked from a Unix command line.

2.1 Calvalus Portal
The Calvalus portal is the main user interface to the Calvalus system. It is a simple, JavaScript-based
web application that lets users order and manage Calvalus productions and finally download the
produced results. The name portal is justified by the fact that it provides users a portal to the actual
processing system, the Hadoop cluster comprising 20 Unix machines (quad core, 8 GB) and 120 TB ofdata storage.
The Calvalus system currently hosts MERIS RR Level 1b data from 2002 to 2010. Using this data set,
users can order four different productions types:
1. L1 to L2 processing
2. L2 match-up analysis or point data extraction
3. L1 to L3 or L2 to L3 processing
4. L3 trend analysis
The following snapshot shows the main menu of the portal.

Figure 1: Main menu of the Calvalus portal

The input dataset is organised into product file sets which can be temporally and spatially filtered for
all types of productions before they are passed as input to the processing system. Temporal filters
are realised as date range or data list while the spatial filter is based on geographical regions. A
dedicated region manager is used manage build-in and also user defined regions.
After a production request has been submitted, users can observe, cancel, stage productions andfinally download the results of their productions.
At the time of this writing, the Calvalus Portal is compatible with most internet browsers. It has beendeveloped using the Google Web Toolkit 2.3 and has been tested with Firefox 6, Chrome 13 andInternet Explorer 9.
The version of the Calvalus Portal used for the tests in this document is 1.1 released as of 27.10.2011.

2.2 Calvalus Command-line Tools
The Calvalus software distribution package comprises a number of command line tools which havebeen developed in order to maintain and operate the Hadoop processing system. They are currently
not accessible by end-users, because they need to operate on a Unix computer with direct access to
the Hadoop cluster and HDFS file system.

-6-

Brockmann Consult GmbHCalvalus Acceptance Test Plan

The most important tool is cpt, the Calvalus production tool. A usage dump is provided in the Annex.
It is used for submitting production requests in form of XML files (OGC WPS Execute operation
request) from the command line and for installing/uninstalling versioned software bundles (such as
the Calvalus processing system, BEAM and BEAM processors) in the HDFS.
Other command line tools are used to install and distribute the Hadoop configuration and softwareto the cluster nodes and also to execute any Unix programs on the Hadoop cluster. The Unix
executables that have been used so far are l2gen (the OC Level-2 processor from NASA’s SeaDAS
software package), AMORGOS (MERIS geo-correction tool developed by ACRI) and childgen (aMERIS/AATSR subsetting tool developed by BC).
There is currently no user interface for the distributed processing of Unix executables other than via
the command-line. Thus there are no user-performed acceptance test for this type of tools otherthan a remote desktop demonstration on how these tools are operated.

-7-

Calvalus Acceptance Test PlanBrockmann Consult GmbH

3 Acceptance Tests
3.1 Acceptance Test Plan
The acceptance of the Calvalus system is based on the acceptance of the following test groups
performed in the order they are given here

Test Group 1 - Web-Application Accessibility

Test Group 2 - Common Components



Test Group 3 - Level-2 Processing (L2)

Test Group 4 - Match-up Analysis (MA)

Test Group 5 - Level-3 Processing (L3)

Test Group 6 - Trend Analysis (TA)

Test Group 7 - Production Management

Each test group is introduced by a feature description. For the test groups that cover the production
types L2, L3, MA, TA, a brief explanation is given for the production scenario realisation using theHadoop Map/Reduce programming model. A test group comprises one or more test cases. For eachtest, its aim and purpose are provided, the procedure to be followed by the user, and a description of
the expected behaviour and outputs.
In the descriptions of the procedure and the expectations, the words shall and should are underlined
in order to easily capture the conditions for a successful test. If a shall-condition is not fulfilled during
the test, the test is considered unsuccessful.
Note: At the time of this writing the web application performs an automatic logout after
120 minutes. An immediate login afterwards is possible.

3.2 Test Group 1– Web-Application Accessibility
3.2.1

Feature Description

The aim of this test group is simply verifying that the application is accessible using an Internet
browser and that users can log in. It is the precondition for all subsequent tests.
3.2.2

Test 1.1

3.2.2.1 Aim
Test that Calvalus portal web-application is up and running at a dedicated, publicly accessible
location and that users can sign in.
3.2.2.2 Set-up
Use Firefox 6, Chrome 13 or IE 9 with JavaScript enabled.

-8-

Brockmann Consult GmbHCalvalus Acceptance Test Plan

3.2.2.3 Procedure
1.

Point your browser tohttp://www.brockmannconsult.de/calvalus/. The Calvalus log-in
screen shall be shown in the browser.

2.

Type in your user credentials (given before
the tests are performed)

Figure 2: Login screen

3.2.2.4 Expected Results
You shall now be signed into the portal and facing the user interface of the Calvalus portal similar tothe screenshot below. Your user name should appear in the upper-right most corner. By clicking on
the About Calvalus link, a new browser window should open displaying some general project
information. By clicking on the tabs of the main menu bar the different portal pages shall appear.

Figure 3: Calvalus portal in Firefox 6

3.3 Test Group 2– Common Components
3.3.1

Feature Description

The aim of this group of tests is to demonstrate that common user interface components are used in
the Calvalus portal work, as expected. The common components are shared among four production
scenarios and they work in the same way. There are seven common components which are describedin the following tests.

-9-

Calvalus Acceptance Test PlanBrockmann Consult GmbH3.3.1.1 Input File Set
An input file set comprises a list of EO data product files that are identified by a file path that may
contain regular expressions (wildcards). A production scenario can only have a single file set as input.
The current file sets comprise MERIS RR for the years 2002 to 2010, and regional subsets for theSouth Pacific Gyre (SPG) and North Atlantic (NA) as used by the ESA Ocean Colour CCI project. Eachfile set also “knows” the date range of its contained data.

Figure 4: Input file set

Alternatively users can specify an input path in a text box. The common use is to specify the path ofan output of a previous production here. The path pattern is also a regular expression and may
contain the references to the settings in the temporal and spatial filters: the year, month and day${yyyy}, ${MM}, ${dd} and the name of the selected region using ${region}.
3.3.1.2 Spatial and Temporal File Filters
The files determined by the input file set can be further limited by specifying a temporal filter
comprising either a date range or a list of single days. Single days are very useful for testing L2 or L3
processing on a small subset of files before ordering a larger number of files, that may take sometime to process.

.
Figure 5: Temporal file filter

Figure 6: Spatial file filter

The spatial filter is used not only to filter out files but also to create spatial subsets of the input data
before further processing takes place. Users can define their own regions by using the region
manager (not part of the acceptance test).

- 10 -

Brockmann Consult GmbHCalvalus Acceptance Test Plan

3.3.1.3 Level-2 Processor and Parameters
The Calvalus system has been designed to be easily extended to new data processors developed
using the BEAM Graph Processing Framework [RD-2]. One or more compiled processors are packed
as Java archive files (JARs) in a Calvalus processor bundle and installed on the Hadoop cluster using
the Calvalus cpt command-line tool. The processors that are currently installed are shown in theLevel-2 Processor list.

Figure 7: Level-2 processor

Figure 8: Level-2 parameters

The text area Level-2 Parameters lets user specify the processor parameters used for a L2production. The default set of parameters is processor-dependent and read form the processor
bundle’s metadata.
Currently the Calvalus system uses various CoastColour processors comprising a radiometriccorrection and pixel classification (L1P), an atmospheric correction using neural networks (L2R), and a
L2 IOP retrieval using neural networks (L2W), which includes a parameter switch to perform the QAA
IOP retrieval. L2W comprises the L1P and L2R steps and also their outputs. A description of the L2W
output product and tits processing parameters is given in annex A.
Note: It is planned to also integrate other processors into the portal in the near future: For example
the NASA l2gen and ESA MEGS (ODESA) processors.
3.3.1.4 Output Parameters
The Level-2 and Level-3
processing production
types generate data
product files. The
output parameterscomponent is primarily
used to specify theoutput EO data fileFigure 9: Output parameters
format. Currently BEAMDIMAP, NetCDF and GeoTIFF are supported. Optionally users can specify an output directory, this isespecially useful if a result shall serve later as input to another production type. For example you
could perform a Level-2 processing into a dedicated directory. Then for Level-3 processing providethat directory as input path to the Level-3 processing. If left empty, a temporary output directory will
be used. Finally users can select whether they want to perform a staging immediately after theprocessing has finished. Staging is a process of copying and reformatting the output files to a useraccessible location.

- 11 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH3.3.1.5 Check Request and Order Production
All four production scenarios have two common buttons, namely Check Request and Order
Production located at bottom of each production tab.

Check Request is used to validate the production request, and if it is valid, display the production
request that will used to order a given production. Order Production will first validate the production
request and if it is valid, submit the order to the server.
3.3.1.6 Production Manager
As its name suggests,
the production
manager is used to
manage scheduled,running and completed
productions. Once a
production request is
submitted and theorder accepted by theCalvalus server, theproduction is given aunique ID and
Figure 10: Production manager
displayed in the
production table.
Accidently submitted productions can now be cancelled while in scheduled or running state.
Productions that are not used anymore can be selected and then deleted. The production request,that was used for the production can be displayed at any time by clicking on a row in Production
column.
3.3.2

Test 2.1

3.3.2.1 Aim
Test that the input file set selection component works as expected.
3.3.2.2 Procedure
1. Click on tab Level-2 Processing (or any other production tab). The list box called Input file set
shall not be empty.
2. Select different list entries. Their regular expression paths should be shown in the text field
below the check box named Use alternate input path.
3. Select different list entries. The file sets start and end dates should be displayed in the startdate / end date text boxes below the radio button No filter in the temporal time filter.
3.3.3

Test 2.2

3.3.3.1 Aim
Test that the temporal file filter component works as expected.

- 12 -

Brockmann Consult GmbHCalvalus Acceptance Test Plan

3.3.3.2 Procedure
1. Click on tab Level-2 Processing (or any other production tab).
2. In the component Temporal file filter, select By date range. Enter various dates, the numberof days displayed at the bottom of the component should change accordingly.
3. Select By date list. Add and remove dates, the number of days displayed at the bottom of thecomponent should change accordingly.
3.3.4

Test 2.3

3.3.4.1 Aim
Test that the spatial file filter component works as expected.
3.3.4.2 Procedure
1. Click on tab Level-2 Processing (or any other production tab).
2. In the component Spatial file filter, select By region.
3. Select various regions in the list box, regions in the map should be selected (and zoomed to)accordingly.
4. Select various regions in the map, regions in the list box should be selected accordingly.
3.3.5

Test 2.4

3.3.5.1 Aim
Test that the L2-processor components work as expected.
3.3.5.2 Procedure
1. Click on tab Level-2 Processing (or any other production tab). The list box in the Level-2
processor component must not be empty. It shall comprise at least the CoastColour
processors L1P, L2R and L2W version 1.3.
2. Select different list entries. Different default processor parameters shall be displayed in the
text area of the Level-2 Parameters component.
3. Select different list entries. Different processor descriptions should be displayed at thebottom of the processor list box.
3.3.6

Test 2.5

3.3.6.1 Aim
Test that the Check Request action validates the current production settings and if the settings arevalid, display the request parameters.
3.3.6.2 Procedure
1. Click on tab Level-2 Processing (or any other production tab).
2. Use the browser to scroll down to the end of the current page and click Check Request.
Depending on the current setting the action shall either show an error message or show theparameters of the current production.
3. You can easily cause an error if you select a time range that is out of the time range of theselected product set. Check Request shall show an error message.
- 13 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH

4. Fix the time range. Check Request shall now show the parameters of the current production.
3.4

Test Group 3 – Level-2 Processing (L2)

3.4.1

Feature Description

The production type Level-2 Processing (L2) allows user to process a (filtered) input file set using a
selected processor to an output product set. If a spatial (region) filter is applied, the input scenes are
first tailored to the given region geometry, thus the outputted product files is also a subset. The
result of the production is a zipped set of output files in a user selected EO data format (currently
BEAM-DIMAP, NetCDF, GeoTIFF), that can finally be downloaded by the user.
For the demonstration of the Calvalus system, the CoastColour L2W processor will be used. A
description of the L2W output product and its processing parameters is given in annex A.
Note: The current CoastColour L2W processor v1.3 runs only under BEAM 4.10 which will be releasedby the end of 2011. For this acceptance test, the CoastColour L2W processor v1.3 and BEAM 4.10SNAPSHOT are made available. L2W user documentation is provided in the CoastColour Product User
Guide [RD 7], see also http://www.coastcolour.org/documents/Coastcolour-PUG-v2.1.pdf.
3.4.2

Realisation using Hadoop

For each file in the (possibly filtered)
input product file set, the Calvalus
system will create a mapper task on a
dedicated node in the Hadoop cluster.
The Hadoop processing engine will try
to select the node according to the

L2 Processor
L1 FileL2 FileL2 Processor(Mapper
Task)
L1 FileL2 FileL2 Processor(Mapper
Task)
L1 FileL2 FileL2 Processor(Mapper
Task)
L1 FileL2 FileL2 Processor(Mapper
Task)
L1 FileL2 File(Mapper Task)

location of the data in the cluster so
Figure 11: Level-2 Processing using Hadoopthat the tasks will most probably work
data local. No reducer tasks are required for Level-2 processing. In its current configuration (20 nodes
cluster), and in the ideal case (no other tasks running), the Calvalus system can perform a L2processing of 20 files 20 times faster than in sequence on a single computer.
3.4.3

Test 3.1

3.4.3.1 Aim
Test that a Level-2 Processing can be ordered and the resulting production completes in a timely
manner.
3.4.3.2 Procedure
1. Click on tab Level-2 Processing.
2. From the list box Predefined file sets select MERIS RR L1b 2008
3. In the component Temporal Filter select By date list. Enter following entries 2008-06-01
2008-06-02 2008-06-03 (space separated)
4. In the component Spatial Filter select By region. Select region northsea.
5. In the component Level-2 Processor select MERIS CoastColour L2W v1.3.
6. In the component Level-2 Parameters leave the defaults.

- 14 -

Brockmann Consult GmbHCalvalus Acceptance Test Plan

7. In the component Output Parameters, make sure Directory is empty, File format is
BEAM-DIMAP and Perform staging step after successful production is on.
8. Press Check Request. The production request should be shown now. If not, please verify
that the settings are correct. If the settings are actually correct, you shall see theproduction request parameters now.
9. Press Order Production.
10. After a few seconds the Manage Productions tab should be automatically selected. If not,click it.
11. A new entry shall appear in the productions table.
3.4.3.3

Expected Result

The new entry in the production table under the Manage Productions tab shall look similar to thefollowing screenshot.

Figure 12: Level-2 production in progress

You should now see the processing status transit from SCHEDULED to RUNNING to COMPLETED.
After the processing completed production you should see the staging status transiting fromSCHEDULED to RUNNING to COMPLETED. The total processing time should not exceed 6 minutes andshall not take longer than 12 minutes. The production request will produce 7 ZIP-files that add up to
325 MB.
Note: It is a normal behaviour for the Level-2 processing that it progresses quickly first but then slows
down when it comes to the processing of the remaining files. The reason for this is, that the entire
production is only completed by the time when the last L2 task completes. And since every L1 input
file will be processed on a dedicated node in the cluster, the entire L2 production waits for the lasttask to finish.
The total staging time should not exceed 2 minutes and shall not take longer than 6 minutes. Your
production status shall now look similar to the following screenshot.

Figure 13: Level-2 production complete- 15 -

Calvalus Acceptance Test Plan

3.4.4

Brockmann Consult GmbH

Test 3.2

3.4.4.1 Aim
Test that Level-2 processing results can be downloaded and that the processing has been performed
correctly.
3.4.4.2 Set-up
You will need BEAM 4.9 for displaying the results of this and the following tests. If you don’t have it
installed please go to the BEAM home page in order to get BEAM 4.9 first.
Note: You may want to use the Unix tool wget (http://www.gnu.org/software/wget/) to download all
the produced Level-2 output files at once.
3.4.4.3 Procedure
1. Make sure the Manage Productions tab is selected.
2. Click the Download button in the Result column of the production table. A new window shallbe opened in your browser. It shall now show the outputs of the Level-2 processing. You shallbe able to download the listed ZIP files.
3. Download one or more files and unpack them on your local computer. Open the unpacked
files in BEAM VISAT and inspect their contents: The products shall contain all the L2W bands
and datasets as described in Annex A.
3.4.4.4 Expected Result
The following screenshot shows the resulting Level-2 files. You shall see a similar page in yourbrowser showing 7 zip files comprising around 325 MB.

The second file in the list (the 81 MB one) above shall look like the following in BEAM VISAT:- 16 -

Brockmann Consult GmbHCalvalus Acceptance Test Plan

In order to use the same colour palettes as in the screenshot shown above, do the following in VISAT:
1. Double-click a band in order to open an image view.
2. Open the Colour Manipulation tool window (if you can’t find it, click on the icon in the main
tool bar.
3. Click the import icon button and select the palette spectrum.cpd or spectrum_large.cpd.
Click Open.
4. Use the 95% icon button to adjust the value range to be colour-coded

3.4.5

Test 3.3

3.4.5.1 Aim
Test that Level-2 processing parameters can be changed and that retrieved results are different. In
this case we change the IOP retrieval algorithm of the CoastColour processor to use the QAA
algorithm [RD-8].
3.4.5.2 Procedure
The procedure is the same as in Test 3.1 with the exception of step 6: In the text area Processor
Parameters, scroll down the XML content until you reach the element<useQaaForIops>false</useQaaForIops>

and change its value to<useQaaForIops>true</useQaaForIops>

Then follow the procedure as described in Test 3.1 and 3.2 for downloading the results.

- 17 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH

3.4.5.3 Expected Result
The result shall be similar to the one of Test 3.2; the QAA algorithm may execute faster. The geophysical contents of the generated product will be more or less different from the ones in Test 3.2.

3.5 Test Group 4 – Match-up Analysis (MA)
3.5.1

Feature Description

The match-up analysis (MA) is a production scenario that compares reference point measurements,
such as in situ observations, with corresponding extracts from Level-1 or Level-2 data. The
measurement points are taken from a user-provided data table. A record in this table may not only
contain the geographical coordinate of a point but also any number of reference data (in-situ data, or
EO data) and measurement metadata such as the measurement time. For any variables contained in
the data table which can also be found in the Level-1 or Level-2 data products, the MA will generatescatter plots and provide a linear regression of how the reference data matches the data found in thedata products at given points. The following screenshot shows the MA parameters in the Calvalus
portal.
Matchups are not done on
single pixels but on macro
pixels that include neighbours
to the centre pixel that exactly
corresponds to the given
geographical point coordinate.
In the Calvalus implementationof the MA, the macro pixels
span 5 x 5 “normal” pixels or
more.
All pixels in the macro pixel arescreened and a list is generated
of values that are comparedagainst the reference
measurement data.
Figure 14: Match-up analysis parameters

The screening and the matchup strategy is based on the multi-sensor approach for the on-orbit
validation of ocean colour satellite data products as performed by the NASA OBPG for MODIS,
SeaWiFS, CZCS and MERIS ocean colour products [RD-22].
The inputs to the Calvalus implementation of the MA are

EO data product file (e.g. MERIS scene, full orbit swath)In-situ / reference data file comprising point records. A point record comprises the point’s
geographical latitude and longitude, a measurement time, and any number of otherattributes including reference variables, e.g. CHL in-situ measurements



Macro pixel sizeMaximum time difference between EO observation and point record- 18 -

Brockmann Consult GmbHCalvalus Acceptance Test Plan

Filtered mean coefficient FMC

Good-pixel expression and good-record expression.

The good-pixel expression is evaluated for each single pixel and is used to decide, if the pixel
contributes to the macro pixel. It is evaluated in the context of the current L2 product. So it cancomprise any band and flag names that are contained in the generated L2 output.
The good-record expression is evaluated in the context of the current record comprising all input
fields read from the in-situ data source and the extracted and aggregated macro pixels. Thus, thegood-record expression can contain references to all extracted variables and all their statisticalparameters. If the variable is <name>, then <name>.min, <name>.max, <name>.mean,<name>.sigma, <name>.cv, <name>.n are all valid references. In addition to the standard BEAM
maths expressions, the good-record expression also may contain the median function which has avariable arguments list: median(x1, x2, x3, ...).
3.5.1.1 Match-up Algorithm
In order to understand the effect of the various MA parameters, the MA procedure is described here:
For each EO data product:
If a region geometry is given and it does not intersect with the data products (swath, coverage) boundary: skip EO
data productFor all records in the in-situ / reference data file (a record contains geo. lat/lon point, time, and any number ofother attributes including reference variables, e.g. CHL in-situ measurements):
If a region of interest (ROI) is given and the current record point does not intersect the ROI’s geometry:skip record
Compute the EO data product’s pixel location at the record’s point
Compute the EO data product’s pixel time
If max. time difference > 0 and delta of pixel time and record time is > max. time difference: skip record
For all variables in the EO data product:
Extract n x n macro pixel area for all variables of the EO data product or, if a Level-2 processor
is specified, for all output variables of the data product process to Level-2
For all pixel positions (x,y) in the macro pixel, collect the variable’s value list:
If a variable value at (x,y) is NaN: skip pixel
If a good-pixel expression is given and it evaluates to FALSE: skip pixel
Collect value of variable
Compute intermediate statistics from value list: mean, sigma.
If filtered mean coefficient FMC is given and > 0:
For all collected variable values x:
If mean - FMC * sigma < x < mean + FMC * sigma: remove value from list
Compute final statistics from value list: min, max, mean, sigma, CV.
Create a new record by concatenating to the in-situ / reference data record, the pixel location, the pixel
time and all data product’s final variable statistics from value list: min, max, mean, sigma, CV.
If a good-record expression is given and it evaluates to FALSE for the new concatenated record: skip
record

3.5.1.2 In-situ / point data format
The MA production type currently can handle two types of point data format: BEAM placemark(XML) files and TAB separated, plain text, CSV files.

- 19 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH

The BEAM placemark files can easily be used to extract point data records from the Calvalus EO dataarchive. Users can create placemark files by using setting pins into images using BEAM VISAT andthen exporting the pins into a file.
Calvalus expects in-situ data to be provided as a CSV file. The following rules apply to valid in-situ CSV
files:


Empty lines and comment lines introduced by a ‘#’ character are ignored.

The first non-empty and non-commented line is the header line. It contains the TAB
separated names of the columns. The following names (all letter case insensitive) have a
special meaning:o‘LAT’ or ‘LATITUDE’ provide the geographical WGS-84 latitude of the measurement’s
point location. This column is mandatory, it must exist.

o‘LON’ or ‘LONG’or ‘LONGITUDE’ provide the geographical WGS-84 longitude of themeasurement’s point location. This column is mandatory, it must exist.

o‘TIME’ or ‘DATE’ provide the measurement’s data take time in the format ‘yyyy-MM-dd
hh:mm:ss’. This column is optional, however it must exist for applying the max. timedifference criterion.

oColumn names that are letter case-insensitive equal to a variable in a Level-2 output
product will create match-up pairs for which scatter plots and regression parameters arecomputed in the MA. Such columns are optional. If no such pair exists, the MA
degenerates to a simple point data extraction process.

All subsequent non-empty and non-comment lines are data records comprising values foreach column.

Values can be missing, in this case two separators follow each other. A missing numericalvalue can also be indicated using the token ‘NaN’ (not-a-number, again letter caseinsensitive).

3.5.2

Realisation in Hadoop

Similar to the L2
L2 Proc. &production type, theOutpRecs
L1 FileMatcher
L2 Proc. &OutpRecs
MA production
L1 File(Mapper
Task)
MA Output Gen.
Matcher
L2 Proc. &OutpRecs
L1 File(Mapper
Task)(Reducer Task)
Matcherscenario creates a
L2 Proc. &OutpRecs
L1 File(Mapper
Task)
Matcher
L2 Proc. &mapper task for each
L1 File(Mapper
Task)
OutpRecs
Matcherfile in the (possibly(Mapper Task)
filtered) input product
MA Report
file set on a dedicatedInp Recs
node in the
Figure 15: MA production type in Hadoop
Hadoop cluster.
The mapper task reads in the in-situ / point data records and creates output records using the L1
input file processed to L2. All output records are passed to a single Reducer task, which aggregates
the records, computes statistics and generates the plots. Again, the Hadoop processing engine will
try to select the node according to the location of the data in the cluster so that the tasks will mostprobably work data local. The Calvalus system can process a 1000 Level-1 input files in a few minutes,
because the L2 processing is only performed on sub-regions given by the point records and themacro pixel's size.
- 20 -

Brockmann Consult GmbH

3.5.3

Calvalus Acceptance Test Plan

Test 4.1

3.5.3.1 Aim
Make sure MA works with most parameters set to default values. The test matches NOMAD in-situ
data with two outputs of the current version of the CoastColour processor (conc_chl, Kd_490) using
MERIS RR data of May-July 2007 comprising 1490 full orbit files. The output comprises extracted data
records and scatter plots for matching reference and EO data variables.
3.5.3.2 Setup
The NOMAD in-situ data file is provided for the test. The following shows an extract of this file. It is aplain text file using TAB separators:
ID

LAT

LONG

SOURCETIME

CRUISE

CONC_CHL

KD_4901595-61.599-62.598

NOMAD

2000-02-22 13:30:00

amlr2000

0.283

0.044981596-61.45-62.299

NOMAD

2000-02-22 17:00:00

amlr2000

0.118

0.03131

1599

-61.3

-59.59NOMAD

2000-02-24 13:35:00

amlr2000

0.389

0.04595

1601-61.449

-58.3

NOMAD

2000-02-25 13:30:00

amlr2000

0.133221604-61.149-57.003

NOMAD

2000-02-27 18:00:00

amlr2000

0.08816

3.5.3.3 Procedure
1. Make sure the Match-up Analysis tab is selected.
2. From the list box Predefined file sets select MERIS RR L1b 2007
3. In the component Temporal Filter select By date range. Enter Start date 2007-05-01, andEnd date 2007-07-31
4. In the component Spatial Filter select No filter (global)
5. In the component L2-Processor select MERIS CoastColour L2W v1.3
6. In the component L2-Parameters leave defaults (for time being)
7. In the component Match-up Analysis Parameters you need to specify an in-situ file first.
Therefore, press Add button found below the list box In-situ and point data files. A dialog
shall pop-up prompting for a file to be uploaded. Browse the file NOMAD-conc_chl.txt thatcomes with the test data distribution. After pressing OK, the file shall appear in the list box.
Make sure, the new entry is selected.
8. Leave all MA parameters to their default values, except for Grouping column. Set this to
SOURCE, so that the name “NOMAD” will be used in the generated MA report.
9. Scroll to the end of the page and press the Check Request button. A dialog box shall appear
showing the production parameters .
10. Now press the Order Production button to submit the production request. After a few
seconds you shall be redirected to the Manage Productions tab of the portal. The
production progress can be observed now. You shall see the production state changing
from SCHEDULED to RUNNING and finally, after a few minutes, to COMPLETE. A Download
button shall appear by that time. After pressing it, the portal shall direct you to a personal
space from where the new, resulting report file (a ZIP) can be downloaded.
3.5.3.4 Expected Results
The MA should not take longer than 6 minutes and shall not exceed 12 minutes.
The output of the MA is a report comprising the following elements:- 21 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH

1. CSV file comprising of measurement from all pixel within the macro pixels
2. CSV file comprising aggregated values (mean and sigma) for each macro pixels
3. XML report with attached XSD file allowing for viewing the XML in a browser
4. scatter plot of reference versus satellite measurements for each matched variable (conc_chl,
Kd_490)The scatter plots shall look similar to the ones shown below:

3.5.4

Test 4.2

3.5.4.1 Aim
Similar to Test 4.1, except that the MA parameters are changed in order to constrain the generated
match-up records.
3.5.4.2 Procedure
Same as in Test 1, but in Step 8 set the Good-record expression to the value CONC_CHL < 40. Thisshould filter out all reference records whose in-situ reference value for chlorophyll A is below 40 mg
m-3.
3.5.4.3 Expected Results
Similar to Test 4.1, but with constrained output records. The scatter plots shall now look similar to
the following:- 22 -

Brockmann Consult GmbH

3.6

Test Group 5 – Level-3 Processing (L3)

3.6.1

Feature Description

Calvalus Acceptance Test Plan

The production type Level-3 Processing (L3) allows user to process a (filtered) input data product file
set using a selected Level-2 processor to one or more Level-3 data products. The result of the
production is a zipped set of output files in a user selected EO data format (currently BEAM-DIMAP,NetCDF, GeoTIFF), that can be downloaded by the user.
For the demonstration of the Calvalus system, the Level-2 processor for L3 is again the CoastColour
L2W processor (same as for L2 and MA). A description of the L2W output product and its processing
parameters is given in annex A.
Following, Level-3 Parameters need to be set up. The L3 production type can generate many L3
output variables at the same time. Users simply add a new variable using the Add button below thetable of variables. The list ofavailable variables is specific tothe selected L2 processor.
The pixels used for the L3
products must pass a test givenby the good-pixel expression. This
expression is a BEAM band maths
expression that may contain all
the bands and flags contained in
the L2 output products.
Figure 16: Level-3 parameters
The time range used for generating
the L3 output products is given by
the Temporal Filter selection (see chapter Common Components). The frequency L3 output files areproduced is determined by the parameter stepping period, e.g. every 30 days. The resulting numberof L3 products is the number days of the total time range divided by the number of days given by the
stepping period. The actual number of input product days that are used to produce each L3 output
file is given by the parameter compositing period, which must equal to or less than the stepping
period, e.g. 4-days, 8-days, monthlies.

The default spatial resolution is 9.28 km per output pixel resulting in a grid resolution of 4319 x 2190
pixels for global coverage Level-3 products. Finally the supersampling parameter can be used to- 23 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH

reduce or avoid the Moiré-effect which occurs in output images if the binning grid is only sparsely
filled by input pixels. This situation usually occurs if the spatial resolution used for the binning issimilar to the input pixel resolution. The supersampling subdivides every input (Level-2) pixel in n x nsuper sub pixels which all have the same values but different and unique geographical coordinates.
This way, an input pixel may be distributed to more than one adjacent bin cell.
The binning algorithm implemented in Calvalus is the same that is used by the NASA OBPG for
creating the SeaWiFS and MODIS ocean colour Level-3 products [RD-11].
3.6.2

Realisation in Hadoop

As for L2 and MA, the L3 production scenario creates a mapper task for each file in the (possibly
filtered) input product file set on a dedicated node in the Hadoop cluster. The mapper task reads inthe input product, processes it to Level-2 data, and according to the binning parameters, performs aspatial binning of the data. The output of the mapper are spatially aggregated bin cells. A number of
reducer tasks are then responsible for the temporal binning at the individual bin latitude ranges.
They get the spatially binned outputs from all the mappers, perform the temporal binning and output
bin cells for each bin latitude range. A special formatter task is used during the staging process to
L2 Proc. & Spat.
Spat.Bins
Binning
L2
Proc. & Spat.
Spat.Bins(Mapper
Task)
Binning
L2 Proc. & Spat.
Spat.Bins(Mapper
Task)
Binning
L2
Proc. & Spat.
Spat.Bins(Mapper
Task)
Binning
L2
Proc. & Spat.
L1 File(Mapper
Task)
Spat.Bins
Binning(Mapper Task)

L1 FileL1 FileL1 FileL1 FileL3 Temp. Binning
L3 Temp. Binning(Reducer Task)

Temp.Bins
Temp.Bins

L3 Formatting(Staging)

L3 File(s)Figure 17: L3 production type in Hadoop

collect all the latitude bin ranges parts and compile the final binned data product.
The Calvalus implementation of the OBPG binning algorithm is very efficient. The binning scheme is aperfect use case for the Hadoop map reduce programming model. Data locality is in most cases fully
exploited. Level-2 processing is performed on-the-fly, no intermediate files are written.
3.6.3

Test 5.1

3.6.3.1 Aim
Make sure L3 works with most parameters set to default values. The test will process MERIS RR
Level-1 data of 10 days in Summer 2010 to Level-2 ocean colour products and then create a binned
Level-3 product for the North Sea region.
3.6.3.2 Procedure
1. Click on the tab Level-3 Processing
2. Select the Input file set MERIS RR L1b 2002-2010
3. In the Temporal Filter component, select By date range, enter 2010-08-01 to 2010-08-10
4. Select By region in the Spatial Filter component, select northsea
5. In the component Level-2-Processor select MERIS CoastColour L2W v1.3
6. In the component Level-2-Parameters leave defaults- 24 -

Brockmann Consult GmbHCalvalus Acceptance Test Plan

7. In the component Level-3-Parameters add the variable conc_chl, leave default
parameterisation, namely aggregation method AVG, weight coefficient 1.0, fill value NaN.
8. Add another variable Kd_490, leave default parameterisation, namely aggregation method
AVG, weight coefficient 1.0, fill value NaN.
9. Leave Good-pixel expression !l2w_flags.INVALID
10. Leave stepping period 30, change compositing period to 10
11. Change spatial resolution to 3 km/pixel, target size should now be 1230 x 930 pixels.
12. Change supersampling to 3 pixels
13. Press the Check Request button. You should see the production request now.
14. Now press the Order Production button to submit the production request. After a few
seconds you shall be delegated to the Manage Productions tab of the portal. The production
progress can be observed now. You shall see the production state changing from SCHEDULED
to RUNNING and finally, after a few minutes, to COMPLETE. A Download button shall appear
by that time. After pressing it, the portal shall redirect you to a personal space from where
the new, resulting report file (a ZIP) can be downloaded.
3.6.3.3 Expected Results
The generation of the Level-3
product should be done after 6
minutes; it shall take no longer than
12 minutes. After pressing thedownload button you shall see thefollowing results in a new browser
window:
The file on the list should have about 10 MB after downloading and unpacking, and it shall look thefollowing after opening in BEAM VISAT:- 25 -

Calvalus Acceptance Test Plan

3.6.4

Brockmann Consult GmbH

Test 5.2

3.6.4.1 Aim
The goal of the second L3 production type test is the production of a single global 10-day Level-3
product. Around 150 full orbit MERIS RR products (82 GB) will be used and they will be processed toocean colour Level-2 and to Level-3 binned files.
3.6.4.2 Procedure
1. Click on the tab Level-3 Processing
2. Select the Input file set MERIS RR L1b 2002-2010
3. In the Temporal Filter component, select By range, enter 2008-05-01 to 2008-05-10
4. Select No filter (global) in the Spatial Filter component
5. In the component Level-2-Processor select MERIS CoastColour L2W v1.3
6. In the component Level-2-Parameters leave defaults
7. In the component Level-3-Parameters enter the same values as for Test 5.1, but change
spatial resolution to 9.28 km/pixel, target size shall now be 4320 x 2160 pixels.
8. Press the Check Request button. You should see the production request now.
9. Now press the Order Production button to submit the production request. It will now take awhile before you are redirected to the Manage Productions tab of the portal; but it should
not take longer than a minute.
- 26 -

Brockmann Consult GmbH

3.6.4.3

Calvalus Acceptance Test Plan

Expected Results

The Level-2 processor L2W usually requires 20 minutes to process a full orbit of MERIS RR L1b
product to L2. Ignoring computation time used for binning (negligible compared to L2 processing),
the 150 L1b files would take 50 h when processed in sequence. Calvalus should take no longer than
1.5 h and shall not exceed 3 h.
The output of the production shall be similar to the one of Test 5.1. The L3 output file is now 10
times larger (92 MB):

This is how the global L2W IOP L3 product shall look in BEAM VISAT:- 27 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH

3.7

Test Group 6 – Trend Analysis (TA)

3.7.1

Feature Description

The TA production type is used to create time-series of Level-3 data. It has therefore the same
parameters as the ones described in the previous chapter. However, the time range for a meaningful
analysis will be typically many months; and the compositing period is usually significantly smaller
than the stepping period. For example, the TA automatically performed by the OBPG for the SeaWiFS
and MODIS ocean colour products uses a
stepping period of 32 days and acompositing period of 4 days. The spatial
resolution is fixed to 9.28 km, thesupersampling fixed to 1.
In opposite to L3 production type, thetemporal bin cells for a compositing period
are all aggregated and averaged. So every
Figure 18: TA parameterscompositing period results in a single value
for each variable forming a time series over the entire time range of the analysis.
3.7.2

Realisation in Hadoop

The TA production type is implemented the same way as the L3 production type with the exceptionthat the temporal bin cells output by the reducer tasks are all averaged again. So every compositing
period results in a single value for each variable forming a time series over the entire time range ofthe analysis.
L2 Proc. & Spat.
Spat.Bins
Binning
L2
Proc. & Spat.
Spat.Bins(Mapper
Task)
Binning
L2 Proc. & Spat.
Spat.Bins
L1 File(Mapper
Task)
Binning
L2
Proc. & Spat.
Spat.Bins
L1 File(Mapper
Task)
Binning
L2
Proc. & Spat.
L1 File(Mapper
Task)
Spat.Bins
Binning(Mapper Task)

L1 FileL1 FileL2 Proc. & Spat.
Spat.Bins
L1 FileBinning
L2
Proc. & Spat.
Spat.Bins
L1 File(Mapper
Task)
Binning
L2
Proc. & Spat.
Spat.Bins(Mapper
Task)
L1 FileBinning
L2
Proc. & Spat.
Spat.Bins
L1 File(Mapper
Task)
Binning
L2
Proc. & Spat.
L1 File(Mapper
Task)
Spat.Bins
Binning(Mapper Task)

L3 Temp. Binning
L3 Temp. Binning(Reducer Task)

Temp.Bins
Temp.Bins

TA Formatting(Staging)
L3 Temp. Binning
L3 Temp. Binning(Reducer Task)

Temp.Bins
Temp.Bins

TA Report

Figure 19: TA production type in Hadoop

3.7.3

Test 6.1

3.7.3.1 Aim
Make sure TA works with most parameters set to default values. The test will perform a TA on 7
years of MERIS RR data for the South Pacific Gyre region as used by the ESA Ocean Colour CCI
project.

- 28 -

Brockmann Consult GmbHCalvalus Acceptance Test Plan

3.7.3.2 Procedure
1. Click on the tab Trend Analysis
2. Select the Input file set MERIS RR L1b 2002-2010
3. In the Temporal Filter component, select No filter
4. Select By region in the Spatial Filter component, select South_Pacific_Gyre (OC_cci)
5. In the component Level-2-Processor select MERIS CoastColour L2W version 1.3
6. In the component Level-2-Parameters leave defaults
7. In the component Level-3-Parameters add the variable conc_chl, leave default
parameterisation, namely aggregation method AVG, weight coefficient 1.0, fill value NaN.
8. Add another variable Kd_490 or tsm_conc, leave default parameterisation, namely
aggregation method AVG, weight coefficient 1.0, fill value NaN.
9. Change Good-pixel expression to !l2w_flags.INVALID && conc_chl < 100
10. Leave stepping period 32, and also compositing period to 4 resulting in 99 periods
11. Press the Check Request button. You should see the production request now.
12. Now press the Order Production button to submit the production request. In the Manage
Productions tab, you shall now be able to observe the production progress of the new TA
production.
3.7.3.3 Expected Results
The TA will compute 99 periods for
the South Pacific Gyre region andthus output 99 data points(including mean and sigma) for thegeophysical variables. The TAshould take no longer than 0.5 h
and shall not exceed 3 h. The
ouputs shall look similar to thefollowing screenshot on the right.
The following table shows
examples of the genareted plots.
You shall be able to look at thesame when opening therequest.html file that is generated
as part of the report.

- 29 -

Calvalus Acceptance Test Plan

- 30 -

Brockmann Consult GmbHBrockmann Consult GmbHCalvalus Acceptance Test Plan

Annex
Annex A: CoastColour L2W Processor (version 1.3)
CoastColour L2W Output Product
The following table lists L2W specific geophysical variables and datasets:
Name

Description

iop_a_pig_443

Absorption coefficient at 443 nm of phytoplankton pigments

iop_a_ys_443

Absorption coefficient at 443 nm of yellow substance

iop_bb_spm_443

Backscattering of suspended particulate matter at 443 nm

iop_a_total_443

Total absorption coefficient of all water constituents at 443 nm

K_min

Minimum down-welling irradiance attenuation coefficient

Kd_λ

Downwelling irradiance attenuation coefficient at λ, where λ is one of 412,
443, 490, 510, 560, 620, 664 and 680

turbidity

Turbidity in FNU (Formazine Nephelometric Unit)

Z90_max

Inverted value of k_min

conc_chl

Chlorophyll concentration (mg m-3).

conc_tsm

Total suspended matter dry weight (g m-3).
tsm_conc = tsmConversionFactor · b_tsmtsmConversionExponent

chiSquare

A low value in the product indicates a higher success in the retrieval andthat the conditions, which have led to the measured spectrum, are in(sufficient) agreement with the conditions and the bio-optical model used in
the simulations for training the neural network. A value above a thresholdof spectrumOutOfScopeThreshold (default is 4.0) triggers the out of training
range == out of scope flag.

l1_flags

Quality flags dataset from L1b productl1p_flags

CoastColour L1P pixel classification

l2r_flags

CoastColour L2R atmospheric correction quality flags

l2w_flags

CoastColour L2W water constituents and IOPs retrieval quality flags

The following table lists the flag coding for the l1p_flags dataset:
Bit# Name

Description

1

CC_LAND

Pixel masked as land

2

CC_COASTLINE

Pixel masked as coastline

3

CC_CLOUD

Pixel masked as cloud

4

CC_CLOUD_SPATIAL Pixel masked by spatial cloud filter

5

CC_CLOUD_BUFFER

Pixel masked as cloud buffer

6

CC_CLOUD_SHADOW

Pixel masked as cloud shadow- 31 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH

7

CC_SNOW_ICE

Pixel masked as snow/ice

8

CC_LANDRISK

Potential land pixel

9

CC_GLINTRISK

Risk that pixel is under glint

The following table lists the flag coding for the l2r_flags dataset:
Bit# Name

Description1-

Not used2

ATC_OOR

Atmospheric correction out of range

3

TOA_OORTOA reflectance out of range

4

TOSA_OOR TOSA reflectance out of range

5

SOLZEN

Large solar zenith angle

6

ANCIL

Missing/OOR auxiliary data

7

SUNGLINT High sun glint retrieved

8

INVALID

Invalid pixels

The following table lists the flag coding for the l2w_flags dataset:
Bit# Name

Description

1

WLR_OOR

Water leaving reflectance out of range

2

CONC_OOR

Water constituents out of range

3

OOTR

Spectrum out of training range

4

WHITECAPS Risk for white caps

8

INVALID

Invalid pixels

CoastColour L2W Parameters
The following table lists the available processor parameters of the L2W processor.
Parameter

Default Value

Description

doCalibration

true Whether to perform the calibration

doSmiletrue Whether to perform MERIS Smileeffect correction

doEqualization

true Perform removal of detector-todetector systematic radiometricdifferences in MERIS L1b data
products

brightTestWavelength

865 Wavelength of the band used by
the brightness test in the
CoastColour cloud screening

brightTestThreshold

0.03 Threshold used by the brightness
test in the CoastColour cloud- 32 -

Brockmann Consult GmbHCalvalus Acceptance Test Plan

screening
averageSalinity

35 The average salinity of the water inthe region to be processed

averageTemperature

15 The average temperature of thewater in the region to be processedcloudIceExpression

l1p_flags.CC_CLOUD The arithmetic expression used for|| cloud/ice detection
l1p_flags.CC_SNOW_ICE

landExpression

l1p_flags.CC_LAND The arithmetic expression used forland detection

outputReflec
landExpression
outputReflec
invalidPixelExpression

false Toggles the output of water leaving
radiance reflectancel1p_flags.CC_LAND The arithmetic expression used forland detection
false Toggles the output of water leaving
radiance reflectancel2r_flags.INVALID The arithmetic expression defining
pixels not considered for water
processing

useQaaForIops

false If enabled IOPs are computed by
QAA instead of Case-2-Regional.
Concentrations of chlorophyll andtotal suspended matter will bederived from the IOPs.

qaa.aLowerBound-0.02 The lower bound of the valid value
range of 'A'

qaa.aUpperBound

5.0 The upper bound of the valid value
range of 'A'

qaa.bbLowerBound-0.02 The lower bound of the valid value
range of 'BB'

qaa.bbUpperBound

5.0 The upper bound of the valid value
range of 'BB'

qaa.aphLowerBound-0.02 The lower bound of the valid value
range of 'APH'

qaa.aphUpperBound

3.0 The upper bound of the valid value
range of 'APH'

qaa.adgUpperBound

1.0 The upper bound of the valid value
range of 'ADG'. The lower bound isalways 0

qaa.divideByPI

true If selected the source remotereflectances are divided by PI- 33 -

Calvalus Acceptance Test PlanBrockmann Consult GmbH

Annex B: Usage of the Command Line Tool cpt (version 0.3)
usage: cpt [OPTION]... REQUESTThe Calvalus production tool submits a production REQUEST to a Calvalus
production system. REQUEST must be a plain text XML file conforming to the
WPS Execute operation request (seehttp://schemas.opengis.net/wps/1.0.0/wpsExecute_request.xsd). OPTION may
be one or more of the following:-e,--errors

Print full Java stack trace on exceptions.

-q,--quiet

Quiet mode, only minimum console output.

-c,--config <FILE>

The Calvalus configuration file (Javaproperties format). Defaults to'C:\Users\Norman\.calvalus\calvalus.config'.

-B,--beam <NAME>

The name of the BEAM software bundle used
for the production. Defaults to 'beam-4.10-SNAPSHOT'.

-C,--calvalus <NAME>

The name of the Calvalus software bundle--copy <FILES>

Copies FILES to '/calvalus/home/<user>'used for the production. Defaults to 'calvalus-0.3-201109'.
before any request is executed. Use character ';' to separate
paths in FILES.
--deploy <FILES-->BUNDLE>

Deploys FILES (usually JARs) to the
Calvalus BUNDLE before any request is executed. Use thecharacter string '-->' to separate list of FILES from BUNDLE
name. Use character ':' to separate multiple paths in FILES.

--install <BUNDLES>

Installs list of BUNDLES (directories,
ZIP-, or JAR-files) on Calvalus before any request is
executed. Use character ':' to separate multiple entries in
BUNDLES.

--uninstall <BUNDLES>

Uninstalls list of BUNDLES (directories orZIP-files) from Calvalus before any request is executed.
Use character ',' to separate multiple entries in BUNDLES.

--kill <PID>

Kills the production with given identifier PID.

--helpPrints out usage help.

- 34 -