Beware cheap imitations!

Over the last month I’ve been hearing disturbing reports about the standard of trainers used by a new ‘low cost’ company based in Dublin. Just today I spoke with someone who attended their Professional ScrumMaster course recently. Her comment was: “It was a complete waste of time, and the trainer had a very poor knowledge of scrum”. I also note their course descriptions are curiously similar to those available on my website… has opened up Scrum training to a wider set of training companies – but the downside is the possibility of ‘cowboy’ trainers looking to make a quick buck. Always look for references if you don’t know the trainers involved and remember, saving a few quid on the training fee can be a false economy – its your time thats the real cost.

AgileTour Presentation Available for Download

Following a great day of presentations, discussion and networking last Thursday, the slides from several AgileTour speakers are now available – I’ll be adding others over the coming days:

Please attribute any slides you use or modify to the original author.

Kanban in IT – 2 day training course Dublin 28/29 Oct

AgileInnovation will be running an intensive 2 day training course on Kanban in Dublin 28/29th October. Full of interactive exercises and simulations, this course explains why Kanban works so well as an agile method and can be applied in areas where methods like Scrum sometimes struggle. We’ll cover the concepts and science behind Kanban as well as all the practices and tools used by practitioners to increase flow in their development processes, reduce waste and develop a continuous improvement culture.

For more details, see our course overview.

AgileTour Dublin 2014 – Program Announced!

AgileInnovation is co-sponsoring the Free AgileTour Dublin conference again this year. We’re planning a full day event with 2 parallel tracks covering expert presentations, experience reports from organisations using agile, and tutorials. Registration is being kindly organised by Frederic Oehl and is now open with spaces limited to 100 attendees (€20 registration fee)

  • Up to 8 organizations discussing their experiences with agile methods, including Scrum and Kanban. Issues they’ve encountered applying the theory to the real world, benefits and drawbacks of agile and things they would do differently if they could turn back the clock.
  • Presentations covering Testing in an agile team, an introduction to agile, tips and tricks for using Kanban and how to develop a continuous improvement culture.
  • And plenty of opportunities for networking and learning about agile from your peers – all for just €20!

Full Conference ProgramRegistration Link

Advanced Product Owner, Kanban and ScrumMaster Certification courses scheduled for September 2014

We’ve just scheduled these really popular courses for September – given the quality of our trainer we expect them to book up rapidly!

Advanced Product Owner (2 days) 16/17 Sept: For organizations already using agile, the PO role can be the hardest to get right. This course is for practitioners who want to deepen and scale their agile implementations – a full course description is available here.

ScrumMaster Certification (2 days) 25/26 Sept: With this course you get a really great foundation in agile and scrum, and a certification to prove it. This is our most popular course, with loads of interactive exercises and a full scrum simulation which is not only fun, but a great way to see how it really works. Details here.

Getting Lean with Kanban (2 days) 10/11 Sept TBC: A comprehensive introduction to the application of Lean principles to IT development and operations, using the Kanban method to drive continuous improvement and create efficient, productive flow in your IT organization. Details here.


Agile for Architects

Concepts underlying emergent architecture and design – an Agile Architecture Masterclass, Dublin June 13th
On June 13th, the Irish Computer Society are hosting an IT Architects Conference in Dublin. AgileInnovation will be presenting a MasterClass on Agile, focusing on Agile principles of specific interest to architects such as emergent design, refactoring and incremental, modular feature delivery. We’ll discuss how architecture fits with the iterative development at the core of agile and how agile can help in the design of high quality, loosely-coupled applications. For details and to register see the IASA website.

EuroStar: Preventing Defects over Finding Failures

Colm O’hEocha, AgileInnovation, will run half-day tutorial on the Testers role in Agile projects at Eurostar November 25th 2014 in Dublin.
Eurostar (the conference, not the cross channel train!) is Europe’s biggest and best gathering for software testers. This year its coming to Dublin for the first time – 4 days of tutorials, workshops, presentations and networking in the Convention Center in the heart of the docklands. AgileInnovation will be presenting a half-day tutorial titled ‘Preventing Defects over Finding Failures’ (now SOLD OUT). Through presentation, exercises and peer discussions, we’ll be exploring the role of the tester in agile environments. See a more detailed description on the Eurostar website.

User Story Abuse!

The User Story has become a de-facto standard tool in Agile software tools, or what the Scrum Alliance calls a GASP – Generally Accepted Scrum Practice. The ‘Story’ originated in eXtreme Programming with the idea that a good way of describing what an application should do would be to tell stories about how and why its used. Then someone (Alistair Cockburn) had the idea of telling these stories from the users perspective, hence they are now known as ‘User Stories’.

But its important to understand the role of User Stories – and the fact that they are NOT an agile tool for specifying requirements or system functions. They are NOT, on their own, the way to capture requirements. The phrase ‘on their own’ is important here – User Stories are only a starting point for a conversation about and the design of a feature. Its not as if you can just hand a bunch of User Stories to a programmer and expect them to code it up.

Ron Jeffries uses the 3Cs to describe how User Stories are used:

  • Card – the card the user story is written on – one or two sentences capturing the essence of the functionality the system should offer. The format used for this has become standardized over the years with many people using the form ‘As a <role> I want to <action> so that <result>’. Ideally, the User Story should present the user or role we’re talking about, the action or functionality they’ll invoke, and the benefit or result they want to achieve.
  • Conversation – The User Story isn’t enough to specify the feature – it just kicks off the conversation between the technical and business folks where we explore the problem and possible solutions. This is where the simplicity and ambiguity of the User Story forces people with different perspectives to collaborate and to innovate. From this conversation, a clear, common understanding of what needs to be done should emerge – this is the point at which I urge teams to document, as lightweight UI wireframes, logic flow diagrams, decision rules, etc how the feature should work. Note that this documentation is happening AFTER the collaboration – it represents the output of the joint design of the solution and enables the learning from the conversation to be shared among a wider group of people – now and into the future.
  • Confirmation – the third C is really the codification of the learning and joint design as a set of acceptance criteria – these effectively represent the requirements for the solution – if we develop functionality that satisfies these criteria then we have successfully implemented the feature. These criteria are usually the starting point for developing Acceptance Tests for the feature (that is not to say the testers only get involved in the User Story at this point – they should be involved in, or even leading, this whole process in going from Card to Conversation to Confirmation).

So its really the output of this process – the Acceptance Criteria, that represent the requirement specification, not the User Story that started the process off.

User Stories represent an example of the Lean principle of ‘Late Elaboration’ – but they also drive collaboration and innovation. They are also really useful for a Product Owner to engage a development team early, to build incremental requirements, to prioritize, defer and de-scope easily. I’ll address these aspects another time.

So how are User Stories abused? How about these gems I’ve come across:

  • ‘As a developer I want to call the CFG_ADM API so that I can set/get compression configuration values’,
  • ‘As a retail customer I want to click the ‘Add More’ button so my basket displays in a pop-up window’,
  • ‘As a UI designer I want to check the order interface for CSS compliance so it works with supported browsers’

These are not stories about users, and the benefits they are looking for from the feature. They are technical tasks, or bits of specifications of how the system should do something (e.g. ‘pop-up’). They don’t describe things that could be easily prioritized by the Product Owner. But most importantly they are not an invitation to a conversation between technical and business people – they are the output of a design process, not an input.

Finally, while user stories are a useful tool in many situations, driving collaboration around business and customer valued features, they don’t every situation. There may still be a need for technical tasks on the Product Backlog, and some system functions may be invoked not by ‘flesh and blood’ users, by by system events, or external system calls. There is little point in using the User Story format for these – horses for courses!