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 Release 2 EMI Review"

From EGIWiki
Jump to navigation Jump to search
m
Line 1: Line 1:
= EMI Review of the EGI QC Documents (Version 2) =
= EMI Review of the EGI QC Documents (Version 2) =


Original Document is available at https://twiki.cern.ch/twiki/bin/view/EMI/EmiEgiQcReviewV2
Original Document is available at https://twiki.cern.ch/twiki/bin/view/EMI/EmiEgiQcReviewV2  


== Review on the review ==
== Review on the review ==


=== Compute Capabilities Quality Criteria (Marco Cecchi) ===
=== Compute Capabilities Quality Criteria (Marco Cecchi) ===


=== JOBEXEC_IFACE_1 ===
=== JOBEXEC_IFACE_1 ===


  - "The test suite must include tests for all the documented functions." maybe EGI itself should define a
  - "The test suite must include tests for all the documented functions." maybe EGI itself should define a
Line 16: Line 16:
   - EMI-ES is not listed among the possible interfaces.
   - EMI-ES is not listed among the possible interfaces.


Comments:
Comments:  
* Working on exact API functionality to test.
* EMI-ES added as a possible interface (should be added to the UMD Roadmap too)
* Changed "exception" to "exception or error".


=== JOBEXEC_JOB_2 ===
*Working on exact API functionality to test.
*EMI-ES added as a possible interface (should be added to the UMD Roadmap too)
*Changed "exception" to "exception or error".
 
=== JOBEXEC_JOB_2 ===


  Typo: Non-empy -> Non empty
  Typo: Non-empy -> Non empty


Comments:
Comments:  
* Corrected type


=== JOBEXEC_JOB_3 ===
*Corrected type
 
=== JOBEXEC_JOB_3 ===


  Testing job cancellation involves different scenarios depending on where the job was found in the submission
  Testing job cancellation involves different scenarios depending on where the job was found in the submission
Line 34: Line 36:
  as: cancel a job when the job in state (submitted, waiting, scheduled, running, already cancelled, aborted, etc).
  as: cancel a job when the job in state (submitted, waiting, scheduled, running, already cancelled, aborted, etc).


Comments:
Comments:  
* More detail given for the tests, although no specific states given since not every system has the same ones. In the pass/fail criteria, added that is specially relevant to test when the job is running.
 
*More detail given for the tests, although no specific states given since not every system has the same ones. In the pass/fail criteria, added that is specially relevant to test when the job is running.


=== JOBEXEC_EXECMNGR_1 ===
=== JOBEXEC_EXECMNGR_1 ===


  I would add: check if the middleware requires to have outbound connectivity on the WN and check if  
  I would add: check if the middleware requires to have outbound connectivity on the WN and check if  
  the job requires an identity switch. These criteria should not be blocking, but should be well known.
  the job requires an identity switch. These criteria should not be blocking, but should be well known.


Comments:
Comments:  
* Added Inbound and Outbound connectivity
 
* The pass/fail criteria now specifies that the appliance may be accepted if modifications exist but only if they are documented.
*Added Inbound and Outbound connectivity  
*The pass/fail criteria now specifies that the appliance may be accepted if modifications exist but only if they are documented.


=== JOBEXEC_EXECMNGR_3 ===
=== JOBEXEC_EXECMNGR_3 ===


  A list of supported BS would be expected here, as for JOBEXEC_EXECMNGR_2.
  A list of supported BS would be expected here, as for JOBEXEC_EXECMNGR_2.


Comments:
Comments:  
* Added list as JOBEXEC_EXECMNGR_2


=== INTERACTIVE_JOB_1 ===
*Added list as JOBEXEC_EXECMNGR_2
 
=== INTERACTIVE_JOB_1 ===


  Providing interactive login to remote machine also involves specific configuration on the WN. That can only
  Providing interactive login to remote machine also involves specific configuration on the WN. That can only
Line 59: Line 64:
  virtual machine here. In any case, I'd relax the original statement into something like "provide
  virtual machine here. In any case, I'd relax the original statement into something like "provide
  interactive, shell-like access to a worker node". That could simply be done, for example, by redirecting
  interactive, shell-like access to a worker node". That could simply be done, for example, by redirecting
  stdin&out over a socket.
  stdin&out over a socket.


Comments:
Comments:  
* This Criterion is explicitly intended for interactive login (such as what gsissh provides). The case described by EMI can be considered as part of INTERACTIVE_JOB_4.


=== INTERACTIVE_JOB_3/INTERACTIVE_JOB_4 ===
*This Criterion is explicitly intended for interactive login (such as what gsissh provides). The case described by EMI can be considered as part of INTERACTIVE_JOB_4.
 
=== INTERACTIVE_JOB_3/INTERACTIVE_JOB_4 ===


  INTERACTIVE_JOB_4 encompasses what described in INTERACTIVE_JOB_3
  INTERACTIVE_JOB_4 encompasses what described in INTERACTIVE_JOB_3


Comments:
Comments:  
* This is intended. There might be middleware that only does one direction communication (INTERACTIVE_JOB_3) and we want to have a criterion for it.


=== JOBSCH_EXEC_1 ===
*This is intended. There might be middleware that only does one direction communication (INTERACTIVE_JOB_3) and we want to have a criterion for it.
 
=== JOBSCH_EXEC_1 ===


  EMI-ES is missing. In general, most of the above comments (JOBEXEC_IFACE_1, JOBEXEC_JOB_*)  
  EMI-ES is missing. In general, most of the above comments (JOBEXEC_IFACE_1, JOBEXEC_JOB_*)  
  apply to JOBSCH_EXEC_* items as well.
  apply to JOBSCH_EXEC_* items as well.


Comments:
Comments:  
* Added EMI-ES as a possible interface.
* Corrected JOBSCH_JOB_3 (Cancel of jobs)


=== JOBSCH_JOB_7 ===
*Added EMI-ES as a possible interface.
*Corrected JOBSCH_JOB_3 (Cancel of jobs)


Submission of collection should be limited to a determined maximun number of nodes.
=== JOBSCH_JOB_7  ===


Comments:
Submission of collection should be limited to a determined maximun number of nodes.
* Not sure what this means: maximum number of nodes in the collection? Maximum number of nodes (CEs) to test?


=== JOBSCH_JOB_8 ===
Comments:
 
*Not sure what this means: maximum number of nodes in the collection? Maximum number of nodes (CEs) to test?
 
=== JOBSCH_JOB_8 ===


  DAG jobs should work for all the CEs supported by the metascheduler, not only for a subset. Also, the ability
  DAG jobs should work for all the CEs supported by the metascheduler, not only for a subset. Also, the ability
Line 93: Line 102:
  should be taken into account.
  should be taken into account.


Comments:
Comments:  
* Added in the pass/fail description to test for all the supported Job Execution Interfaces supported.
* More complex workflows are to be covered by the "workflow capability" not yet covered by the criteria.


*Added in the pass/fail description to test for all the supported Job Execution Interfaces supported.
*More complex workflows are to be covered by the "workflow capability" not yet covered by the criteria.


=== JOBSCH_WMS_1 & JOBSCH_WMS_2 ===
<br>
 
=== JOBSCH_WMS_1 &amp; JOBSCH_WMS_2 ===


  it is not clear in this context the meaning of "Input from Technology Provider: Test and for checking
  it is not clear in this context the meaning of "Input from Technology Provider: Test and for checking
Line 108: Line 119:
  or rejected, specially for big JDLs"
  or rejected, specially for big JDLs"


Comments:
Comments:  
* C&P error: There was a confusion in the description of criteria


*C&amp;P error: There was a confusion in the description of criteria


<br>


== Data Quality Criteria (Patrick Fuhrmann) ==
== Data Quality Criteria (Patrick Fuhrmann) ==


== Generic Quality Criteria (Alberto Aimar)  ==


== Generic Quality Criteria (Alberto Aimar) ==
=== GENERIC_DOC_*  ===


=== GENERIC_DOC_* ===
  Online help mandatory: Currently the online help or the --h command options is not mandatory but  
  Online help mandatory: Currently the online help or the --h command options is not mandatory but  
  most command have it.
  most command have it.
Line 128: Line 140:
  EMI Documentation Policy.
  EMI Documentation Policy.


Comments:
Comments:  
* Documentation has an special status. Although it is mandatory, Products without it may pass verification if they are really needed. This is currently being changed in the QC.
 
*Documentation has an special status. Although it is mandatory, Products without it may pass verification if they are really needed. This is currently being changed in the QC.
 
=== GENERIC_REL_1  ===


=== GENERIC_REL_1 ===
  Software Licenses are required and tracked by EMI. But what are the EGI compatible licenses for using
  Software Licenses are required and tracked by EMI. But what are the EGI compatible licenses for using
  them on the EGI Infrastructure? How can the TP know that?
  them on the EGI Infrastructure? How can the TP know that?


Comments:
Comments:  
* Already detected issue, we are working on the exact licenses (mostly any OSF accepted ones)
 
*Already detected issue, we are working on the exact licenses (mostly any OSF accepted ones)
 
=== GENERIC_REL_2  ===


=== GENERIC_REL_2 ===
  The part about clear and readable code is a bit generic. But all EMI code is publicly available.  
  The part about clear and readable code is a bit generic. But all EMI code is publicly available.  


Comments:
Comments:  
* Changed the Pass/Fails criteria to just check if the source is available. The rest left as description.
 
*Changed the Pass/Fails criteria to just check if the source is available. The rest left as description.
 
=== GENERIC_REL_5  ===


=== GENERIC_REL_5 ===
  Similar requirement exists in EMI. The big question here is the granularity of testing. Now V2 contains
  Similar requirement exists in EMI. The big question here is the granularity of testing. Now V2 contains
  mention of this comment.  
  mention of this comment.  


Comments:
Comments:  
* The verifier will determine if the new features/bug fixes testing is enough for each release. Right now there is no other alternative to make this a more objective criterion.
 
*The verifier will determine if the new features/bug fixes testing is enough for each release. Right now there is no other alternative to make this a more objective criterion.
 
=== GENERIC_REL_7  ===


=== GENERIC_REL_7 ===
  This is new compared to Version 1. Should be a ticketing submission channel not a "bug tracker" where EGI
  This is new compared to Version 1. Should be a ticketing submission channel not a "bug tracker" where EGI
  submits bugs. EGI does not submit to the trackers of EMI but submits GGUS tickets and some are bugs others
  submits bugs. EGI does not submit to the trackers of EMI but submits GGUS tickets and some are bugs others
  are request of clarifications, etc.
  are request of clarifications, etc.


Comments:
Comments:  
* This criterion has changed: already existing TP should not worry, since they are enlisted as 3rd line support in GGUSS, this will be turned into a guideline for new TPs.
 
*This criterion has changed: already existing TP should not worry, since they are enlisted as 3rd line support in GGUSS, this will be turned into a guideline for new TPs.
 
=== GENERIC_SERVICE_*  ===


=== GENERIC_SERVICE_* ===
  Service control and status commands. This is not a specified requirement for EMI services at the moment.  
  Service control and status commands. This is not a specified requirement for EMI services at the moment.  


Line 167: Line 189:
  perform scalability and performance tests as part of their product certification.  
  perform scalability and performance tests as part of their product certification.  


Comments:
Comments:  
* EGI needs working services so this must be kept in the criteria.
 
*EGI needs working services so this must be kept in the criteria.
 
=== GENERIC_SEC_*  ===


=== GENERIC_SEC_* ===
  Not part of the current EMI requirements.But should be added to the EMI requirements.
  Not part of the current EMI requirements.But should be added to the EMI requirements.


Comments:
Comments:  
 
*
*


== Information Capabilities Quality Criteria (Laurence Field) ==
== Information Capabilities Quality Criteria (Laurence Field) ==
 
  In general these requirement are desribed in a very simplistic way. I would recommend that they are
  In general these requirement are desribed in a very simplistic way. I would recommend that they are
  revised and written in more detail.
  revised and written in more detail.


Comments:
Comments:  
* The SA2.2 team is finding people with more experience in the info capabilities to come up with better criteria for them. This will be accomplished in the next release.
 
*The SA2.2 team is finding people with more experience in the info capabilities to come up with better criteria for them. This will be accomplished in the next release.


=== INFOMODEL_SCHEMA_1 ===
=== INFOMODEL_SCHEMA_1 ===


  The description states that "Information exchanged in the EGI Infrastructure must conform to GlueSchema".
  The description states that "Information exchanged in the EGI Infrastructure must conform to GlueSchema".
  What information does this refer to? Any information that is exchanged or a subset?<br /><br />In "Input from  
  What information does this refer to? Any information that is exchanged or a subset?
In "Input from  
  Technology Provider" it states, "Test that the information published by the product conforms to  
  Technology Provider" it states, "Test that the information published by the product conforms to  
  the GlueSchema v1.3 Technology and v2.0 (optionally)" However in "Pass/Fail Criteria" it states
  the GlueSchema v1.3 Technology and v2.0 (optionally)" However in "Pass/Fail Criteria" it states
  "Information published must be available in GlueSchema v1.3 and GlueSchema v2". This is a contradition.
  "Information published must be available in GlueSchema v1.3 and GlueSchema v2". This is a contradition.


Comments:
Comments:  
* Rephrased most of the criterion. Now it should be clearer.
 
*Rephrased most of the criterion. Now it should be clearer.


=== INFODISC_IFACE_1 ===
=== INFODISC_IFACE_1 ===


  The description states that "Information published by the appliance must be available through LDAPv3 protocol".
  The description states that "Information published by the appliance must be available through LDAPv3 protocol".
  What is an applicance and what information does this refer to?
  What is an applicance and what information does this refer to?


Comments:
Comments:  
* Glossary: https://wiki.egi.eu/wiki/EGI_QA_Glossary
* This criterion basically states that we need information discovery appliances to publish using LDAPv3.


=== INFODISC_AGG_1 & _2===
*Glossary: https://wiki.egi.eu/wiki/EGI_QA_Glossary
*This criterion basically states that we need information discovery appliances to publish using LDAPv3.
 
=== INFODISC_AGG_1 &amp; _2 ===


  The description states what the software must not do. It should define what the software must do.  
  The description states what the software must not do. It should define what the software must do.  
  Filtering out irrelevant information is not really a requirement. Provding only relvant information
  Filtering out irrelevant information is not really a requirement. Provding only relvant information
  is a requirement.<br /><br />In general I think that this requirement does not make sense and
  is a requirement.
In general I think that this requirement does not make sense and
  needs to be revised.
  needs to be revised.


  In general I think that this requirement does not make sense and needs to be revised.
  In general I think that this requirement does not make sense and needs to be revised.


Comments:
Comments: These requirements try to capture the following:  
These requirements try to capture the following:
* the information system must be able to collect and publish information from several sources (INFODISC_AGG_2) and,
* if the admin wants, it should be possible to define some pieces of information that must not be published (INFODISC_AGG_1), e.g. if a CE on a site is failing for a specific VO, this specific CE for this VO can be removed, however for any other VO it should remain.


Will rephrase to clarify them.
*the information system must be able to collect and publish information from several sources (INFODISC_AGG_2) and,
*if the admin wants, it should be possible to define some pieces of information that must not be published (INFODISC_AGG_1), e.g. if a CE on a site is failing for a specific VO, this specific CE for this VO can be removed, however for any other VO it should remain.


Will rephrase to clarify them.
<br>
=== INFODISC_AVAIL_1  ===


=== INFODISC_AVAIL_1 ===
  The description states "Information Discovery appliances must be able to handle big amounts of data".
  The description states "Information Discovery appliances must be able to handle big amounts of data".
  How big is big? How many data sources, how much data, how many changes, in what data format etc.
  How big is big? How many data sources, how much data, how many changes, in what data format etc.
  <br /><br />This requirement is too simplistic and needs to be revised.
   
This requirement is too simplistic and needs to be revised.


Comments:
Comments:  
* Big is as stated in the QC: enough to handle the current information of the whole EGI.eu infrastructure.
 
*Big is as stated in the QC: enough to handle the current information of the whole EGI.eu infrastructure.
 
=== INFODISC_AVAIL_2  ===


=== INFODISC_AVAIL_2 ===
  Description The description statsthat the "information discovery service should be able to handle load under
  Description The description statsthat the "information discovery service should be able to handle load under
  realistic conditions." What are realistic loads?<br /><br />For the Pass/Fail Criteria, where does the
  realistic conditions." What are realistic loads?
For the Pass/Fail Criteria, where does the
  value of 20 come from? Is this realistic?
  value of 20 come from? Is this realistic?


Comments:
Comments:  
* Will review this value with operation people input.
 
*Will review this value with operation people input.
 
=== MSG_IFACE_1  ===


===MSG_IFACE_1 ===
  In the Pass/Fail Criteria, it statest that either JMS 1.1 or AMQP must be supported. As far as I  
  In the Pass/Fail Criteria, it statest that either JMS 1.1 or AMQP must be supported. As far as I  
  am aware the recomendation from EMI is to use STOMP.
  am aware the recomendation from EMI is to use STOMP.


Comments:
Comments:  
* The selected APIs were taken from the UMD Roadmap. Will consider STOMP for inclusion in the Roadmap.
 
*The selected APIs were taken from the UMD Roadmap. Will consider STOMP for inclusion in the Roadmap.


== Operations Capabilities Quality Criteria (Laurence Field) ==
== Operations Capabilities Quality Criteria (Laurence Field) ==


  In gerneral I have a concern about the style of this document. What is being described? Requirements, Tests ,  
  In gerneral I have a concern about the style of this document. What is being described? Requirements, Tests ,  
Line 252: Line 296:
  accounting information.
  accounting information.


Comments being digested by the people responsible for the document.
Comments being digested by the people responsible for the document.  


=== MON_NCG_1 ===
=== MON_NCG_1 ===


  More details are required for the Test Description. What information? Which database? How do we know it is working?
  More details are required for the Test Description. What information? Which database? How do we know it is working?
=== MON_NCG_2 ===
 
*NCG must generate /etc/nagios configuration files after its execution. /etc/nagios/wlcg.d/* files must be generated based on the information gathered from GOCDB database and the grid information system.
*nagios service must be started without errors after each ncg configuration.
 
=== MON_NCG_2 ===


  The description  does not sound like a requirement. The "NGI has to understand", isn't that and NGI issue?  
  The description  does not sound like a requirement. The "NGI has to understand", isn't that and NGI issue?  
  <br/><br />More details are required for the Test Description. What information? Which database? Test contains no  
   
More details are required for the Test Description. What information? Which database? Test contains no  
  deatils now to test for redundency which seems to be the perpose of the test. How do we know it is working?
  deatils now to test for redundency which seems to be the perpose of the test. How do we know it is working?
=== MON_PORTAL_* ===
 
=== MON_PORTAL_* ===


  Ok, but some phrasing could be improved for clarity.
  Ok, but some phrasing could be improved for clarity.


=== MON_PORTAL_5 ===
=== MON_PORTAL_5 ===


  How fast is fast, how soon is soon, how much is too much? Please be more specific.
  How fast is fast, how soon is soon, how much is too much? Please be more specific.


=== MON_DB_1 ===
=== MON_DB_1 ===


  Ok, but some phrasing could be improved for clarity.
  Ok, but some phrasing could be improved for clarity.


=== MON_PROBE_* ===
=== MON_PROBE_* ===
 
 
  "Pass/Fail" Check sentence.
  "Pass/Fail" Check sentence.


Comments:
Comments:  
* Changed to "Probes must exist and behave as expected in the probe documentation."


=== ACC_JOBEXEC_1 / ACC_JOBSCH_1 ===
*Changed to "Probes must exist and behave as expected in the probe documentation."
 
=== ACC_JOBEXEC_1 / ACC_JOBSCH_1 ===


  All the actions??? Are you sure?
  All the actions??? Are you sure?


Comments:
Comments:  
* Removed the "all", clarified the sentence.


== Security Capabilities Quality Criteria (John White) ==
*Removed the "all", clarified the sentence.
 
== Security Capabilities Quality Criteria (John White) ==


  Is this a "Quality" document describing the quality of software
  Is this a "Quality" document describing the quality of software
Line 296: Line 349:
  security components.
  security components.


Comments:
Comments:  
* They are both functional and non-functional requirements
 
* Most of the tests come from EMIs test plans.
*They are both functional and non-functional requirements  
*Most of the tests come from EMIs test plans.


  One question that comes to mind is that is
  One question that comes to mind is that is
Line 306: Line 360:
  our tests for EGI.
  our tests for EGI.


Comments:
Comments:  
* EGI will repeat tests if the verifier considers that is needed (major releases mostly), but does not require re-writing/reformatting
* Ideally EMIs test framework can be reused.


=== ATTAUTH_WEB_2 ===
*EGI will repeat tests if the verifier considers that is needed (major releases mostly), but does not require re-writing/reformatting
*Ideally EMIs test framework can be reused.
 
=== ATTAUTH_WEB_2 ===


  This follows the previous (EGEE/LCG) policy documents?
  This follows the previous (EGEE/LCG) policy documents?
  If so, OK.
  If so, OK.


Comments:
Comments:  
* Will check, but it should.


=== AUTHZ_ PDP_1 ===
*Will check, but it should.
 
=== AUTHZ_ PDP_1 ===


  "PDPs must support the XACML interface" This is a bit general. Internally Argus uses XACML  
  "PDPs must support the XACML interface" This is a bit general. Internally Argus uses XACML  
  but the WHOLE XACML spec is not used.
  but the WHOLE XACML spec is not used.


Comments:
Comments:  
* The verifier will determine if the coverage of the interface is enough.
 
* We are working on better specification of the API QC, to explicitly say which parts of the interface are expected and which not.
*The verifier will determine if the coverage of the interface is enough.  
*We are working on better specification of the API QC, to explicitly say which parts of the interface are expected and which not.


== Storage Capabilities Quality Criteria (Patrick Fuhrmann) ==
== Storage Capabilities Quality Criteria (Patrick Fuhrmann) ==

Revision as of 10:39, 27 July 2011

EMI Review of the EGI QC Documents (Version 2)

Original Document is available at https://twiki.cern.ch/twiki/bin/view/EMI/EmiEgiQcReviewV2

Review on the review

Compute Capabilities Quality Criteria (Marco Cecchi)

JOBEXEC_IFACE_1

- "The test suite must include tests for all the documented functions." maybe EGI itself should define a
 minimum set of primitives an interface should provide
- " Invalid output should throw an exception as documented" It is not clear whether the interface should
be accessed directly through the network or via APIs. In both cases,
the term exception could not apply everywhere, so I would speak in generic terms of "error".
 - EMI-ES is not listed among the possible interfaces.

Comments:

  • Working on exact API functionality to test.
  • EMI-ES added as a possible interface (should be added to the UMD Roadmap too)
  • Changed "exception" to "exception or error".

JOBEXEC_JOB_2

Typo: Non-empy -> Non empty

Comments:

  • Corrected type

JOBEXEC_JOB_3

Testing job cancellation involves different scenarios depending on where the job was found in the submission
chain at the moment the cancellation is triggered. This test should possibly be broken down into subtests such
as: cancel a job when the job in state (submitted, waiting, scheduled, running, already cancelled, aborted, etc).

Comments:

  • More detail given for the tests, although no specific states given since not every system has the same ones. In the pass/fail criteria, added that is specially relevant to test when the job is running.

JOBEXEC_EXECMNGR_1

I would add: check if the middleware requires to have outbound connectivity on the WN and check if 
the job requires an identity switch. These criteria should not be blocking, but should be well known.

Comments:

  • Added Inbound and Outbound connectivity
  • The pass/fail criteria now specifies that the appliance may be accepted if modifications exist but only if they are documented.

JOBEXEC_EXECMNGR_3

A list of supported BS would be expected here, as for JOBEXEC_EXECMNGR_2.

Comments:

  • Added list as JOBEXEC_EXECMNGR_2

INTERACTIVE_JOB_1

Providing interactive login to remote machine also involves specific configuration on the WN. That can only
depend on the site administration policies. Of course we are not speaking of interactive root access to a
virtual machine here. In any case, I'd relax the original statement into something like "provide
interactive, shell-like access to a worker node". That could simply be done, for example, by redirecting
stdin&out over a socket.

Comments:

  • This Criterion is explicitly intended for interactive login (such as what gsissh provides). The case described by EMI can be considered as part of INTERACTIVE_JOB_4.

INTERACTIVE_JOB_3/INTERACTIVE_JOB_4

INTERACTIVE_JOB_4 encompasses what described in INTERACTIVE_JOB_3

Comments:

  • This is intended. There might be middleware that only does one direction communication (INTERACTIVE_JOB_3) and we want to have a criterion for it.

JOBSCH_EXEC_1

EMI-ES is missing. In general, most of the above comments (JOBEXEC_IFACE_1, JOBEXEC_JOB_*) 
apply to JOBSCH_EXEC_* items as well.

Comments:

  • Added EMI-ES as a possible interface.
  • Corrected JOBSCH_JOB_3 (Cancel of jobs)

JOBSCH_JOB_7

Submission of collection should be limited to a determined maximun number of nodes.

Comments:

  • Not sure what this means: maximum number of nodes in the collection? Maximum number of nodes (CEs) to test?

JOBSCH_JOB_8

DAG jobs should work for all the CEs supported by the metascheduler, not only for a subset. Also, the ability
to support workflows (jobs with cyclic dependencies whose exit condition is to be evaluated at run-time)
should be taken into account.

Comments:

  • Added in the pass/fail description to test for all the supported Job Execution Interfaces supported.
  • More complex workflows are to be covered by the "workflow capability" not yet covered by the criteria.


JOBSCH_WMS_1 & JOBSCH_WMS_2

it is not clear in this context the meaning of "Input from Technology Provider: Test and for checking
resubmission mechanism". 
"A test to submit a job and check if it is accepted or rejected, specially for big JDLs", repetead in
JOBSCH_WMS_3 maybe it should be something about resubmission, i.e. the sentence in JOBSCH_WMS_1. 
In fact JOBSCH_WMS_3 correctly reports another: "A test to submit a job and check if it is accepted
or rejected, specially for big JDLs"

Comments:

  • C&P error: There was a confusion in the description of criteria


Data Quality Criteria (Patrick Fuhrmann)

Generic Quality Criteria (Alberto Aimar)

GENERIC_DOC_*

Online help mandatory: Currently the online help or the --h command options is not mandatory but 
most command have it.
API documentation mandatory: Currently the API documentation is not a mandatory document of our
documentation review. But of course all public APIs are documented.
All OK. Functional Description, Release Notes, User Doc, Admin Doc are all also mandatory in the
EMI Documentation Policy.

Comments:

  • Documentation has an special status. Although it is mandatory, Products without it may pass verification if they are really needed. This is currently being changed in the QC.

GENERIC_REL_1

Software Licenses are required and tracked by EMI. But what are the EGI compatible licenses for using
them on the EGI Infrastructure? How can the TP know that?

Comments:

  • Already detected issue, we are working on the exact licenses (mostly any OSF accepted ones)

GENERIC_REL_2

The part about clear and readable code is a bit generic. But all EMI code is publicly available. 

Comments:

  • Changed the Pass/Fails criteria to just check if the source is available. The rest left as description.

GENERIC_REL_5

Similar requirement exists in EMI. The big question here is the granularity of testing. Now V2 contains
mention of this comment. 

Comments:

  • The verifier will determine if the new features/bug fixes testing is enough for each release. Right now there is no other alternative to make this a more objective criterion.

GENERIC_REL_7

This is new compared to Version 1. Should be a ticketing submission channel not a "bug tracker" where EGI
submits bugs. EGI does not submit to the trackers of EMI but submits GGUS tickets and some are bugs others
are request of clarifications, etc.

Comments:

  • This criterion has changed: already existing TP should not worry, since they are enlisted as 3rd line support in GGUSS, this will be turned into a guideline for new TPs.

GENERIC_SERVICE_*

Service control and status commands. This is not a specified requirement for EMI services at the moment. 
Log files. This is not a specified requirement for EMI services at the moment. 
No such requirement is explicitly part of EMI policies. Nevertheless, Product Teams are required to
perform scalability and performance tests as part of their product certification. 

Comments:

  • EGI needs working services so this must be kept in the criteria.

GENERIC_SEC_*

Not part of the current EMI requirements.But should be added to the EMI requirements.

Comments:

Information Capabilities Quality Criteria (Laurence Field)

In general these requirement are desribed in a very simplistic way. I would recommend that they are
revised and written in more detail.

Comments:

  • The SA2.2 team is finding people with more experience in the info capabilities to come up with better criteria for them. This will be accomplished in the next release.

INFOMODEL_SCHEMA_1

The description states that "Information exchanged in the EGI Infrastructure must conform to GlueSchema".
What information does this refer to? Any information that is exchanged or a subset?

In "Input from 
Technology Provider" it states, "Test that the information published by the product conforms to 
the GlueSchema v1.3 Technology and v2.0 (optionally)" However in "Pass/Fail Criteria" it states
"Information published must be available in GlueSchema v1.3 and GlueSchema v2". This is a contradition.

Comments:

  • Rephrased most of the criterion. Now it should be clearer.

INFODISC_IFACE_1

The description states that "Information published by the appliance must be available through LDAPv3 protocol".
What is an applicance and what information does this refer to?

Comments:

INFODISC_AGG_1 & _2

The description states what the software must not do. It should define what the software must do. 
Filtering out irrelevant information is not really a requirement. Provding only relvant information
is a requirement.

In general I think that this requirement does not make sense and
needs to be revised.
In general I think that this requirement does not make sense and needs to be revised.

Comments: These requirements try to capture the following:

  • the information system must be able to collect and publish information from several sources (INFODISC_AGG_2) and,
  • if the admin wants, it should be possible to define some pieces of information that must not be published (INFODISC_AGG_1), e.g. if a CE on a site is failing for a specific VO, this specific CE for this VO can be removed, however for any other VO it should remain.

Will rephrase to clarify them.


INFODISC_AVAIL_1

The description states "Information Discovery appliances must be able to handle big amounts of data".
How big is big? How many data sources, how much data, how many changes, in what data format etc.


This requirement is too simplistic and needs to be revised.

Comments:

  • Big is as stated in the QC: enough to handle the current information of the whole EGI.eu infrastructure.

INFODISC_AVAIL_2

Description The description statsthat the "information discovery service should be able to handle load under
realistic conditions." What are realistic loads?

For the Pass/Fail Criteria, where does the
value of 20 come from? Is this realistic?

Comments:

  • Will review this value with operation people input.

MSG_IFACE_1

In the Pass/Fail Criteria, it statest that either JMS 1.1 or AMQP must be supported. As far as I 
am aware the recomendation from EMI is to use STOMP.

Comments:

  • The selected APIs were taken from the UMD Roadmap. Will consider STOMP for inclusion in the Roadmap.

Operations Capabilities Quality Criteria (Laurence Field)

In gerneral I have a concern about the style of this document. What is being described? Requirements, Tests , 
Sepcification etc. The current style seems to mix these concepts and as such makes it difficult to understand. The 
desciptions need to be improved to clear be inline with what is being described. From the phrasing it should be 
clear that this is a a test or a requirement. Everything should also be made more abstract. For example it should 
state that dataset A should be moved to point B by time T rather than requiring that cron is used to publish
accounting information.

Comments being digested by the people responsible for the document.

MON_NCG_1

More details are required for the Test Description. What information? Which database? How do we know it is working?
  • NCG must generate /etc/nagios configuration files after its execution. /etc/nagios/wlcg.d/* files must be generated based on the information gathered from GOCDB database and the grid information system.
  • nagios service must be started without errors after each ncg configuration.

MON_NCG_2

The description   does not sound like a requirement. The "NGI has to understand", isn't that and NGI issue? 


More details are required for the Test Description. What information? Which database? Test contains no 
deatils now to test for redundency which seems to be the perpose of the test. How do we know it is working?

MON_PORTAL_*

Ok, but some phrasing could be improved for clarity.

MON_PORTAL_5

How fast is fast, how soon is soon, how much is too much? Please be more specific.

MON_DB_1

Ok, but some phrasing could be improved for clarity.

MON_PROBE_*

"Pass/Fail" Check sentence.

Comments:

  • Changed to "Probes must exist and behave as expected in the probe documentation."

ACC_JOBEXEC_1 / ACC_JOBSCH_1

All the actions??? Are you sure?

Comments:

  • Removed the "all", clarified the sentence.

Security Capabilities Quality Criteria (John White)

Is this a "Quality" document describing the quality of software
or a set of requirements? It reads more like a set of requirements.
The test requirements themselves look reasonable and pretty much
mirror the test suites that are used in EMI certification of 
security components.

Comments:

  • They are both functional and non-functional requirements
  • Most of the tests come from EMIs test plans.
One question that comes to mind is that is
EGI expecting a new set of test-suites to run in a particular
framework or will they use the results of EMI certification? Statement
that the document as "OK" does not imply acceptance of re-writing/reformatting
our tests for EGI.

Comments:

  • EGI will repeat tests if the verifier considers that is needed (major releases mostly), but does not require re-writing/reformatting
  • Ideally EMIs test framework can be reused.

ATTAUTH_WEB_2

This follows the previous (EGEE/LCG) policy documents?
If so, OK.

Comments:

  • Will check, but it should.

AUTHZ_ PDP_1

"PDPs must support the XACML interface" This is a bit general. Internally Argus uses XACML 
but the WHOLE XACML spec is not used.

Comments:

  • The verifier will determine if the coverage of the interface is enough.
  • We are working on better specification of the API QC, to explicitly say which parts of the interface are expected and which not.

Storage Capabilities Quality Criteria (Patrick Fuhrmann)