You are on page 1of 5

Fuente: https://timreview.

ca/article/146 When evaluating software, the following


questions naturally arise:

● which software best meets the actual


or planned technical requirements?
Method for ● which software best meets the actual
or planned functional requirements?
Qualification and In addition, every company should answer
Selection of Open these questions before making any decision:

Source Software ● what is the durability of the software


and what are the risks of forks and
how do we anticipate and manage
May 2008 them?
● what level of stability can be expected
Raphaël Semeteys and how will we manage
dysfunctions?
"A manager may be more interested in the ● what is the expected and available
overall quality rather than in a specific quality support level provided on the
characteristic, and for this reason will need to software?
assign weights, reflecting business ● is it possible to influence further
requirements, to the individual characteristics." development of the software with the
addition of new or specific
ISO 9126 functionalities?

For a company, the choice to opt for software To answer these questions and set up an
as a component of its information system, efficient risk management process, it is
whether this software is open source or imperative to have a method allowing:
commercial, rests on the analysis of needs
and constraints and on the adequacy of the ● software qualification by integrating
software to address these needs and the open source characteristics
constraints. ● software comparisons according to
formalized needs requirements of
However, when one plans to study the weighted criteria, in order to make a
adequacy of open source software (OSS), it is final choice
necessary to have a method of qualification
and selection adapted to the characteristics of Why a Free Methodology?
this type of software and to precisely examine
the constraints and risks specific to OSS. We believe that the method as well as the
Since the open source field has a very broad results it generates must be made available to
scope, it is also necessary to use a all under the terms of a free license. A free
qualification method that differentiates license is capable of ensuring the promotion of
between numerous candidates to meet the open source movement as it provides:
technical, functional and strategic
requirements. ● the ability for all to re-use available
works for qualification and evaluation
This document describes the QSOS ● the quality and objectivity of
(Qualification and Selection of software Open documents generated, perfected
Source) method, conceived by the technology according to principles of transparency
services company Atos Origin SA to qualify, and peer reviews
select and compare OSS in an objective,
traceable and argued way. The method can be For these reasons, we decided to make the
integrated within a more general process of QSOS method, and the documents generated
technological watch which is not presented during its application (functional grids, identity
here. It describes a process to set up identity cards and evaluation sheets), available under
cards and evaluation sheets for OSS. the terms of the GNU Free Documentation
License.
Why a Methodology?
General Process
The general process of QSOS is made up of Software families: hierarchical classification
four interdependent steps: of software domains and description of
functional grids associated with each domain.
1. Definition: creation of frames of This frame of reference evolves the most
reference used in the following steps. because as software evolves, it offers new
2. Evaluation: made on three axes of functionalities that need to be added to the
criteria: i) functional coverage; ii) risks frame of reference.
for the user; and iii) risks for the
service provider independent of any Types of licenses: this frame of reference
particular user or customer context. lists and classifies the major licenses used for
3. Qualification: weighting of the criteria OSS. The criteria chosen to describe such a
split up on the three axes and license are: i) ownership (can the derived code
modeling the context, user become proprietary or must it remain free?); ii)
requirements, and/or strategy set by virality (is another module linked to the source
the service provider. code affected by the same license?); and iii)
4. Selection: process the data provided inheritance (does the derived code inherit from
in steps one and two through the filter the license or is it possible to apply additional
set up in step three in order to restrictions?). Note that a piece of software or
proceed to queries, comparisons, and code can be published under the terms of
selections of products. several licenses, including closed source
licenses.
Figure 1 provides a visualization of the four
step QSOS process. Each one of these steps Types of communities: classification of
is detailed further in this document. community organizations existing around OSS
and in charge of its life-cycle. The types of
Figure 1: The Four Steps of QSOS communities identified to date are: i) insulated
developer where the software is developed
and managed by one person; ii) group of
developers where several people collaborate
in an informal or not industrialized way; iii)
organization of developers where a group of
developers manage the software life-cycle in a
_formalized _way, _generally _based on
based on role assignment and meritocracy; iv)
a legal entity that manages the community,
generally possesses copyrights, and manages
sponsorship and linked subsidies; and v) a
commercial entity employing the project's main
developers who are remunerated by the sale
of services or of commercial versions of the
software.
The general process introduced here can be
applied with different granularities. It enables The O3S tool is designed to be able to easily
the establishment of the desired level of detail manage these frames of reference and to
for the process as well as advancement of the measure impacts generated by modifications
process by iterative loops to refine each of the on data already collected during other QSOS
four steps. steps.
Tools developed by Atos Origin to apply the Step 2: Evaluation
QSOS method in a coherent way are available
to the community to coordinate creation, The objective of this step is to carry out the
modification and use of QSOS evaluations. evaluation of the software. It consists of
collecting information from the open source
Step 1: Definition community, in order to:
The objective of this step is to define various ● build the identity (ID) card of the
elements of the typology to be re-used by the software
three remaining steps of the general process. ● build the evaluation sheet of the
The frames of reference are: software, by scoring criteria split on
three major axes: i) functional
coverage; ii) risks from the user's In certain cases it is necessary to use several
perspective; and iii) risks from the functional grids for the same software; for
service provider's perspective instance, when it belongs to more than one
software family. In this case, the functional
Data constituting the identity card is raw and criteria are distributed on separated axes in
factual and is not directly scored. However, it order to be able to distinctly evaluate the
is used as a basis for the scoring process functional coverage for each family.
described below. The main parts of an identity
card are: The "risks from the user's perspective" axis of
evaluation includes criteria to estimate risks
General information: this includes the: i) incurred by the user when adopting OSS.
name of the software; ii) reference, date of Scoring of criteria is done independently of
creation, and date of release of the ID card; iii) any particular user's context as the context is
author; iv) type of software; v) brief description considered later in step three. Criteria are split
of the software; vi) licenses to which the into five categories:
software is subjected; vii) project's webpage
and demonstration site; viii) compatible ● intrinsic durability
operating systems; and ix) fork's origin, if the ● industrialized solution
software is a fork. ● integration
● technical adaptability
Existing services: this component includes: i) ● strategy
documentation; ii) number of contractual
support offers; iii) number of training offers; Tables detailing each of these categories as
and iv) number of consultancy offers. well as their subcategories, by specifying the
rule of notation to be used for each criterion,
Functional and technical aspects: include are available here.
the: i) technologies of implementation; ii)
technical prerequisites; iii) detailed The "risks from the service provider's
functionalities; and iv) roadmap. perspective" axis of evaluation regroups
criteria to estimate risks incurred by a
Synthesis: includes the general trend and any contractor offering services around OSS such
comments. as expertise, integration, development, and
support. It is notably on this basis that the level
Every software release is described in an of commitment can be determined.
evaluation sheet. This document includes
more detailed information than the identity It is possible to iterate the QSOS process. At
card as it focuses on identifying, describing the evaluation step this brings the capacity to
and analyzing in detail each evolution brought score criteria in three passes with different
by the new release. levels of granularity:

Criteria are scored from 0 to 2. These scores ● first the five main categories
will be used in step four to compare and select ● then the subcategories of each
software according to the weightings, category
representing the user's requirements specified ● finally every remaining criterion
in step three. The following describe the
criteria used for each axis of evaluation. Note The general process is thus not hindered if not
that the same or similar criteria can appear on all of the scored criteria are available. Once all
a different axis. criteria have been scored, the score of the first
two levels is calculated by the weighted
The functional grid is determined by the average of scores of the directly inferior level.
software's family and proceeds from the frame
of reference of step one. Consult the QSOS The O3S tool allows the entry of raw data and
website for details of functional grids by the evaluation of software on the three major
software families. For each element of the axes, as well as generation of the identity
grid, the scoring rule is as follows: cards of evaluated software.

Functionality Score The granularity of evaluation is managed as


Not Covered 0 follows: as long as all criteria composing a
Partially Covered 1 subcategory are not scored, its score is not
calculated but entered by the user. As soon as
Completely Covered 2
all criteria are scored, its score is then criterion must be at least equal to 1 and the
automatically calculated. score of a critical criterion must be at least
equal to 2. This method is very selective and
Step 3: Qualification may, depending on the user's requirement,
return no eligible software. Selected software
The objective of this step is to define filters is attributed a total score, calculated by
translating the needs and constraints related weighting.
to the selection of OSS. This is achieved by
qualifying the user's context which will be used Loose selection: this method is less strict as
later in step four. rather than eliminating non-eligible software, it
classifies while measuring gaps with applied
A first level of filtering can be defined on data filters.
from the software's ID card. For instance, one
could consider software only from a given The weighting value for both selection
family or software that's compatible with a methods is based on the level of requirement
given operating system. In general, although it defined on each functionality of the functional
is not mandatory, this filter does not include grid as follows:
any weighting. It is mostly used to eliminate
inadequate software in the specific context of
the user. Level of Requirement Weight
Required Functionality +3
Each functionality is attributed a requirement Optional Functionality +1
level selected among the following: i) required
Not Required Functionality 0
functionality; ii) optional functionality; and iii)
not required functionality. These requirement The weighting value on the "user's risk" axis is
levels will be linked to weighting values at step based on the relevance of each criterion as
four, according to the selected mode of follows:
selection.

The relevance of each criterion of the "user's Relevance Weight


risks" axis is positioned according to user's Irrelevant Criterion 0
context as one of three criterion: i) irrelevant Relevant Criterion +1 or -1
and therefore excluded from the filter; ii) Critical Criterion +3 or -3
relevant; and iii) critical. This relevance will be The weight's value sign represents a positive
converted into a numerical weighting value at or negative impact relating to the user's
the following step, according to the chosen requirements.
mode of selection.
The software of a same family with a common
The "filter on service provider's risks" is used functional grid can also be compared by using
by a service provider to evaluate software and weighted scores determined earlier. Figure 2
services to be integrated into its offering and to is provided as an example showing that
determine the associated levels of weightings on the various axes are not
commitment. The O3S tool allows the representative of all kinds of relational
definition of these different filters. database management systems (RDMBS)
utilizations.
Step 4: Selection
Figure 2: Comparison of RDMBS on QSOS
The objective of this step is to identify software
Axes
fulfilling user's requirements or, more
generally, to compare software from the same
family. Two selection modes are possible:

Strict selection: based on direct elimination


as soon as software does not fulfill the
requirements formulated in step three.
Reasons for immediate elimination include: i)
incompatibility with the filter on the ID card; ii)
not providing functionality required by the filter
on the functional grid; and iii) scores on the
"user's risks" axis do not meet the relevance
defined by the user, as the score of a relevant
Besides implementing the strict and loose
selection modes, the O3S tool also enables
the consultation of data related to a specific
software (ID card and evaluation criteria) and
the comparison (integrally, by filtering or
differentially) of software in the same family.

Conclusion

The vast amount of available OSS software


requires a methodology to allow for the
evaluation of potential candidates to meet
business requirements. The QSOS
methodology allows for an iterative needs
analysis for gauging the technical, functional,
and strategic capabilities of OSS products.
The QSOS website centralizes documents and
information on the methodology and the
creation, modification, and certification of
functional grids, ID cards, and evaluation
sheets.

This article is based on QSOS version 1.6


which is copyright Atos Origin under the terms
of the Gnu FDL and included in this issue with
permission from the copyright owner. The
original document and its Latex source is
available from the QSOS website.

You might also like