European Union, and its products include an
evaluation framework for the trustworthiness of
Open Source projects (Del Bianco, 2008).
This research presented in this paper starts form
the evaluation of the listed approach and proposes
the EFFORT evaluation framework, aiming at
overcoming their limitations. Then, the aim of the
paper is:
• Definition of a quality model for FlOSS projects,
extending the ISO/IEC 9126 standard and
considering characteristics peculiar to that kind
of projects.
• Definition of a framework for evaluating FlOSS
projects, which gives guide lines, procedures and
metrics to actually perform the measurement.
The paper is structured as follows: section 2
describes the proposed measurement framework;
section 4 reports a case study, consisting of the
evaluation of a FlOSS project; conclusions and
future works are discussed section 5.
2 THE PROPOSED
FRAMEWORK
This section presents the proposed evaluation
framework, called EFFORT – Evaluation
Framework for Free/Open souRce projects. Its main
purpose is defining a quality model and
measurement tool for supporting the evaluation of
FlOSS projects, avoiding the limitation of the
approaches analyzed in the previous section.
The quality model is synthesized in Figure 1. It
defines the quality of a FlOSS project as the synergy
of three major components: quality of the product
developed within the project, trustworthiness of the
community of developers and contributors, product
attractiveness to its specified catchment area. Figure
1 shows the hierarchy of considered attributes.
The measurement framework was defined on the
basis of the Goal Question Metrics paradigm. In
correspondence of each first-level characteristics of
Figure 1, one Goal is defined. Then, the EFFORT
measurement framework includes three goals.
Questions, consequentially, map the second-level
characteristics, even if, Goal 1 has been broken up
into sub-goals, because of its high complexity. For
question of space, the metric level is not presented.
The following subsections summarily describe each
goal, providing a formalization of the goal itself,
incidental definitions of specific terms and list of
questions. A complete portion of the framework,
with the questions, will be just shown for Goal 2.
2.1 Product Quality
One of the main aspects that denotes the quality of a
project is product quality. So, it was necessary to
consider all the aspects of software product quality,
as defined by ISO/IEC 9126 standard (ISO, 2004).
Goal 1 is defined as follows:
Analyze the software product with the aim of
evaluating its quality, from a software
engineering’s point of view.
Given the vastness of the aspects considered by
the ISO standard, Goal 1 is decomposed in sub-
goals, each of which is focused on a single issue
corresponding to one of the six main characteristics
of the reference model: portability, maintainability,
reliability, functionality, usability, and efficiency.
The in-use quality characteristic is not considered in
this context.
Table 1 shows the sub-goals and questions
related to portability, maintainability.
For a precise definition of each characteristic, the
ISO/IEC 9126 standard can be referred (ISO, 2004).
Table 1: Some sub-goals of the Product Quality.
Sub-goal 1a:
nalyze the software product with the aim o
evaluating it as regards the portability, from a software
engineering’s point of view
Q
1a.1
What degree of adaptability does the product offer?
Q
1a.2
What degree of installability does the product offer?
Q
1a.3
What degree of replaceability does the product offer?
Q
1a.4
What degree of coesistence does the product offer?
Sub-goal 1b: Analyze the software product with the aim o
evaluating it as regards the maintainability, from a software
engineering’s point of view
Q
1b.1
What degree of analyzability does the product offer?
Q
1b.2
What degree of changeability does the product offer?
Q
1b.3
What degree of testability does the product offer?
Q
1b.4
What degree of technology concentration does the
product offer?
Q
1b.5
What degree of stability does the product offer?
2.2 Community Trustworthiness
When adopting a FlOSS product, users are generally
worried about offered support in case of troubles.
The community, in fact, is not in duty-bound of
supporting a user that adopts its software product.
Anyway, a certain degree of support is generally
given in quantity and modality that differ from a
community to another one. We have considered
EVALUATING THE QUALITY OF FREE/OPEN SOURCE PROJECTS
187