retour d'expérience sur le choix d'une forge logicielle...

38
Retour d'expérience sur le choix d'une forge logicielle / Choosing a software forge [email protected] twitter/identi.ca: jrcetic [email protected] rmll2010 – 07/07/2010

Upload: lekhuong

Post on 13-Sep-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Retour d'expérience sur le choix d'une forge logicielle

/ Choosing a software forge

[email protected]/identi.ca: jrcetic

[email protected] – 07/07/2010

Page 2: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

CETIC, & CELLaVI

• CETIC - Centre of Excellence in Information and Communication Technologies

http://www.cetic.be/

• Applied research & Technology transfer• Software engineering, service oriented technologies and

embedded systems.• PONTE - Efficient [P]atient Recruitment for Inn[O]vative

Cli[N]ical [T]rials of [E]xisting Drugs to other Indications• WP4 Leader – Data Representation & Organisation.• http://www.ponte-project.eu/

• CELLaVI - Center of Expertise for Open Source use in Industrial Applications

http://www.cetic.be/article926.html

• Foster OSS adoption in the Walloon region• By software users (find software) and editors (develop software)

Page 3: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

• Présentation des forges logicielles, de leurs principales fonctionnalités et instances, et d'ordres de grandeur du domaine.

Page 4: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Software Forges Basics

• Collaboration tool for software development• Basic Features

• Code hosting• Mailing lists and/or forums -> communication• Wiki -> documentation• Web and file hosting -> downloads, comm.• bug tracking -> development & feedback

• Software Forge & Forge Instance • Famous hosting platforms

• Sourceforge(230 000), GitHub(919 000), Alioth(889), etc.

• Many free software being developed on forges: • Gnome, Inkscape, aMule, Emacs, etc.

Page 5: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing
Page 6: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Back to PALLaVI – the CELLaVI forge

• Why another forge?• Hosting local software projects

• Won't be lost in large hosting platforms

• Customized services• Technical / Legal / Economic / Training

-> customized forge

https://forge.pallavi.be/

Page 7: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Some selection difficulties

• Many different forges: • As of ending 2008 we easily found 13!• Wide range of maturity, quality

• Little literature even though companies/institutions have been through the process of choosing an existing OSS forges:• Gforge/Fusionforge: http://gforge.inria.fr/, http://rubyforge.org/ ,

http://forge.ow2.org/, http://www.osor.eu/

• Redmine: http://sourcerepo.com/, http://forge.typo3.org/

Name

gForge/FusionForge

LibreSource

Savane

gForge AS

Collabnet

SourceForge Entreprise Edition

Launchpad

emForge

Picoforge

Redmine

Codeplex

InDefero

NovaForge

Page 8: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Selection Method

• Identify strong exclusion criteria

• 13 forges -> 4 forges

• Generic/specific criteria

• Based on CELLaVI goals

• Define notes and weight for each forge

• Use an external method to strengthen the choice:

• QSOS method

• Install

• In a virtual machine with an install script

• Write down the scores for each forge

• Based on information from websites and test

Page 9: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Identify strong exclusion criteria

•Red:

•not available as OSS

•Yellow:

•Savane: close to gForge and stalled development

•PicoForge: low activity at the community level and main contributors being involved in other projects

•Indefero: very (too) young

Forge Déployable LicenceLibre

Maturité ActivitéCommunauté

Plateforme

gForge Oui Oui Mature Haute PHP/MySqL

LibreSource Oui Oui Jeune Haute Java

Savane Oui Oui Mature Basse PHP/MySql

Gforge AS Oui Non N/A N/A PHP

CollabNet Oui Non N/A N/A Java

SourceforgeEE

Oui Non N/A N/A PHP

Launchpad Non Non N/A N/A N/A

emForge Oui Oui Jeune Moyenne Java

PicoForge Oui Oui Jeune Basse PHP

Redmine Oui Oui Jeune Haute Ruby/Rails

Codeplex Non Non N/A N/A N/A

Indefero Oui Oui Très Jeune Haute PHP

NovaForge Oui Non Mature N/A N/A

Page 10: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

FusionForge/gForge - 4.8

Page 11: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

LibreSource - 2.5

Page 12: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

EmForge - 0.28

Page 13: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Redmine - 0.8

Page 14: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Criteria(1/2)

• Transform CELLaVI description into criteria

• API

• Metrics

• Plugin development

• Wiki

• Access Control List

• In order to identify non-functional requirements

• A mix of brainstorming & forges survey

• Identify existing plugins & practices– Visiting projects websites, search for existing surveys

• Ask future users about their tools – What is your preferred wiki/bugtracker/code repository/list

manager/etc?

Page 15: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Criteria (2/2)

• 38 functional• Example:

• 2.3 Remote repository – Nice to Have: – Some projects might have to use an existing

code repository or a repository manager the forge does not provide.

• 20 non-functional• Example:

• 3.1 GNU/Linux distribution supported (Debian, Ubuntu server) – Required:

– Chosen OS is Debian GNU/Linux or Ubuntu Server

Page 16: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Putting weights and scores on criteria

• Three levels – 3 weights:

• Required (w=4): forge removed from the list if not absent

• Important (w=3): important

• Nice to have(w=1) : not required

• Scores from 0 to 3:

• 0 : absent

• 1 : insufficient

• 2 : good

• 3 : excellent

Critère \ Score 0 1 2 3

Indispensable(x4)

Souhaitable(x3) X

Accessoire(x1)

scoreCETIC=∑crit

coef crit×scorecrit

Page 17: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

CETIC method results

Gforge-4/FusionFroge

LibreSource-2.5

EmForge-0.28

Redmine-0.8

0 50 100 150 200 250 300 350 400

Forges comparison

Na

me

Score CETIC

Page 18: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

QSOS Method

• ATOS software• Version 1.6 - 2006• A method for “Qualification and

Selection of Open Source Software”

Page 19: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

QSOS Method

`

1.Use existingQSOS formdedicated to

forges

Page 20: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

QSOS Method

`

1.Use existingQSOS formdedicated to

forges

2. QSOS editorFirefox plugin

Page 21: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

QSOS Method

`

1.Use existingQSOS formdedicated to

forges

2. QSOS editorFirefox plugin

3. Not modified

Page 22: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

QSOS Method

`

1.Use existingQSOS formdedicated to

forges

2. QSOS editorFirefox plugin

3. Not modified

4. comparisonOf radar diagrams

Page 23: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

gForge-4.8/FusionForge

Page 24: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

libreSource-2.5

Page 25: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

emForge-0.28

Page 26: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

redmine-0.8

Page 27: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

gForge-4.8/FusionForge

Page 28: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

libreSource-2.5

Page 29: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

emForge-0.28

Page 30: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Forge Selection Process conclusion

• Remember best score for CETIC method: redmine-0.8

• And best score with QSOS method: redmine-0.8

• Easy choice!

Page 31: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

• pallavi.cetic.be (public forge)• 10 users• 6 OSS projects• 70mb backup

(fichiers/svn/database)

• Well...

https://forge.pallavi.be/

Page 32: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

https://forge.pallavi.be/projects

Page 33: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Joker! (forge.cetic.be)

• Another redmine instance @ CETIC is more successful!

• forge.cetic.be (private forge)• 155 users• 62 projects• 500MB backup

(fichiers/svn/database)

Page 34: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Feedback (1/3)

• PALLaVI forge• Small/Stable• Open Source Software projects• Customized services not yet

implemented– Hard without it to attract new projects

Page 35: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Feedback (2/3)

• CETIC forge

• Quite hard to install/configure

• ruby on rails + montgrel + apache + mod_proxy

• Stable

• Easy theming

• A lot of documentation management/filesharing: european project proposals, shared space with clients

• Even though wiki syntax is a not used to its full potential

• Competition with a plone repository

• Happy users

• Happy admin

• Happy clients – they want their own forge at home

Page 36: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Feedback (3/3)

• Since installation (mid 2009):• No time for migration to new versions

• Users groups, projects nesting would be useful• Calendar, gantt, time management are not well

used (or not at all) • Most-wanted feature:

• Archive a project after its end. And being able to reload it or give it to the client

• Cross-forge migration, similar to:• "Project: Cross-Forge Migration - Summary

– Cross-Forge Migration Tool is a concept for facilitating the migration process of project metadata between forge platforms. It uses SWRL rules for mapping and OWL-S standard for exporting mapping results."

– https://developer.berlios.de/projects/xfmigration/–

Page 37: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Credits/References

• Full description of the forge selection process:“CELLaVI Exploration du monde des forges” 2008-10-20All QSOS, oocalc files and install scripts are available on demand. Send me an email.

• Forge picture: Barry Ennor• http://www.flickr.com/photos/ennor/175515075/• Creative Commons - Attribution-NonCommercial-ShareAlike 2.0

Generic• The OSS Forge Ecosystem: Today and Tomorrow

• Nate Oostendorp, Product Director for SourceForge at GeekNet Inc• http://oss2010.org/drupal5/node/15• Slides: http://j.mp/akhWuO

• QSOS• Forges template: http://www.qsos.org/templates/forge_fr.qsos • QSOS editor Firefox plugin:

http://www.qsos.org/tools/xuleditor-firefox-0.9.xpi

Page 38: Retour d'expérience sur le choix d'une forge logicielle ...2010.rmll.info/IMG/pdf/forges-rmll2010-jr-20100707.pdf · Retour d'expérience sur le choix d'une forge logicielle / Choosing

Thanks!

Contacts: [email protected]@cetic.be

CETIC a.s.b.l.Bâtiment Éole • Rue des Frères Wright, 29/3 • B-6041 Charleroi

(Belgique)T. +32 71 490 700 • F. +32 71 490 799

[email protected]