Gregorio Robles * Libre Software Engineering (was: Re: [ox-en] Conference documentation)
- From: Stefan Merten <smerten oekonux.de>
- Date: Sun, 05 Jan 2003 22:49:21 +0100
Libre Software Engineering
==========================
Gregorio Robles [grex gsyc.escet.urjc.es]
An alternative vision of Software Engineering
---------------------------------------------
Grupo Sistemas Comunicaciones
Universidad Rey Juan Carlos
Móstoles, Madrid (Spain)
Why a new perspective?
======================
The software "crisis"
---------------------
o First appearance of the term: NASA conference in 1968
o (1998) 269 billion euro spent in software projects (in the US)
o only 26% succeeded
o Losses due to errors and delays in software development: 95
billion euro (only in the US)
o Global losses in the whole world: over 550 billion euro
Brooks' law (another one)
-------------------------
There is no development form, in any technology or with any management
technique, that by itself promises an enhancement of one order of
magnitude in terms of productivity, reliability and simplicity.
In "No Silver Bullet: Essence And Accidents In Software Engineering"
o Despite of better languages, OOP, formal methods, (semi)automatic
programming, etc. this law keeps being valid nowadays
Brooks showed the way
---------------------
o Buy, don't construct
o (that is, if possible, don't code at all)
o Fast prototyping, incremental construction, refining
o Great designers
o (correct knowledge about what we do and how we do it, reusing
this knowledge)
The new focus: Libre Software Engineering
=========================================
Libre Software?
---------------
o Reuse components and code from other projects
o Release often / release early (or let anybody have reading access
to CVS to make their own version)
o Meritocracy (small group of respected developers and many smaller
participations)
o (Accumulated experience: measures, data, organization...)
So far...
---------
o The software "crisis"
o Brooks' silver bullet law
o Receipt to overcome this law
o Let's see the alternative model...
Adam Smith, 1776
----------------
** Unable to import figure Robles1.png **
With software
-------------
** Unable to import figure Robles2.png **
Libre Software Engineering
--------------------------
o Based on the big amount of information that Libre software offers
o Is not contradictory with the traditional software engineering
(they are complementary)
o Looks for acquiring experience and evidences from qualitative /
quantitative analysis
Is this a new approach?
-----------------------
Until now it was not possible to be done (proprietary software) or if
it was, it has not been done at such an extent (see NASA, CMM). Mainly
because of the:
o Ways of distributing software
o Commercial secrets
o Closed working groups
o Punctual experiences that have been generalized
Advantages
----------
o Temporal perspective
o No granularity problems
o Microanalysis and macroanalysis
o a new "COCOMO"? New metrics?
o Comparison between technologies
o Comparison between developing methodologies
o Cooperation models, interactions, leadership
o Economic, social, organizative models...
Disadvantages
-------------
o Just starting. It is difficult to foresee its evolution
o Nowadays no good methods or ways of measuring software. Or at
least there are no common accepted
o There are few software analysis methods
o Once you've got the data it is difficult to make statements and
practical conclusions
Methodology: a possible framework
=================================
Our work
--------
** Unable to import figure Robles3.png **
Source Code
-----------
o SLOCCount
o SLOC = (Physical) Source Lines Of Code -> COCOMO
o CODD
o Ownergrep and much more
o Other software metrics
o Functions points
o Halstead
o Object-oriented metrics
Information Exchange
--------------------
o Mailing Lists
o Participation (one-time, several...)
o Time needed for writing / reading
o IRC
o Channels / traffic
o Participation (one-time, periodically...)
Distributed Development
-----------------------
o CVS / BitKeeper
o Commits
o Number lines changed
o Growth
o BugZilla
o Bugs announced
o Number of critical bugs
o Time bugs are open
Other sources
-------------
o SourceForge
o Categorization
o Downloads
o Developers
o License
o Releases
o FreshMeat
o Categorization
o Description
o apt-get
o dependencies
Int and Ind Format
------------------
o XML or SQL
o Human Readable
o Extensible
o Easy to transform into other formats
o Ready for being used by different statistical and other means
analysis tools
Analysis and more
-----------------
o Statistical analysis (correlations, diagrams, graphs...)
o Cluster analysis
o Web interfaces for measuring tools
o Export data to central repository
o Easy to install for independent projects
Conclusions
===========
o Methodical analysis of software development has been historically
ignored due to the proprietary software practices
o Libre software has inherent characteristics to break Brooks'
silver bullet law
o Systematic study of Libre software development may provide
important knowledge about software generation and its nature
o Results may give further insight into socio-economic and
political questions Libre software points to
_______________________
http://www.oekonux.org/