Agile methodologies for distributed community driven development
People who have been following the centos-devel list would have noticed a ressurection of the CentOS website Ver2 effort[1]. Which is a great sign, however, the intensity and the enthusiasm shown is about at par with the efforts that went into creating the original plan - a few years back. And the one thing that stands out from that effort was that almost always, we had communication issues between the various people doing the various tasks, there was a clear missing internal-customer, there were parallel efforts for some tasks where the teams didnt know someone else was also doing the same thing, at the same time. This time, it looks like we might be heading back into the same sort of a situation. And I say that mostly since one can already see people trying to solve problems we might not have, as well as trying to expand on the actual deliveryable proposal. Feature creep, from the outside in. Dont get me wrong, I am not being negative about whats going on, its great! The fact that this effort is getting off the ground is very good news, One thing that CentOS really does ned is a better, more functional and easy to navigate website.
Thinking about the task and communication side of things, I was wondering if perhaps we could adopt an agile sort of a development format. Are there any other open source distributed communities who have been able to adopt such a process ? I am sure there must be some. Perhaps we should look at how they did the coordination and how they worked with the idea of the 'development sprint'. Working on a delivery dates by fixed date is'nt going to work out too well, after all this is still people contributing their spare time and a best-effort situation. But on the other hand, we still need something in place that allows the other developers, admin and design people to keep track of each individual task thread. So the thing is, if there are other projects that have done something o this nature, what tools were used ?
I know that mingle ( http://www.thoughtworks-studios.com/mingle-agile-project-management ) has a license that allows us to use it for open source projects without any cost. Also, there is an OpenAtrium install within the .centos.org space, is that worth looking into ? I suspect getting OpenAtrium into a format we like, might need some php side development. And starting a project by developing on the management tool isnt the best way forward. There is also Pivotal Tracker ( http://www.pivotaltracker.com/ ) which is a hosted service. I know they recently announced that they were no longer going to be totally free anymore; but from what I can tell all public projects are still free to host, and memebers are not charged anything to join those projects.
Recently there has also been talk about AgileFant ( http://www.agilefant.org/ ), and there is xplanner ( http://www.xplanner.org/ ). Neither of which I've used. Does anyone have opinions ? Thoughts ?
- KB
[1] Maybe it should be called Website Ver2.1!
16 comments
Would also be a step up over Mantis too ;)
Jira for issue tracking as well might be a project in itself :) What are the import routines like in Jira ?
- KB
Could be used separate from Mantis though just for project management type tasks...
Anyways, any of those projects you mentioned would probably be a decent fit.
Having to work with Jira on a pretty frequent base at customers I have to admit they do a pretty nice bait and switch tactic by luring in open source projects for free. On top of that they have a huge potential vendor lock in when you start using their whole suite.
The problem with frameworks such as Jira etc is that you don't know if it's the tool itself which is a giant drag, or just the way it is setup in your organisation that makes you want to run away from it ..
My choice today is with Redmine and it's giant opensource community, however a badly setup Redmine is as painfull as usinghaving to use Tutos again :)
That is to say, the task at hand should be identifying barriers to communication, and addressing those barriers. Sometimes there will be a technological solution. Sometimes a procedural one.
For example, as a user of CentOS without the chops to contribute, I would look to the home page as a summary of the most current and interesting information that the CentOS leadership has to offer.
I hope I'm not perceived as TOO big a jerk if I would suggest that this is a communication opportunity which is mostly lost. Moreover, I would suggest that this is not a problem which a brand-spanking-new technological solution will solve.
I find wikis generally difficult to navigate, and impossible to search, even if I think I know what I'm looking for. Therefore I often rely heavily on what I can find on the home page (including topics in the menus, of course).
That is--a home page which is updated regularly by a person.
As an illustration of my own failure to find information, there is a Wiki page that includes an up-to-the-instant status report of the current work being done toward CentOS 6 (/QaWiki/6/AuditStatus), but I'll be darned if I know how to interpret it. A simple weekly overview of one or two sentences would go MILES to clear my own confusion, and may even turn an attitude of vague frustration into simple excitement.
At work me and my colleagues also went full-fledged Scrum a couple of weeks ago. We were already using JIRA, but it definitely fits our more agile way of working just fine.
The Apache Software Foundation also uses JIRA AFAIK.
I'm sorry, but I don't know what you mean by 'what are the import routines like?'.
redmine is an interesting proposal. I've always thought of it as being a ruby-trac; but it does look like there is much development happening around the managing-projects in redmin rather than just redmine-as-code-browser. Will look into that, and perhaps you can recommend some how-to-do-it-right bits.
- KB
You make a good point - something that we are all aware of and trying to address; in small byte sized bits but we are working on that. In this specific case, its about coordinating development and making sure we are able to best utilise the resources at hand.
I would expect some of the users to get involved as well, and help build the user-expectation stories.
- KB
We also have a community edition of our enterprise product, Rally ALM. You can find out more information about it at http://www.rallydev.com/agile_products/editions/community/. It is also hosted (on CentOS!) and free.
Also, all things being equal a hosted solution is never as cool as a self hosted one; atleast that way one can protect privacy of info and protect against the hosting agency going away and taking the project with it.
- KB
There are limitations to the community edition product I will admit. It is intended as a starting point for groups to get their feet wet and works generally pretty well with groups of 3-10 devs.
Your comment on hosted versus SaaS on the other hand I would respectfully disagree with. In larger corporations, data leaks have been found to be responsible of internal employees >50% of the time. Responsible SaaS companies, do regular security audits, maintain separate disaster recovery sites, employ strong physical security, and maintain 24x7 coverage.
As for the company going away, you obviously have to do research into the company. I'm not at liberty to tell you how my company is doing, but Inc. has a bit of a view from 2009 (http://www.inc.com/inc5000/2009/company-profile.html?id=200902890), and I can tell you we are up to 220+ employees and growing fast. (We are hiring!)
That said, I know a lot of system operations engineers (myself included) who run their own sites because they can. Just be aware that because you can do something, doesn't mean it is cost effective or time effective to do so.
Keep up the great work,
Tarun
I came by to see what's the status on CentOS 6 and what I can do as a Thoughtworker to help, and I saw this post about agile tools.
I can put you in touch with the Mingle Sales team for a Community license/demo/getting started (I'm the sysadmin for the minglehosting).
I'll write to you separately on the CentOS 6.0 help.
Being able to self host also means having control over data, user info, history and being able to adapt a solution to ones own needs as and when needed. Hosted solutions like this really are only worth investing in by people who either dont know what they are doing or dont have the resources inhouse! Just my opinion in this context.
- KB
We decided to go with openatrium as a basic starting platform. Mingle is just a card stack app, which isnt really what we were looking for.
- KB
www.planth.at
This post has 16 feedbacks awaiting moderation...
31/Jan/2011 08:42:51 pm,