[wplug] open source software development methodology

Alexandros Papadopoulos apapadop at alumni.cmu.edu
Wed Jun 11 02:50:18 EDT 2008


I assume there are a number of people on this list that have
first-hand involvement in free software projects, so I'd appreciate
your experiences, DO's and DONT's on the below scenario.

A loose team of software developers and web 2.0 architects has been
working on creating a web application that could be called a portal, a
wiki, a CMS, a knowledge management system and a social networking
tool all at once. The base layer is mediawiki, with several add-ons
and some glue between them. Development of this suite has been
happening in a quite close circle of people up to now, and no real
software development methods were put in place.

Now we're thinking of opening up the suite for everyone to use and
extend. But we don't know how, from a practical standpoint. We want to
make it as easy as possible for interested third parties to grab a
copy of the code and run a local, independent version with minimum
hassle, without relinquishing control of the production copy of the
code and the stability of the main sites that sit on it (one of them
being http://openmethodology.org).

People with no serious software development experience have come
together and drafted something like this:

1. There is the production server and the development server. Noone
has direct access to the production server.
2. Developers have accounts on the development server, and access to
some version control system that allows them to checkout and merge the
latest changes in the code.
3. When a developer/contributor believes a change he/she submitted
needs to go to the main branch (the next version of the production
codebase), he/she notifies a team of approvers.
4. The approvers have access to scripts that allow the newly submitted
code to be incorporated into the the main development site's suite.
Thus the code is tested for deficiencies, if it breaks anything etc on
the development copy of the web suite.
5. If anything breaks, the production copy of the codebase is copied
back from the production server to the development server, thus
undoing any changes.
6. If it looks good on the development server, another magic script is
executed that copies over everything to the production server.

Now, I see a lot of holes in this, but please remember it has been
drafted by people who know next to nothing about software development.

I'd appreciate your comments/thoughts on the above, and/or pointers to
development documentation/procedures that you might have used and
found reasonably effective.

Thanks

-A


More information about the wplug mailing list