Aral Balkan came onto the stage bursting with energy, almost like a short Tony Robbins and started hitting us with great one-liner quotes about software development. He went on to talk about traditional software development methods and the benefits and drawbacks of using Agile methodologies to replace them.
Here are my notes:
- About 50-70% of IT projects fail (data was a bit outdated but its still bloody high!)
- General trend of not gathering usability and accessibility requirements
- Hardly anyone put their hands up when this was asked - scary!
- Development can be super stressful: stress = unhappiness
- Failure has become the norm in our industry
Usual, typical, standard = failure
- Software development is about managing risk
- High risk approaches - waterfall process
- He went on to produce a brilliant piss-take about the waterfall process - I wish I'd video-ed it!
- Waterfall assumes that there's an end to the development process
- The moment you stop developing your software is DEAD
- To keep momentum you need to keep evolving
- It's a process of refinement
- Low risk approaches-
- N-shot (i.e. iterative)
- Possible solution - Agile methodologies
- Stories - must be non-technical
- Tasks - stories broken up to answer the technical
- Mentioned adding more people doesn't help [Ed note: reference to the Mythical Man Month]
- More communication - more complexity
- Flag dependencies to the customer at the planning game
Complexity is not your friend
- Keep it simple stupid!
Complexity happens, simplicity you have to strive for
- The Truck Factor - what would you do if one of your developers got hit by a truck tomorrow. Would you project would be screwed?
- Bug tracker - remove feature request category - simplify it - just have stories
- Customer is central to the development process - but what about the user?
Respect user effort
- Usability approach to accessibility
- Not checkbox accessibility
Common sense is a dangerous myth
- Can't rely on common sense - all bad design decisions can be traced back to common sense
- The test:
Does your user accept it?
- XP - customer may accept but if user does not then it's a failure
- User testing in development - do it!!
UI is a competitive advantage
- UCDP - User centred development process
- There are pros and cons to having a domain expert (i.e. usability expert) on your team
- Make sure they're not involved in user testing as they're too deep (ed note: unless you've got no one else of course)
No test = religious debates- i.e. you can't prove something works or doesn't work for a user unless you test it!
- Recommended Steve Krug "Don't Make Me Think"
Unfortunately Aral ran out of time and had to hurry to finish. This was a shame as I would've liked to hear more about his closing points. All in all, this was a very engaging seminar.