OSS Project Quality & management
-
Upload
fossa-free-open-source-software-academia-conference -
Category
Technology
-
view
1.420 -
download
0
description
Transcript of OSS Project Quality & management
QualiPSo - Quality of FlOSS products and processes
Etiel Petrinja
Center for Applied Software EngineringFree University of Bolzano/Bozen, Italy
Introducing the OpenSource Maturity Model 2
Motivation
Improve FlOSS quality and the perception of FlOSS quality by users
Improve the quality of FlOSS products Improving the quality of the FlOSS
development process Making FlOSS more appealing to
(software) industry Increasing the number of contributors to
FlOSS projects
Introducing the OpenSource Maturity Model 3
Aims
Provide: customizable quality models (based on
functional and nonfunctional factors) tools to assess the trustworthiness of
FlOSS (static and dynamic measures) fill the gap between theory (soundness)
and practice (practicality) understand the reasons and motivations
that lead software companies to adopt or reject FlOSS, and software developers to develop FlOSS
Introducing the OpenSource Maturity Model 4
Framework of our research
Part of the QualiPSo project; a four years, EU funded project with 18 partners from Europe, China and Brazil
Separate approaches to assess: the quality of the FlOSS product and (A5) the quality of the FlOSS development
process (A6)
Introducing the OpenSource Maturity Model 5
Assessment of FlOSS products
Work done inside Activity 5 of the QualiPSo project
Introducing the OpenSource Maturity Model 6
Research sources
Interviewed 48 “users” in addition to the initial set of 103 (developers, integrators, system administrators, product managers, clearing house members, end users, etc.)
We asked the interviewees to rank the factors they use when they select FlOSS
We analyzed the interviews in a statistically sound way to find the most important factors
Introducing the OpenSource Maturity Model 7
Objectives of activity 5 (product quality)
Objectives: find out what kind of information is out
there to help “users” choose find out what kind of information is
missing check if there is a gap between “demand”
and “supply”
Introducing the OpenSource Maturity Model 8
Product related factors (Product quality)
Introducing the OpenSource Maturity Model 9
Measurement tool for product quality (1/2)
MACXIM measure Java code, UML models development language: Java stores measurement representations in
XML Database (eXist) web GUI
Introducing the OpenSource Maturity Model 10
Measurement tool for product quality (2/2)
Introducing the OpenSource Maturity Model 11
Assessment of FlOSS development process
Work done inside Activity 6 of the QualiPSo project
Introducing the OpenSource Maturity Model 12
Approaches to increase the quality of FlOSS
Identification of best practices of the software development process
Proposal of standard approaches to be used
Measurement of the quality of FlOSS Standard measurement of the quality of
software The de facto standard for assessing the
process – The Capability Maturity Model (CMM-I)
Introducing the OpenSource Maturity Model 13
Similar initiatives in the FlOSS area
Assessment models focused mainly in the “final product”
Available models still lack thorough testing on a large set of products
The available models: Open Maturity Model by Cap Gemini Open Maturity Model by Navica Qualification and Selection of Open Source
Software Open Business Readiness Rating
Introducing the OpenSource Maturity Model 14
Identification of Trustworthy elements - TWE
The key result of interviews and surveys done on FlOSS users, integrators and developers was the identification of trustworthy elements (TWEs)
We were interested in which aspects of the FlOSS development process increase subjects confidence in the quality of the FlOSS development process
TWEs coincided often with key processes identified during the literature research
Introducing the OpenSource Maturity Model 15
Table: Trustworthy elements related to the FlOSS development process
Answer Vote
Maintainability 7,6
Quality of the documentation 7,0
Following the test plan 6,9
(Open) standards used 6,8
Communication channels available 6,3
Quality of the test plan 6,3
Popularity of the product (number of users) 6,2
Number of commits (developers) 6,0
Use of tools, CVS, Bug tracking 6,0
Sponsoring companies and industry 5,9
People on the project 5,9
The license used, possible patents free 4,8
Number of bug reports 4,2
Road map respected 4,2
The development process followed 4,2
Independent institution that checks the development process 4,1
Introducing the OpenSource Maturity Model 16
Leading ideas for defining the QualiPSo OpenSource Maturity Model (OMM)
The model should be designed having incremental steps (three levels)
It should allow a basic entrance level and two improved levels.
It should be aligned with CMMI in order to facilitate its adoption by software companies (FlOSS integrators)
It should be easy to use in order to be acceptable for FlOSS communities and users
It should be based on key TWEs identified
Introducing the OpenSource Maturity Model 17
The OMM Structure
Introducing the OpenSource Maturity Model 18
Use of OMM
The OMM model can be first used as a list of activities that FlOSS projects should follow for improving its quality
A second use case is based on the assessment approach supporting the measurement of fulfilling specific activities
Who can use OMM: FlOSS developers (communities), FlOSS integrators, and FlOSS product users
Introducing the OpenSource Maturity Model 19
OMM tool (1/2)
Introducing the OpenSource Maturity Model 20
OMM tool (2/2)
Introducing the OpenSource Maturity Model 21
OMM tool – Spago4Q integration
Introducing the OpenSource Maturity Model 22
Conclusions and further work
Our goal was to make FlOSS more appealing to: users, FlOSS communities, industry
OMM is intended to rise the quality of the FlOSS development process
It is different from available FlOSS assessment models
We are now testing and refining the model (for product and process)
More information available at:www.qualipso.org
QualiPSo - Quality of FlOSS products and processes
Etiel Petrinja
Center for Applied Software EngineringFree University of Bolzano/Bozen, Italy
Introducing the OpenSource Maturity Model 2
Motivation
Improve FlOSS quality and the perception of FlOSS quality by users
Improve the quality of FlOSS products Improving the quality of the FlOSS
development process Making FlOSS more appealing to
(software) industry Increasing the number of contributors to
FlOSS projects
Introducing the OpenSource Maturity Model 3
Aims
Provide: customizable quality models (based on
functional and nonfunctional factors) tools to assess the trustworthiness of
FlOSS (static and dynamic measures) fill the gap between theory (soundness)
and practice (practicality) understand the reasons and motivations
that lead software companies to adopt or reject FlOSS, and software developers to develop FlOSS
Introducing the OpenSource Maturity Model 4
Framework of our research
Part of the QualiPSo project; a four years, EU funded project with 18 partners from Europe, China and Brazil
Separate approaches to assess: the quality of the FlOSS product and (A5) the quality of the FlOSS development
process (A6)
Introducing the OpenSource Maturity Model 5
Assessment of FlOSS products
Work done inside Activity 5 of the QualiPSo project
Introducing the OpenSource Maturity Model 6
Research sources
Interviewed 48 “users” in addition to the initial set of 103 (developers, integrators, system administrators, product managers, clearing house members, end users, etc.)
We asked the interviewees to rank the factors they use when they select FlOSS
We analyzed the interviews in a statistically sound way to find the most important factors
Introducing the OpenSource Maturity Model 7
Objectives of activity 5 (product quality)
Objectives: find out what kind of information is out
there to help “users” choose find out what kind of information is
missing check if there is a gap between “demand”
and “supply”
Introducing the OpenSource Maturity Model 8
Product related factors (Product quality)
Introducing the OpenSource Maturity Model 9
Measurement tool for product quality (1/2)
MACXIM measure Java code, UML models development language: Java stores measurement representations in
XML Database (eXist) web GUI
Introducing the OpenSource Maturity Model 10
Measurement tool for product quality (2/2)
Introducing the OpenSource Maturity Model 11
Assessment of FlOSS development process
Work done inside Activity 6 of the QualiPSo project
Introducing the OpenSource Maturity Model 12
Approaches to increase the quality of FlOSS
Identification of best practices of the software development process
Proposal of standard approaches to be used
Measurement of the quality of FlOSS Standard measurement of the quality of
software The de facto standard for assessing the
process – The Capability Maturity Model (CMM-I)
Introducing the OpenSource Maturity Model 13
Similar initiatives in the FlOSS area
Assessment models focused mainly in the “final product”
Available models still lack thorough testing on a large set of products
The available models: Open Maturity Model by Cap Gemini Open Maturity Model by Navica Qualification and Selection of Open Source
Software Open Business Readiness Rating
Introducing the OpenSource Maturity Model 14
Identification of Trustworthy elements - TWE
The key result of interviews and surveys done on FlOSS users, integrators and developers was the identification of trustworthy elements (TWEs)
We were interested in which aspects of the FlOSS development process increase subjects confidence in the quality of the FlOSS development process
TWEs coincided often with key processes identified during the literature research
Introducing the OpenSource Maturity Model 15
Table: Trustworthy elements related to the FlOSS development process
Click to add an outlineAnswer Vote
Maintainability 7,6
Quality of the documentation 7,0
Following the test plan 6,9
(Open) standards used 6,8
Communication channels available 6,3
Quality of the test plan 6,3
Popularity of the product (number of users) 6,2
Number of commits (developers) 6,0
Use of tools, CVS, Bug tracking 6,0
Sponsoring companies and industry 5,9
People on the project 5,9
The license used, possible patents free 4,8
Number of bug reports 4,2
Road map respected 4,2
The development process followed 4,2
Independent institution that checks the development process 4,1
Introducing the OpenSource Maturity Model 16
Leading ideas for defining the QualiPSo OpenSource Maturity Model (OMM)
The model should be designed having incremental steps (three levels)
It should allow a basic entrance level and two improved levels.
It should be aligned with CMMI in order to facilitate its adoption by software companies (FlOSS integrators)
It should be easy to use in order to be acceptable for FlOSS communities and users
It should be based on key TWEs identified
Introducing the OpenSource Maturity Model 17
The OMM Structure
Introducing the OpenSource Maturity Model 18
Use of OMM
The OMM model can be first used as a list of activities that FlOSS projects should follow for improving its quality
A second use case is based on the assessment approach supporting the measurement of fulfilling specific activities
Who can use OMM: FlOSS developers (communities), FlOSS integrators, and FlOSS product users
Introducing the OpenSource Maturity Model 19
OMM tool (1/2)
Introducing the OpenSource Maturity Model 20
OMM tool (2/2)
Introducing the OpenSource Maturity Model 21
OMM tool – Spago4Q integration
Introducing the OpenSource Maturity Model 22
Conclusions and further work
Our goal was to make FlOSS more appealing to: users, FlOSS communities, industry
OMM is intended to rise the quality of the FlOSS development process
It is different from available FlOSS assessment models
We are now testing and refining the model (for product and process)
More information available at:www.qualipso.org