[Developers] Software development process
Arni Magnusson
arnima at hafro.is
Wed Apr 4 13:08:37 PDT 2012
Thanks, Matthew, for stirring our minds.
As the ADMB Project grows (number of people, number of features, number of
bugs, etc.), this may be a good time to think about whether we can benefit
from adopting certain software development methodologies.
You and Johnoel know more about this than the others. It sounds like you
are not suggesting any specific methodologies at this point, just
encouraging everyone to read and think about them.
---
Generally, the ADMB Project follows the methodology known as
http://en.wikipedia.org/wiki/Cowboy_coding
The main advantages are light overhead and fun. As most of us contribute
to ADMB in our free time, it must be fun. Cowboy coding is at one extreme,
and at the other extreme we have Dilbert coding, with overly complex and
vague methodologies that keep changing. The ADMB Project is moving only
slightly towards the middle ground. Dilbert in chaps?
Automated testing (Buildbot and unit tests) is a good example, where
Johnoel has radically improved the development process - without adding
any burden or requirements on the developers.
The annual developers' workshop is also a key "methodology", where we make
sure things are moving in a sensible direction, in a sensible way. They
also mark the beginning of the release procedure, generate new ideas, and
add to the fun factor.
Version control is a given, and SVN is what cowboys ride. Actually, I have
one suggestion related to ADMB development methodology: to install ViewVC,
so we can browse and diff the repository using a web browser. My sysadmin
has deployed it here at Hafro with success. This is what it looks like:
http://gcc.gnu.org/viewcvs/trunk/
http://r-forge.r-project.org/scm/viewvc.php/pkg/?root=glmmadmb
Thinking about potentially useful development methods/tools doesn't hurt.
My feeling is that the ADMB Project is doing reasonably well, with
developers enthusiastically contributing to different aspects of the
project. Johnoel serves a key role, including quality control, and is
doing a great job.
Arni
On Wed, 4 Apr 2012, Matthew Supernaw wrote:
> All,
>
> Please checkout the follow link:
>
> http://en.m.wikipedia.org/wiki/Software_development_process
>
> I recommend that we develop a formal and concise software development
> plan, it will make our work much easier!
>
> Matthew
>
More information about the Developers
mailing list