collaborative tools for free software development
TRANSCRIPT
1
INNOVAR PARA GANAR
MORFEOPROJECT
Collaborative tools for Free Software Development
under the ”Attributions-ShareAlike 3.0” Creative Commons License available in http://creativecommons.org/licenses/by-sa/3.0/es
Andrés L. Martínez Ortiz ([email protected])Telefónica I&DMorfeo Office
http://www.morfeo-project.org
Oviedo UniversityApril 16th and 17th, 2009
2
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
© 2002, 2003, 2004, 2005, 2006 Ben Collins-Susman, Brian W. Fitzpatrick and C. Michael Pilato.
© 2005, 2006, 2007 Karl Fogel.© 2009 Andrés L. Martínez Ortiz.
Some rights reserved. This works includes/adapt/remix some contents extract from the followings books:
”Producing Open Source Software: How to Run a Sucessful Free Software Project” copyrigth © 2005, 2006 and 2007 of Karl Fogel under the ”Attributions-ShareAlike 3.0” Creative Commons License.
”Version Control with Subversion” copyrigth © 2002, 2003, 2004, 2005, 2006 Ben Collins-Susman, Brian W. Fitzpatrick and C. Michael Pilato under the ”Attributions-ShareAlike 2.0” Creative Commons License.
This presentation is distributed under the ”Attributions-ShareAlike 3.0” Creative Commons License available in: http://creativecommons.org/licenses/by-sa/3.0
You can find this work at Morfeo Project forge:https://forge.morfeo-project.org/docman/index.php?group_id=7
3
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Contents I (April 16th 2009)
Collaborative tools for Free Software Development I: Introduction. Software Development Etymology. Software Development Mythology. Voices from Software Engineers.
Collaborative tools for Free Software Development II: Free Software Project Management. Starting Free software development Maximizing The Audience … and last but not least SLOC, FAQ, GPL and other acronyms Communication Plan So.... Off we go A Modern Pony Express Remember the past, version it Ant colonies Bees colonies
4
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Contents II (April 17th 2009)
Collaborative tools for Free Software Development III: Tools Gforge Trac Common infrastructure
Mailman Subversion Wiki Blog
Collaborative tools for Free Software Development IV: Morfeo Community. Collaboration principles. Business Models. Organization.
Collaborative tools for Free Software Development V: New generation Integration Issues. Vulcano Architecture. Morfeo / Vulcano Forge.
5
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT Collaborative tools for Free Software
Development I
Introduction●Software Development Etymology.●Software Development Mythology.●Voices from Software Engineers.
6
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Software Development EtymologyCollaborative versus individual
Tools versus processes
Open versus private Software versus Hardware
Development/engineering versus creation/art
7
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Voices from Software Engineers
Then, why do you have to worry about Software Engineering? For the present:
“Most free software projects fail” first line of the first chapter of the book Producing Open Source Software. How to run a successful free software project. © 2005 Karl Fogel.
“Software development projects are in chaos, and we can no longer imitate the three monkeys -- hear no failures, see no failures, speak no failures.” from The Standish Group Report © 2006 The Standish Group.
Modern software developer needs quality-supporting tools to develop large, multithreaded, distributed applications in a timely manager and with adequate quality” from Where is my jetpack?. S Helsen, A. Ryman and D. Spinellis. © 2008 IEEE Software.
For the Future: “In a era of rapid change, those who repeat the past are condemned to a bleak
future” from A View of 20th and 21st Century Software Engineering. Barry Bohem, ICSE 06. © 2006 ACM
8
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Software Development Mythology
weresoft*
M3***
(mythical man-month)
(*) © 2008 Rikk (http://www.flickr.com/people/123rik), under Creative Commons License Attributions 2.0(**) © 2006 DerrickT(http://www.flickr.com/people/derricksphotos), under Creative Commons License Attributions 2.0(***) © 2007 Swami Stream (http://www.flickr.com/people/araswami), under Creative Commons License Attributions 2.0
SpectralProgramming**
9
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Collaborative tools for Free Software Development II
Free Software Project
Management●Starting Free software development●Maximizing The Audience●… and last but not least●SLOC, FAQ, GPL and other acronyms●Communication Plan●So.... Off we go●A Modern Pony Express●Remember the past, version it●Ant colonies●Bees colonies
10
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Starting Free software development
Do you have an idea?
Look around:● www.google.com● http://freshmeat.net ● http://www.sourceforge.net● http://directory.fsf.org
Make it public
11
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Maximizing The Audience
Maintain (define, write and update) you own manifesto
Build you own brand.
Announce clearly the openness of you project
Show the project's features and requirements
Show roadmap, bugs, and development status
12
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
… and last but not least
Share its code for developers
Share you program for users
13
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
SLOC, FAQ, GPL and other acronyms
Program's code should include project documentation
Frequently Asked Questions (FAQ)
Developer guidelines
Screen shots
License●GPL●AGPL●MIT●CC●Apache●.......
14
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
CollaborativeTools
Communication Plan
For usersFor developers
For companies
15
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
So... Off we go
CollaborativeTools
Web siteBloging
Mailing List
Version control
Bug tracking
Collaborativeediting
CommunicationMicro bloging
16
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
A Modern Pony Express
Mailing list features●email/web subscription●digest/message mode●Moderation features●Administrative interface●Header manipulation●Archiving
Spam prevention
●Only subscribers posting
●Moderation
Don't forget
17
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Remember the past, version it
Version everything
Browsability
Control version features
Email changes
Branches to avoid bottlenecks
Define access control
18
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Ants colonies Define your own issue life cycle
Bug tracker /mail integration
Bug pre filtering
19
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Bees colonies
Wikis affections ●Lack of navigational principles●Duplication of information●Inconsistent target audiences
20
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT Collaborative tools for Free Software
Development III
Tools(practical)
●Gforge●Trac
21
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Gforge
Main Features:● Per Community
● News Concentrator.● Projects statistics.● Help request facilities.● Code interchange facilities.
● Per Project● Main site ● Forums● Tracker● Mailing list● Task management● Document Management● Polling ● New● Control Version● Release management
22
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
TRAC
23
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT Collaborative tools for Free Software
Development IV
Morfeo Community●Collaboration principles.●Business Model.●Organization●Basic Collaboration tools●Advanced features (I) training●Advanced features (II): marketplaces●Future features: OSS strategy●Virtual Forges●Communication Plan
24
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Collaboration principles.
●Morfeo is an Open Source Community.●Its partners are
● Universities● Enterprises ● Small and Medium
Enterprises● Technological Centres
●The relationships between members are based on Open/Free licensed of the technology●Every participant of the value chain of any technology developed in Morfeo is member of the community (i.e. integrator)
●Morfeo fosters new business model around OSS.●Morfeo is a social network formed by technological agents involved in R+D+i process.●Our relationship are based on win-win process.●Morfeo members think thar OSS is a strategical option to make R&D+i process in a different way.
25
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Business Models
Open InnovationEnvironment
TechnologyConsumers
26
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Organization
27
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Basic Collaborations tools
Project hosting: Website Blog. Internet domain.
Software Development support: Mailing list Wikis Tracker Version control Documentation management. Task management.
Licensing and IPR management support. OSS promotion. Consortium management.
28
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Advanced features (I): training
29
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Advanced features (II): marketplaces
30
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Open Alliances: Agile Standardization Process● Set of industrial and academic organizations which declare
to share a concrete vision on how part of the infrastructure in the future Internet of Services can be implemented.
● Altogether commit to apply resources to:● Produce Open Standards.● Integrated result in references implementation
Future features: OSS strategy
●Which will be the collaboration principles? ●What collaboration tools are going to be needed?●What will be the collaboration benefits?
Christiensen's law command: proactive strategy of OSS● Initiative about how get competitive advantage of
Software “comoditization”
31
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT Collaborative tools for Free Software
Development IV
The Future: Vulcano forge
●Collaboration principles●Collaboration benefits I●Collaboration benefits II●Architecture
32
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Collaboration principles
Common Architecture Back end: restful services. Front end: light mashup integration.
Technology independence: Framework independence:
Djando / Python Rails / Ruby J2EE / Java
Open alliances approach (agile standard): Common vision / Development effort shared.
33
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Collaboration benefits
Common services catalogue Mailman, subversion, Dekiwiki, Trac already
available. Flossmetric trustworthy services. Lots of new services are coming (doodle like
service, etc..) Scale economy development:
Testing: integration testing, system testing, etc.
Packaging Debian, Mandriva.
34
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Collaboration benefits (II)
Community collaboration model: it makes easy to collaborate. Let everybody become a factory developer. Open Source Communities friendly approach.
Public Open Source forges integration: Sourceforge Savanna Others...
Factory Platform already deployed: http://vulcano.morfeo-project.org
35
INNOVAR PARA GANAR
MO
RFE
OPR
OJE
CT
Architecture
36
INNOVAR PARA GANAR
MORFEOPROJECT
Collaborative tools for Free Software Development
under the ”Attributions-ShareAlike 3.0” Creative Commons License available in http://creativecommons.org/licenses/by-sa/3.0/es
Andrés L. Martínez Ortiz ([email protected])Telefónica I&DMorfeo Office
http://www.morfeo-project.org
Oviedo UniversityApril 16th and 17th, 2009