150 likes | 317 Views
AQUA Focus on Testing. Patricio Merino Software Engineer June 2014. ADC. Overview. Objective of AQUA Technical aspects Core functionalities How to test AQUA Regression tests and test cases Futures goals. Objective of AQUA.
E N D
AQUAFocus on Testing Patricio Merino Software Engineer June 2014 ADC
ALMA Overview Objective of AQUA Technical aspects Core functionalities How to test AQUA Regression tests and test cases Futures goals
ALMA Objective of AQUA • AQUA (ALMA Quality Assurance software) is a Web Application that permits to deliver to the PI(Principal Investigator) a reliable final data product that has reached the desired control parameters outlined in the science goals, that is calibrated to the desired accuracy and free of calibration or imaging artifacts. • The QA process analysis will be based on a calibration plan that specifies which observations must be acquired and at which intervals in order to monitor system performance and environmental time evolution. • QA states: • QA0: At the time of data acquisition • QA1: Observatory-Task Quality Assurance • QA2: Data Reduction • QA3: Post Data Reduction
ALMA Objective of AQUA • AQUA (ALMA Quality Assurance software) is a Web Application that permits to deliver to the PI(Principal Investigator) a reliable final data product that has reached the desired control parameters outlined in the science goals, that is calibrated to the desired accuracy and free of calibration or imaging artifacts. • The QA process analysis will be based on a calibration plan that specifies which observations must be acquired and at which intervals in order to monitor system performance and environmental time evolution. • QA states: • QA0: At the time of data acquisition • QA1: Observatory-Task Quality Assurance • QA2: Data Reduction • QA3: Post Data Reduction
ALMA Technical AspectsDevelopment and Deployment • http://almascience.nao.ac.jp/documents-and-tools • AQUA uses CASA authentication • AQUA is a Web Interface • Developed in Java Server Pages + AJAX (JQuery) + Spring + Hibernate + Oracle Database • Deployed in Apache Tomcat 7
ALMA Technical AspectsTier Architecture: Three layers
ALMA Technical AspectsDatabase Schema
ALMA Core Functionalities The basic unit of a Report is the ObsUnitSet, which represents a scientific goal stated by the PI during Phase 1 (project creation and review). An ObsUnitSet will typically contain several executions of Sbs. For each execution QA0 and QA1 reports are generated by the AoDs using the information available at the time of the observations, which includes TelCal outputs and other monitoring data (weather, total power levels, Corr GUI outputs, etc). A given execution is only cleared for reduction if it has passed both QA0 and QA1. There will be only one QA2 report for the whole ObsUnitSet generated by DMG at the end of the data reduction process that also has to be cleared for the data products to be deliverable to the PI. The final report per ObsUnitSet delivered to the PI will be a concatenation of all the relevant QA0,QA1 reports per execution and the QA2 report. Comments on each stage of the QA process (with supporting images, if required) will be added to the Report.
ALMA Core Functionalities ObsUnitSet life-cycle
ALMA How to Test AQUA
ALMA How to Test AQUA
ALMA Regression Tests and Test Cases
ALMA Test Case Template
ALMA ICT-JIRA Test Data Flow
ALMA Future Goals • Automate the regression test executions • Automate the test case executions • Automate the creation of a report of tests oriented to testers and final users