andrewlocatelliwoodcock

Thoughts on Software

Archive for the ‘Uncategorized’ Category

Waterfragile: Agile development in the Enterprise

with 3 comments

Waterfragile is my term for the most popular development methodology in use in Enterprises today.

Waterfragile is a heavily modified Agile methodology that adopts the best practises of Agile and Waterfall: the flexibility of Agile to adapt to changing (increasing!) requirements with the rigour of Waterfall to deliver promised features on a promised date. Waterfragile teams take on Agile overhead such as scrums, sprints, retrospectives, etc. but do not take on the bits they can’t be trusted with such as responsibility for the release or deciding which features should be included in each release or the deployment schedule. In fact, one of the central tenets of Waterfragile is that feature sets should only ever grow throughout the release cycle. Advanced Waterfragile practitioners refine this further by removing the ability to de-scope features as this focuses the team on developing 20 hours a day to meet the all-important external deadlines.

To do Waterfragile properly, only the development team should do scrums, sprints, etc. (it’s a development paradigm after all, no point wasting business analysis and test team time on this stuff!) and they should be slotted within a fully waterfall analysis, test and release cycle. If you fail to properly integrate the development team into the waterfall cycle, they may well miss their deadlines or skip features. Test teams should be fully prepped to pick up on all small visual defects – there’s no point spending too much time testing deep feature behaviour as that’s what development’s unit tests are for. Test teams should work to their own schedules and not waste time preparing tests ahead of the start of their test cycle so as to maximize their workload throughput.

Remember: what you are aiming for is separation not only of concerns but also of goals and responsibilities – teams should never be measured holistically on the successful delivery of a project but only on their part of it and the person responsible should never be the one making the decision as this can lead to dropping of features, missed deadlines, etc. The ability to add features, never remove them and still hit deadlines is Waterfragile’s killer feature – a minimum feature set and absolute delivery schedule can now be included in PowerPoint presentations about the project and as we all know “set in slide” is simply “set in stone 2.0”.

Done right, Waterfragile delivers all the benefits of Agile (faster release cycles, ability to make late changes to requirements) without losing any of the benefits of Waterfall (feature sets and delivery dates known months if not years in advance), a development methodology that has never failed to deliver even once over the last 40 years.

Written by andrewlocatelliwoodcock

November 14, 2013 at 19:08

If programming languages were actors

leave a comment »

Am probably about to start a religious war here, but what the heck … I was thinking today of how you could characterize different programming languages by well-known actors and here’s what I’ve come up with:

 

JavaScript: Owen Wilson, cool, hip, laid-back, anything goes attitude but not entirely sure I am happy to rely on it – possibly a bit flaky

C#: Jason Statham: a man’s man, will slap you if you step out of line and demands respect but a good one to have on your side and definitely cool and up-and-coming

Java: Bruce Willis: older but still has it if a little slow and creaky looking nowadays

C++: Clint Eastwood: the original man’s man, still got it, tough, terse and a bit scary but definitely looking old now

C: John Wayne: no-one’s quicker on the draw but definitely one for devotees and your Granddad

Ruby: Johnny Depp: Funky, good-looking and definitely got something but also definitely out there with some rather odd stuff thrown in the mix …

Written by andrewlocatelliwoodcock

September 5, 2011 at 19:23

Posted in Uncategorized

Tagged with