I’ve been reading about the various forms and aspects of agile development, but all focused on the corporate environment. I am on a student project team at my university, and I’d like to see if some agile concepts could work in an environment other than ‘everyone works full/part time’.
We do have our own project server, with Subversion for version control, and Sharepoint for documents, wiki, and action items.
Some challenges
- It’s hard enough to arrange a weekly meeting, daily standups are infeasable
- We’re our own customers for the most part (we’re part of a competition, but we can’t work closely with the organizers)
- Not just programmers, also mechanical/electrical team members
- Sharepoint’s action items don’t have the best interface. Are there any extensions available? Would it make sense to switch to something else (like Trac) at the expense of a unified interface for everything non-svn?
- Procrastination. As students, the most natural thing to do is wait to the last minute
- We have our own space, but often, it’s easier to do work elsewhere, and there’s no way to predict if anyone else will be there except by making explicit arrangements
- Other classes (still have to pass them, so total commitment to the team is limited)
Perhaps our team could benefit from more than just agile techniques, so all suggestions are welcome.
EDIT Thanks for all the great answers. I’m going to start asking my teammates how they feel about some of these ideas, and see what they buy into. Should I link them to this question? You can edit your answer or just leave a comment to answer this secondary question.
If you ask me you’re adding too much overhead to your student project. Methodologies are generally only used in corporate environments because of the need to monitor and control human resources (control isn’t the right word – but I needed one stronger than co-ordinate). In a group of students, there’s absolutely no need to bother with anything like that. Adhering to a methodology will only slow you down.
You have identified your challenges. Make your peers aware of them and talk about how best to deal with them. Use methodologies as a source of ideas, but don’t bend to one in your situation.