views:

178

answers:

3

I am looking to start pushing for more Agile processes to be brought into play in the work place and do my best to outlaw cowboy coding as much as possible. I understand many of the different models and am just looking to see which model has the higher uptake (or which parts of the model as well), and in what industry it is being used.

  • Extreme Programming (XP)
  • Adaptive Software Development (ASD)
  • Scrum
  • Dynamic Systems Development Model (DSDM)
  • Crystal
  • Feature Driven Development (FDD)
  • Lean Software Development (LSD)
  • Agile Modelling (AM)
  • Agile Unified Process (AUP)
  • Kanban

If you care to add to your answer with comments about what you don't like, do like or have tried and it hadn't worked, that would also be appreciated.

+3  A: 

Scrum

In my current company, and my previous, we use Scrum. When I hear about other companies using agile processes, it is usually Scrum too. I can't really compare it with the rest, as I haven't used them.

jdv
+3  A: 

Scrum (Variation)

Similar to @jdv's answer, in my past 3 workplaces we used (some sort of) Scrum. Two of these were telecommunication-related. From interviews and talks with fellow developers, it seems that big telcos like Nokia, Siemens and Ericsson are adapting mainly Scrum for SW development, at least in their European development centers. I had an interview at a small financial SW firm a couple of years ago where they were using XP, but I have no practical experience with it, neither with other methodologies.

On the Scrum variations

In one company we used fairly strict Scrum. In the 2nd it was a somewhat watered down version, due to company culture, project peculiarities and personal issues. I.e. we had no single product backlog and product owner, and the sponsors kept setting us irrealistic deadlines, but our project manager was afraid of confrontation, thus he couldn't get them to understand and accept the Scrum way. (AFAIK this has improved somewhat since I left the company.) Also, we did not adjust our velocity properly, so there was always leftover in the backlog at the end of each sprint. Another reason for this was that we were working with obscure legacy code and lots of fairly advanced math, which we were far from understanding well. So there were hidden mines in many of the tasks.

In my current place, we use a mix of Agile practices which still resembles Scrum the most (although we don't call it Scrum). However, we have a mixed group of developers, support personnel and a business analyst, the latter of which work on other projects too (or mostly). Most of the tasks are assigned to individuals at the beginning of each sprint, so team collaboration is fairly minimal. Also, for management reasons, we don't measure and use velocity, which is probably one of the main reasons we can never burn down the whole sprint backlog. The other reason, similar to the earlier project, is working with legacy code.

Péter Török
When you say "some sort of", what isn't Scrum if you don't mind me asking?
Kyle Rozendo
@Kyle, see my update.
Péter Török
Thanks for that. Gives a nice insight into the realistic nature of Agile.
Kyle Rozendo
+4  A: 

Does it really matter? Look at Crystal and read how Alistair says "take the bits that work for you". Anyone who thinks that doing one "true" agile methodology has to use the entire procedures as laid down in the holy book of agile is completely missing the point.

The Agile manifesto is about removing the processes and procedures that get in the way of getting things done, all the polled agile methodolgies are variations on that theme - different ways of allowing yourself to work with the minimum amount of 'crap' whilst still having enough that stops you descending into total chaos.

So, if having mainly Scrum, but with a bit of Kanban-style bins, because that works for your organisation's setup, then go for it.

So the answer to the poll is: look at them all, discard the ones that you think will not work best for you and pick the one that appears to be best for you, then try it, and if the pilot works, implement it. And don't be afraid to tweak it.


For us, we're still looking (too much work to do at the same time!) but we're heading toward Kanban because it is geared around lots of customers demanding projects all the time, so we can more effectively respond to the changing demands on our time. Lots of 'little' projects continually ongoing was a nightmare for our PMs, this should make it a lot easier for them.

gbjbaanb
+1 Thanks. I agree for the most part, but disagree and say "Yes, it really matters." No matter what Agile style you choose to vary, you will always have a base. If not, you will have a great pile of methods that do not fit together at all.
Kyle Rozendo
good point, you've got to start somewhere and the 'recipes' are great for that.
gbjbaanb