Acceptance criteria for external software

As a general recommendation, the number of external software dependencies should be limited as much as possible. Introducing any external software should be carefully evaluated BEFORE starting any development. The final agreement should be given by the EMT by submitting a request describing

  • use case
  • description
  • download location
  • commenting the individual acceptance criteria

Enough time (in general two weeks) should be given to the integration team as well as by the other software clusters to evaluate the addition.

No duplication of functionality

A new 3rd party software should be only introduced if a similar functionality is not already provided by an already existing 3rd party software used within the gLite software stack or by the gLite software stack itself.

Usage of standard techniques

As much as possible standard/widely accepted 3rd party software should be used in order to be in line with other software projects and developments.

Coexistance with other gLite software stack

The 3rd party software should be able to coexist with any other part of the gLite software stack and its other 3rd party software and should not introduce any incompatibilities for other parts of the gLite software stack.

Coexistance with OS

The 3rd party software should be able to coexist with the OS, gLite is running on, especially the version of the same software installed as part of the standard installation, and should not introduce any incompatibilities.

Minimal impact

The impact of the introduction of a new 3rd party software should be evaluated in terms of size and functionality. This concerns e.g. cases where only a small functionality of the new software is used while a huge (set of) libraries needs to be included.

Multi-platform support

The 3rd party software must be available and supported on all gLite targeted platforms. For the moment the main gLite target platforms are SL(C)3 and SL(C)4.

Stable version

The 3rd party software used for the gLite software must be a stable, released version and must not be a beta or development version.

Original version

All 3rd party software should be taken unmodified from the original source.

Tracked record of ongoing support

The 3rd party software has to have an active user community that is handling important bug fixes within a reasonable time scale.


The license of the external software must not contradict the gLite software. Software needed to run gLite must be freely downloadable for all users. Preference should be given to freely distributable software and any exception to this should be carefully decided.


All 3rd party software the gLite software stack is using must be secure: As a minimum, the following requirements must be met:

  • There have been no published security vulnerabilities that have not been fixed in the versions the gLite software stack is using.
  • No passwords are viewable in plain text nor are passwords kept in an open-access file or database in plain text. Plain text may be used in databases or files that can otherwise be secured from general users.
  • Software is written in a manner that promotes the highest security state applicable for this software.
  • Software uses Authentication and Access control as appropriate.
  • There is no "backdoor" method to enter the software.
  • There are no "Trojan horses" or similar detrimental coding in the software.
  • Software is free from viruses.
  • Support of the software must show the ability to handle any upcoming security issues in a reasonable time scale.


Apropriate documentation for the 3rd software must be available.

Source code

Availability of the source code is preferential, however not strictly required.

-- JoachimFlammer - 25 Jun 2007

Edit | Attach | Watch | Print version | History: r6 < r5 < r4 < r3 < r2 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r3 - 2007-06-25 - JoachimFlammer
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    EGEE All webs login

This site is powered by the TWiki collaboration platform Powered by Perl This site is powered by the TWiki collaboration platformCopyright & by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Ask a support question or Send feedback