Alert.png The wiki is deprecated and due to be decommissioned by the end of September 2022.
The content is being migrated to other supports, new updates will be ignored and lost.
If needed you can get in touch with EGI SDIS team using operations @ egi.eu.

Difference between revisions of "EGI Quality Criteria Verification"

From EGIWiki
Jump to navigation Jump to search
 
(89 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{Tech menubar}}
{{Tech menubar}}
{{Tech QA submenu}}
{{SWProv menubar}}
{{TOC_right}}
{{TOC_right}}  


== Objective ==
== Objective ==
The main objective of the TSA2.3 is to verify the quality of the software provided by the TP before entering the SR phase and going to production. By doing so we prevent that software that might work enters into the SR and even goes into production but that doesn´t follow the quality criteria defined in TSA2.2. Some of the reasons for doing the verification before the software enters the stage rollout are:


- Check that the bugs reported in the previous release of the software have been corrected (work in collaboration with DMSU) by the TP.
The main objective of the TSA2.3 is to verify the quality of the software provided by the TP before entering the SR phase and going to production. By doing so we prevent that software that might work enters into the SR and even goes into production but that doesn´t follow the quality criteria defined in TSA2.2. Some of the reasons for doing the verification before the software enters the stage rollout are:


- Software can work well in the SR but might not have all the functionalities required
- Check that the bugs reported in the previous release of the software have been corrected (work in collaboration with DMSU) by the TP.


- Software might not be safe, well documented, or have the necessary installation rules or licenses
- Software can work well in the SR but might not have all the functionalities required


== The Verification Process (RT) ==
- Software might not be safe, well documented, or have the necessary installation rules or licenses
When a new product is available, the TP has to follow the [https://wiki.egi.eu/wiki/NSRW_IMPLEMENTATION_RT NSRW]. Once the software is correctly uploaded to the repository, the release enters into the verification phase. The requirements are that the TP has to provide all the necessary information to the verifier (QCV) so that the QCV can assess that the TP has tested in advance the quality of the software. Depending on the type of release, different actions will be taken by the QCV, Verification process has to be as follows:


* Verification team checks that the pre-conditions of the verification phase are met:
== The Verification Process  ==
** RT ticket is in state '''Open'''.
** The RolloutProgress is set to '''Unverified'''.
** CommunicationStatus is '''OK'''.
** Owner is set to '''nobody'''.


* If these conditions are reached then Verification process could be started.
When a new product is available, the TP has to follow the [[NSRW IMPLEMENTATION RT|NSRW]]. Once the software is correctly uploaded to the repository, the release enters into the verification phase. The requirements are that the TP has to provide all the necessary information to the verifier (QCV) so that the QCV can assess that the TP has tested in advance the quality of the software. Depending on the type of release, different actions will be taken by the QCV, Verification process is described in detail in the [[EGI Verifier Guideline]].  
* Verification team changes RolloutProgress to '''In Verification''' to start to work.
* First of all verifier must use an specific template for each product (see [https://documents.egi.eu/document/417 417] and [https://documents.egi.eu/document/418 418]).
* Template fields are filled for each test by the verification team:
** '''Accepted''': Yes, No or does not apply.
** '''Tested''': By TP or VLD (Validation Team).


* QC Tests are:
== QC Verification Reports  ==
** '''Mandatory''': The release is rejected if fails one or more of these tests.
** '''Optional''': These tests are not critical and the release could be verified even if it's failing.


* When the report is finished a new Executive Summary is created:
RT workflow and Verification Templates links are available in this page. First of all verifiers must check QC service mapping to know which test must be verified for each product. This service mapping is available here [https://documents.egi.eu/document/418 QC Verification service mapping] and Verification/Executive Summary templates are available here: [https://documents.egi.eu/document/417 QC Verification Templates].  
** Includes a summary of tests failed and passed (Critical and non critical).
** A list of comments for SR team.


* A new space into documentDB is created to store:
Verifiers must fill all required fields for each product and write a Verification process summary into Executive Summary, this summary should include:
** Release Verification Report.
** Release Executive Summary.


* The documentDB link is used to set QualityCriteriaVerificationReport for each ticket.
*A short summary of the installation and configuration process: Installation and configuration were successful?, If not explain any issue or bug found. If the product was rejected explain why.
** DocumentDB space status must be set to FINAL.
*If its necessary Verifiers should include a comment for StageRollout: Configuration changes or minor issues found verifying the product.  
** DocumentDB space view must be set to public.
*If a new QC is necessary and is not included, Verifiers must write a comment to SA2.2 to change current QC.


* If these conditions are reached then Verification Process is done!.
<br>
* And the Verification Team changes RolloutProgress to “StageRollout”.


[[Verification Templates are updated if a new UMD Quality Criteria is released. (textiles)|Verification Templates are updated if a new UMD Quality Criteria is released.]]
== UMD Release Candidate Testing  ==
== Documents ==


{| class="wikitable sortablestyle="border:1px solid black" cellspacing="0" cellpadding="3" border="1"
Before each UMD release the verification team checks the new RC. To perform this task SA2.3 VMs have included the [https://github.com/alvarosimon/RC_tester RC_testing script]. This script is available after each SA2 VM instantiation (into /root/configuration_templates/tools directory). This script is able to detect any package inconsistency after UMD RC repo configuration. The RC testing process is as follows:
|- style="background:Lightgray"  align="left"
 
! DocDB link
*Verifier should instantiate different Linux flavours VM. For UMD case SL5, SL6 and debian.
! Expected Release Date
*Install UMD RC repo files from UMDx RC page.
! More information
*Check RC_tester "PRODUCTS" array. '''This array must be updated to include all UMD products!'''
|-  
*It is recommended to use ''screen'' program before RC_tester execution. RC tests take about 2h/3h to finish (depends on OS used and the number of products).
| [https://documents.egi.eu/public/ShowDocument?docid=240 240]
*Run ''RC_tester'' and follows its instructions.
| 10. 02. 2011
*''RC_tester'' generates several logs into log directory, after its execution SA2 verifier should check:
**''installator_OK.log'': List of metapackages installed correctly.
**''installator_ERROR.log'': List of metapackages which contain any issue.
**''&lt;PRODUCT_NAME&gt;_OUTPUT.log'': Complete Product installation log.
**''&lt;PRODUCT_NAME&gt;_postupdate.log'': Info about product update execution. It detects any issue updating current UMD products.
 
<br>
 
== Verification Work Effort Metrics  ==
 
Each verification process and change is registered by EGI RT. A complete report is generated on a daily basis each midnight. The XLS file can be downloaded from here [https://rt.egi.eu/rt/SA2/sa2-sw-rel-verification-metrics.xls SA2 Verification Metrics]
 
<br>
 
== Verification Team ==
 
Verifiers team is updated for each UMD release and it is available here: [https://documents.egi.eu/document/514 SA2.3 Verifiers List]. All verifiers are included in the [https://www.egi.eu/sso/groupView/sw-rel-qc SSO sw-rel-qc group] that includes a mailing list and permissions to modify RT tickets related with the verification process.
 
== Reference Documents  ==
 
{| border="1" cellspacing="0" cellpadding="3" style="border: 1px solid black;" class="wikitable sortable"
|- align="left" style="background: none repeat scroll 0% 0% Lightgray;"
! DocDB link  
! Release Date  
! Document
|-
| [http://egi-qc.github.io/ QCv6]
| 10 2013
| UMD Quality Criteria
|-
| [https://documents.egi.eu/document/1700 QCv5]  
| 08. 05. 2013
| UMD Quality Criteria
| UMD Quality Criteria
|-
|-
| [https://documents.egi.eu/document/418 418]
| [https://documents.egi.eu/document/418 418]  
| 10. 03. 2011
| 08. 05. 2013
| EMI service mapping
| UMD Products service mapping
|-
|-
| [https://documents.egi.eu/document/417 417]
| [https://documents.egi.eu/document/417 417]  
| 10. 03. 2011
| 08. 05. 2013
| QC Verification Templates
| QC Verification Templates
|}
|}


== Metrics  ==
{| border="1" cellspacing="0" cellpadding="3" style="border: 1px solid black;" class="wikitable sortable"
|- align="left" style="background: none repeat scroll 0% 0% Lightgray;"
! Metric
! Description
|-
| M.SA2.4
| Number of new releases validated against defined criteria: Measures the workload on the validation team.
|-
| M.SA2.5
| Mean time taken to validate a releas: Indicates how responsive the team is to validating releases.
|-
| M.SA2.6
| Number of releases failing validation: Indicates the quality assurance process of the software providers.
|}
== SLAs  ==


== Verified Products ==
EGI SLAs negotiated with the TPs


{| class="wikitable sortable" style="border:1px solid black" cellspacing="0" cellpadding="3" border="1"
[https://documents.egi.eu/document/461 EMI-EGI SLA]
|- style="background:Lightgray" align="left"
 
! DocDB link
== Verification engineer skill matrix ==
! Verification Date
 
! More information
{| border="1" class="wikitable" style="text-align: center;"
|-  
|+ Verification Cheat Sheet
| [https://rt.egi.eu/rt/Ticket/Display.html?id=460 460]
| -
| CA update, version 1.37-1
|-
|-
| [https://rt.egi.eu/rt/Ticket/Display.html?id=1125 1125]
! width="200" align="left" | Product\Institute
| -
! width="75" | CESGA
| CA update, version 1.38-1
! width="75" | IFCA
! width="75" | IFIC
! width="75" | INFN
! width="75" | IN2P3
! width="75" | JÜLICH
! width="75" | LIP
! width="75" | LRZ
! width="75" | UTC-N
! width="75" | CSC
! width="75" | GRNET
! width="75" | RAL
! width="75" | FZU
! width="300" style="background: none repeat scroll 0% 0% Gray;" | COMMENTS
|-
|-
| [https://rt.egi.eu/rt/Ticket/Display.html?id=490 490]
! align="left" | EMI ARC CE
| -
|
| SAM Update-6
|
|
|
|
|
| *
|
|
| *
|
|  
|  
|  
|-
|-
| [https://rt.egi.eu/rt/Ticket/Display.html?id=626 626]
! align="left" | EMI ARC compute cli
| -
|
| SAM Update-7
|
|
|
|
|
| *
|
|
| *
|
|  
|  
|  
|-
|-
| [https://rt.egi.eu/rt/Ticket/Display.html?id=1281 1281]
! align="left" | EMI ARC Infosys
| -
|
| SAM Update-9
|
|
|
|
|
| *
|
|
| *
|
|
|
|
|-
! align="left" | EMI dCache
|
|
|
|
|
|
|
|
|
|
| *
|
|
|
|-
! align="left" | EMI gLite MPI
| *
| *
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI CREAM_torque
| *
| *
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI CREAM_lsf
|
|
|
| *
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI EMIR
|
|
|
|
|
|
| *
|
|
|
|
|
| *
|
|-
! align="left" | EMI WMS
| *
|
| *
|
|
|
|
|
|
|
| *
|
|
|
|-
! align="left" | EMI LB
| *
|
| *
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI FTS
|
|
|
|
|
|
|
|
|
|
|
| *
|
|
|-
! align="left" | EMI DPM
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI LFC_mySQL
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI LFC_Oracle
|
|
|
|  
| *
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI StoRM
|
| *
|
|
|
|
| *
|
|
|
|
|
|
|
|-
! align="left" | EMI APEL
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI DGAS
|
|
|
| *
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI BDII
|
|
|
|
|
|
| *
|
|
|
|
|
|
|
|-
! align="left" | EMI UI
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI PX
|
|
|
|
|
|
| *
|
|
|
|
|
|
|
|-
! align="left" | EMI VOMS_mySQL
|
|
|
|
|
|
| *
|
|
|
| *
|
|
|
|-
! align="left" style="background: none repeat scroll 0% 0% Red;" | EMI VOMS_Oracle
|
|
|
|
|
|
|
|
|
|
|
|
|
| No verifiers available yet. Oracle training required.
|-
! align="left" style="background: none repeat scroll 0% 0% Red;" | EMI HYDRA
|
|
|
|
|
|
|
|
|
|
|
|
|
| No verifiers available yet.
|-
! align="left" style="background: none repeat scroll 0% 0% Red;" | EMI Wnodes
|
|
|
|
|
|
|
|
|
|
|
|
|
| No verifiers available yet.
|-
! align="left" style="background: none repeat scroll 0% 0% Red;" | EMI NAGIOS
|
|  
|
|
|
|
|
|
|
|
|
|
|
| No verifiers available yet.
|-
! align="left" style="background: none repeat scroll 0% 0% Red;" | EMI Pseudonymity
|
|
|
|
|
|
|
|
|
|
|
|
|
| No verifiers available yet.
|-
! align="left" | EMI ARGUS
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | EMI UNICORE TSI
|
|
|
|
|
| *
|
|
|
|
|
|
|
|
|-
! align="left" | EMI UNICORE WS
|
|
|
|
|
| *
|
|
|
|
|
|
|
|
|-
! align="left" | EMI UNICORE Client
|
|
|
|
|
| *
|
|
|
|
|
|
|
|
|-
! align="left" | EMI UNICORE Registry
|
|
|
|
|
| *
|
|
|
|
|
|
|
|
|-
! align="left" | EMI UNICORE Gateway
|
|
|
|
|
| *
|
|
|
|
|
|
|
|
|-
! align="left" | EMI UNICORE Hila
|
|
|
|
|
| *
|
|
|
|
|
|
|
|
|-
! align="left" | EMI UNICORE xuudb
|
|
|
|
|
| *
|
|
|
|
|
|
|
|
|-
! align="left" | EMI UNICORE Uvos
|
|
|
|
|
| *
|
|
|
|
|
|
|
|
|-
! align="left" | EMI AMGA
|
|
|
| *
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | IGE SAGA-SD
|
|
|
|
|
|
|
|
| *
|
|
|
|
| No verifiers available yet.
|-
! align="left" | IGE GRAM5
|
| *
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | IGE GSISSH
|
| *
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | IGE GridFTP
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | IGE myProxy
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | IGE RLS
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | IGE GridWay
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | IGE SAM  
|
|
|
|
|
|
|
|
| *
|
|
|
|
|
|-
! align="left" | IGE OGSA-DAI
|
|
|
|
|
|
|
|
| *
|
|
|
|
|
|-
! align="left" | IGE Security
| *
|
|
|
|
|
|
|
|
|
|
|
|
|
|-
! align="left" | IGE Gridsafe
|
|
|
|
|
|
|
| *
|
|
|
|
|
|
|}
|}
<br>
[https://www.egi.eu/earlyAdopters/table Early Adopters list]
[https://www.egi.eu/earlyAdopters/teams Early Adopters per UMD product]

Latest revision as of 19:51, 9 December 2014

Technology Software Component Delivery Software Provisioning UMD Middleware Cloud Middleware Distribution Containers Distribution Technology Glossary


Software Provisioning menu: Software Provisioning Process UMD Release Process Quality Assurance UMD Staged Rollout




Objective

The main objective of the TSA2.3 is to verify the quality of the software provided by the TP before entering the SR phase and going to production. By doing so we prevent that software that might work enters into the SR and even goes into production but that doesn´t follow the quality criteria defined in TSA2.2. Some of the reasons for doing the verification before the software enters the stage rollout are:

- Check that the bugs reported in the previous release of the software have been corrected (work in collaboration with DMSU) by the TP.

- Software can work well in the SR but might not have all the functionalities required

- Software might not be safe, well documented, or have the necessary installation rules or licenses

The Verification Process

When a new product is available, the TP has to follow the NSRW. Once the software is correctly uploaded to the repository, the release enters into the verification phase. The requirements are that the TP has to provide all the necessary information to the verifier (QCV) so that the QCV can assess that the TP has tested in advance the quality of the software. Depending on the type of release, different actions will be taken by the QCV, Verification process is described in detail in the EGI Verifier Guideline.

QC Verification Reports

RT workflow and Verification Templates links are available in this page. First of all verifiers must check QC service mapping to know which test must be verified for each product. This service mapping is available here QC Verification service mapping and Verification/Executive Summary templates are available here: QC Verification Templates.

Verifiers must fill all required fields for each product and write a Verification process summary into Executive Summary, this summary should include:

  • A short summary of the installation and configuration process: Installation and configuration were successful?, If not explain any issue or bug found. If the product was rejected explain why.
  • If its necessary Verifiers should include a comment for StageRollout: Configuration changes or minor issues found verifying the product.
  • If a new QC is necessary and is not included, Verifiers must write a comment to SA2.2 to change current QC.


UMD Release Candidate Testing

Before each UMD release the verification team checks the new RC. To perform this task SA2.3 VMs have included the RC_testing script. This script is available after each SA2 VM instantiation (into /root/configuration_templates/tools directory). This script is able to detect any package inconsistency after UMD RC repo configuration. The RC testing process is as follows:

  • Verifier should instantiate different Linux flavours VM. For UMD case SL5, SL6 and debian.
  • Install UMD RC repo files from UMDx RC page.
  • Check RC_tester "PRODUCTS" array. This array must be updated to include all UMD products!
  • It is recommended to use screen program before RC_tester execution. RC tests take about 2h/3h to finish (depends on OS used and the number of products).
  • Run RC_tester and follows its instructions.
  • RC_tester generates several logs into log directory, after its execution SA2 verifier should check:
    • installator_OK.log: List of metapackages installed correctly.
    • installator_ERROR.log: List of metapackages which contain any issue.
    • <PRODUCT_NAME>_OUTPUT.log: Complete Product installation log.
    • <PRODUCT_NAME>_postupdate.log: Info about product update execution. It detects any issue updating current UMD products.


Verification Work Effort Metrics

Each verification process and change is registered by EGI RT. A complete report is generated on a daily basis each midnight. The XLS file can be downloaded from here SA2 Verification Metrics


Verification Team

Verifiers team is updated for each UMD release and it is available here: SA2.3 Verifiers List. All verifiers are included in the SSO sw-rel-qc group that includes a mailing list and permissions to modify RT tickets related with the verification process.

Reference Documents

DocDB link Release Date Document
QCv6 10 2013 UMD Quality Criteria
QCv5 08. 05. 2013 UMD Quality Criteria
418 08. 05. 2013 UMD Products service mapping
417 08. 05. 2013 QC Verification Templates

Metrics

Metric Description
M.SA2.4 Number of new releases validated against defined criteria: Measures the workload on the validation team.
M.SA2.5 Mean time taken to validate a releas: Indicates how responsive the team is to validating releases.
M.SA2.6 Number of releases failing validation: Indicates the quality assurance process of the software providers.

SLAs

EGI SLAs negotiated with the TPs

EMI-EGI SLA

Verification engineer skill matrix

Verification Cheat Sheet
Product\Institute CESGA IFCA IFIC INFN IN2P3 JÜLICH LIP LRZ UTC-N CSC GRNET RAL FZU COMMENTS
EMI ARC CE * *
EMI ARC compute cli * *
EMI ARC Infosys * *
EMI dCache *
EMI gLite MPI * *
EMI CREAM_torque * *
EMI CREAM_lsf *
EMI EMIR * *
EMI WMS * * *
EMI LB * *
EMI FTS *
EMI DPM *
EMI LFC_mySQL *
EMI LFC_Oracle *
EMI StoRM * *
EMI APEL *
EMI DGAS *
EMI BDII *
EMI UI *
EMI PX *
EMI VOMS_mySQL * *
EMI VOMS_Oracle No verifiers available yet. Oracle training required.
EMI HYDRA No verifiers available yet.
EMI Wnodes No verifiers available yet.
EMI NAGIOS No verifiers available yet.
EMI Pseudonymity No verifiers available yet.
EMI ARGUS *
EMI UNICORE TSI *
EMI UNICORE WS *
EMI UNICORE Client *
EMI UNICORE Registry *
EMI UNICORE Gateway *
EMI UNICORE Hila *
EMI UNICORE xuudb *
EMI UNICORE Uvos *
EMI AMGA *
IGE SAGA-SD * No verifiers available yet.
IGE GRAM5 *
IGE GSISSH *
IGE GridFTP *
IGE myProxy *
IGE RLS *
IGE GridWay *
IGE SAM *
IGE OGSA-DAI *
IGE Security *
IGE Gridsafe *


Early Adopters list

Early Adopters per UMD product