RSS

Monthly Archives: May 2011

Answering questions from the User Stories Webinar

Last week I delivered a webinar talking about building good user stories. We had nearly 200 participants from five countries. Thank you to everyone who took the time to register and participate.

I was unable to respond to every question as they were asked in the chat window, and we had to stick to the limited time we had available.

Fortunately we were able to record the questions so I could try to answer them after the event. Here are a sample of the questions with my answers. Where more than one person asked a similar question I have only recorded it once, and there are a few questions that I can’t answer publicly 🙂

There was one question about the work being done on the Agile Extension to the BABOK(tm) – is the working group only looking at techniques or at the broader framework?
We are examining all aspects of how Agile techniques impact on all aspects of business analysis activities. Keep an eye on the IIBA(tm) website for more details as the work progresses.

When we were talking about the Vision Box someone asked: Would going into detail like logo and other not destract the purpose of the vision meeting?
The logo and other details are not intended to be high-fidelity or precise, they are meant to provide a hook for the conversations and creation of shared understanding of the vision. Don’t get bogged down in the exact placement of graphic elements, fonts and Pantone colours – focus on the essence of the vision elements.

The discussion about Personas generated a few questions:
Could you please advise what tools and techniques we should use to ensure that we have identified all the personas?
There is no magic trick to this one, I’m afraid; you need to conduct a stakeholder survey and ask lots of questions – who are our customers, users, clients, victims, other interested parties. A question that I’ve found useful is to ask every participant in the workshops “who else should we be talking to about this thing”.

Should a regulator/ govt law maker be a persona?
In my experience external groups that provide constraints rather then functional aspects generally don’t warrant detailed personas (but they might be referenced in stories such as “as the compliance officer I want …so that we don’t lose our banking license”) if they will actually interact with the product then they deserve a persona and profile.

The Epic Model also generated a number of questions:
A few people questioned the “one person” aspect of the definition of an Elementary Business Process.
The description I use is that an EBP is something done “in one place, at one time, by one person” and it should achieve a specific result for the business. It will normally be part of a chain of events that result in the delivery of value for the consumers of our product or service. There are some EBPs that are not “one person”, often these are “small team” activities where a small group of people are working together to do a job. Some EBPs have no human interaction – these are fully automated activities. Examples of these two types of activity are – replacing a large window in a building (“replace a window” will be an EBP for a glazing company but some windows are too big for one person to replace alone) and the overnight charge for staying in a hotel (undertaken at say 2am every morning by a computerized process).

Someone questioned the amount of detail in the epic model – should this not be left for the detailed user stories?
Here I resort to the consultant’s standard answer “it depends” – if you are able to identify the primary objects and start to understand their relationships at the Epic stage then do so, but be very careful not to get bogged down in the detail. In my experience adding the objects at the Epic level helps clarify the overall understanding of the scope of the work to be done without increasing the amount of work and time needed at this stage in the overall process.

There were a few questions specifically about user stories and acceptance criteria.
Do user stories supplement or replace functional specification documents?
In my experience user stories are a far better tool than functional specification documents, especially when used in this Progressive Elaboration way. Most of the requirements are likely to change over the duration of a project so trying to lock down the detail early on simply results in more wasted effort as we make the changes later in the project.

User stories are deliberately kept light early on, and the acceptance criteria are only added to the story on a just-in-time basis, typically this is done a few days ahead of when the story will be worked on by the technical team. What goes into the acceptance criteria depends on what the team need – it could include screen wireframes or mockups, low-fi data models and other structural aspects. I feel you should always include the test design criteria, ideally in the Behavior Driven Development format.

Someone asked What is the difference between Use Cases and User Stories?
A Use Case is a combination of scenarios about how an actor will interact with the system, normally written in a structured “Actor does … System does …” format. A single use case normally includes multiple paths through the system (primary flow and the alternatives/exceptions) and is often built with the intent of defining the full interaction early in the project. This is far too detailed to be used early in the project.

Each row on the Epic Model could be a placeholder for a Use Case, and that model can be used to provide a list of Use Cases if you are using that approach.

A User Story is much smaller than a Use Case and the two are quite different.  A Use Case covers multiple interaction scenarios, whereas a User Story could cover a single scenario for using the resultant system.

Alistair Cockburn says that “a user story is to a use case as a gazelle is to a gazebo

When should the Acceptance Criteria be added to the User Story?

As late as possible, but not too late 🙂  The concept here is the “last RESPONSIBLE moment“.  There are some things which we need to consider early on in the project – typically these are the Architecturally Significant Non-functional Requirements that are very expensive to refactor if they are not built in to the product from the beginning.  The trick is to consider just enough and just in time without undertaking a lot of wasted effort.

Again – thank you to everyone who participated.  The audio recording and copies of the slides can be downloaded from the Software Education website.

Posted by Shane Hastie

Advertisements
 
Leave a comment

Posted by on May 30, 2011 in Agile, Webinar

 

Tags: , , , , , , ,

Rex Black hosts a free webinar this Friday – Testing Metrics

This Friday at 1.30 (New Zealand) or 11.30 (NSW/QLD) Rex Black will be presenting a webinar entitled Testing Metrics: Project, Process and Product. If you use facts and figures to understand your business or your product, you’ll know how useful they can be. The problem is making sure your metrics are correct and useful. In this webinar Rex looks at how we can use metrics for testing, including which metrics we can use to measure the test process, metrics we can use to measure our progress and what metrics tell us about the quality of a product.

Those of you who know Rex will know that he speaks at several conferences and workshops around the world and has written several books on testing. The most popular of his books, “Managing the Testing Process”, has sold over 25,000 copies and has been translated into several languages. He is President and Principal Consultant of RBCS which is a leader in software, hardware and systems testing as well as past president of the International Software Testing Qualifications Board (ISTQB) and the American Software Testing Qualifications Board (ASTQB) and is co-author of the ISTQB Foundation and Advanced Syllabus. Phew! What a long list!

The other thing you might want to know about Rex is where you can do one of his courses. In Australia and New Zealand Software Education are exclusive partners with Rex so we’re the only organisation that run his courses. Drop Paula (NZ) or Bridgette (Aus) from our sales team an email if you’re interested in finding out more information.

This webinar is one of several FREE webinars which Software Education has hosted. We post all of our upcoming and previous webinars on our site. Some of the webinars are run by our partners (like tomorrow’s webinar) and some of them are done independently by us (these happen once every three months). This week Shane Hastie presented a webinar entitled ‘Building and Working With User Stories”. There were around 300 attendees from 14 different countries, including a handful from the U.S. which is even more impressive when you consider that it was about 5 a.m. for them! We have had some great feedback about the session and are really pleased that it has proved useful for people. At Software Education we’re always looking for ways to help our customers and fix their problems so do get in touch if you want to suggest topics or just tell us what you think in general 🙂

If you attend tomorrow hope you enjoy it (I’ll be logging in as well!) and if not then I hope one of our upcoming sessions is of interest. Thanks.

 
Leave a comment

Posted by on May 26, 2011 in Testing

 

Tags: , , , , , , , , , , , , ,

How technology changes our behavior

I’m a technology aficionado – the latest device, the newest toy, the cool new technologies appeal to me. I subscribe to technology magazines and enewsletters so I know what’s coming next, and am happy to debate the virtues of HDMI over WiMax, Blueray over Bluetooth and why 3G is just too slow! I don’t have to own every new gadget (just most of them), but I make sure I know about them.

Despite this I have always treated computing technology as just a tool – I describe a computer as “just a really fast pencil” and that’s how I’ve lived. Yes, we have four computers and two printers at home (one of the computers is a server), and I’ve had an email address since 1983 (unfortunately not the same one all that time), but the technology has not substantively changed how I run my life.

That changed in August last year when I got a Tablet device (an iPad) – insidiously this book-sized tool has significantly changed my behavior. I purchased it mainly to be a book reader – I’m a avid reader and travel a lot. On a recent trip to the USA I came home with 10kg of new books, and decided that maybe an ebook reader would be a good way to go. I researched the available devices, and decided that the iPad would probably suit me best as it opens up additional possibilities beyond just reading.

I had no idea just how much of a paradigm shift this device actually is. Yes, it’s a pretty good book reader, and you’re not limited in the format of what you read – I have five different reader apps on the device, and can read pretty much any format available today. At last count I had just over 150 books in my mobile library – saves a fortune in excess baggage charges :-). But the book reader has become only one of the uses for the device, and not the driver of change.

What has driven the change in the way I work is the ubiquitous phrase “there’s an app for that” – think of something you are interested in, or want to do, and there’s bound to be an app available to help you do it. Want to convert feet-per-second to Kmh – I use PC-Calc Lite (a fully fledged scientific calculator with over 30 conversions built in). Want to write a WordPress blog entry while traveling at 30000ft, use the WordPress app; want to know the current time in New York, or Bangalore – I use Worldclockr. Want to read today’s newspaper – The NZ Herald app let’s me download the news when I’m in a WiFi zone, and read it later (some of the other news apps use a live Internet feed, I like the offline capability of the Herald). Want to watch a Ted Talk – yep, there’s an app for that too, and this one let’s you download talks for viewing later (a really great way to get value from those endless hours spend in airplanes and airport lounges).

The beauty of these apps is the price – they range from free (most of those I mentioned above) to a few dollars. I think the most expensive apps I’ve purchased are Apple’s Pages and Keynote – and they were less than $20 each. At these prices you don’t bother with “try before buy” – just buy it and see if it does what you want. If it doesn’t do what you’re looking for the write-off is trivial.

This is the secret to the change in behavior – finally the promise of ubiquitous mobile computing is becoming a reality, and it’s affordable. I can check my email in an instant, no waiting for a boot up process. If I want to find directions to somewhere I tap on the Maps icon, type in the address and a comforting blue line shows me where to go, and estimates (pretty accurately) how long it’ll take to get there. If I want to chat with a friend in Israel, or a coworker in Dallas I load Skype and we can talk for hours (almost) for free. Yes, I can do these things on my laptop, but the instant on nature of the tablet means I can do so at a moment’s notice, and the lightweight form factor means I carry it with me without bother, there’s no need to stop and think, I just pick up the pad and am immediately productive, or entertained wherever I happen to be.

The tablet also has some capabilities that the laptop lacks – a built in gps and accelerometer tell me where I am, what direction I’m going in and (one of the best apps I’ve found) Star Walk let’s me hold the device up to the sky and shows me the names and descriptions of the constellations that are visible right now. Yes – I’m a geek, but you’ve got to admit that’s cool.

I remember the first “mobile” computer I worked with – the Osborne One Sewing Machine (they didn’t call it that, but those of us that lugged them around sure did) – I think it weighed 19kg, needed mains power, had 256KB of RAM, a tiny orange & black screen, a keyboard that folded down in the front and dual 5 1/4 floppy disk drives. And it was a steal at a mere $12000! Despite the weight (it was more “lugable” than portable) the freedom to take work to the customer site was liberating. Since the 1980s we’ve gone from lugables to laptops to netbooks and they have all been improvements, but the shift to the tablet factor, accompanied by the availability of a vast range of apps at affordable prices has really triggered a change for me.

I still use my laptop, mainly for work stuff, for bulk storage (150GB of photographs, backed up in 3 places), for presentation delivery and for writing long documents, but I’m finding more and more that I can use the tablet most of the time.

The tablet isn’t perfect, and I’m sure there will be significant improvements over the next few years. Mine hasn’t got a camera (almost reason enough for me to shell out for an iPad 2), and “battery anxiety” is a term I’ve become familiar with, if the battery level drops below 30% I start to get nervous, but I do get a solid 10 hours out of a full charge, plenty enough for a trans-Tasman flight; a USB port would be a good thing, so I can access external storage (those photographs on a portable hard drive). The competing operating systems mean that once you’ve chosen a device you are locked into that manufacturer’s offerings as the apps aren’t compatible between them.

We’re starting to see the low-price app model migrate to other form factors as well, and I wonder what impact this trend will have on the software development industry?

Music companies are having to adapt their business models to cope with digital distribution, and losing control over how their customers consume their music, are software companies facing the same challenge?

Are we going back to the days of the individual software craftsman building a product for a small audience that exactly meets their need, or will software development remain a teamwork activity. Will the software industry split into those building apps and products for the corporate environment using teams of people (probably using Agile techniques) and the solitary developer building a couple of apps, hoping that one will become the next Angry Birds? You can be sure large software organizations are looking at the app marketplace and drooling, will their business models cope with selling an app for $2.99, where they have been used to charging $2999.00?

What do you think, will tablet computing be a new paradigm or is it just the next small step in the evolution in computing?

“Live long and prosper” the tricorder is almost here!

 
1 Comment

Posted by on May 13, 2011 in Uncategorized

 

Tags: , , , ,

Learning from Baboons

I’m sitting on a plane flying from Wellington to Melbourne, and find myself urged to write this blog post.

I’ve just watched a National Geographic video called “Stress. – Portrait of a Killer” that I found really fascinating. It looks at research that has been conducted over the last 30+ years into where stress comes from and how it impacts us.

Stress related illnesses have a huge impact on our society today, and together make up the majority of the illnesses that kill people before their time.

I knew that, and was at least somewhat aware of a lot of the material presented in the documentary.

What leapt out at me were some of the conclusions, and a piece of research done by Robert Sapolsky.

Over 30 years he has followed a number of troops of baboons in the Serengeti and found typical baboon behavior (hierarchy driven, top-down, might-is-right, to win you need to beat everyone around you, etc.) which is equated to the behavior seen in many hierarchical human organizations; the documentary talks about the Whitehall Study that show the same stress responses in 20000+ civil servants in the UK as found in the baboon studies in the Serengeti.

Sapolsky recounts the story of one particular troop of baboons that suffered a tragedy about 20 years ago – illness wiped out all Alpha males in the troop along with many others. The animals that survived were the ones who were more cooperative than combative, perhaps it was because the “nice” baboons were the ones who would be cared for by others when they fell ill.

The fascinating thing is that this troop of baboons went on to become a grouping of “nice guys” where collaboration, grooming & feeding each other and supportive behavior is now the norm. When new males join the troop they bring with them their old hierarchical habits and it takes about six months for them to learn that “that’s not the way we do things here” and to fall in with the cooperative behavior.

Part of Sapolsky’s research involves taking blood samples from the baboons and he has found a significantly lower level of stress hormones in the cooperative baboons than in any other troop he has studied over the last 30 years.

He goes on to suggest that human beings could learn from these baboons and create a better society, in which collaboration, autonomy and cooperation are the norm, and as a result lower our stress levels and improve both the quality and duration of our lives.

Being a staunch Agalist I found this speaks to my fundamental beliefs about why Agile practices work – an Agile team is a collaborative environment, where people support each other and all “win” together, rather than competing for power and privilege. Certainly it has been my experience that effective Agile teams are nicer places to work, with generally less stress and greater levels of happiness.

What do you think – am I just an idealist, or can we turn our organizations into happier, more productive places?

 
2 Comments

Posted by on May 8, 2011 in Agile, Culture

 

Tags: , , , , , , ,

Government employees eat cake and talk Agile!

Yesterday Nicki Jones and Kim Partridge headed down to the Government Test Professionals Forum at Te Papa to tell all of the attendees about the fantastic courses and conferences coming up at Software Education. It was a busy day with over 100 testers and test managers getting together to hear presentations from several testing course vendors. Our very own Shane Hastie gave the post-lunch presentation about the work that has been done at the Livestock Improvement Corporation to transform their team from working in a traditional ‘waterfall’ way to taking an Agile approach.

Shane Hastie speaking in the main auditorium

SoftEd had a great day out, we always love the opportunity to meet our customers and to keep an ear to the ground as to what is new in the world of testing. Even better, we got to spend the day at the wonderful Te Papa and were able to indulge in their fantastic catering…

There wasn't much cake left by the end of lunchtime!

If you would like to hear about our testing courses, it’s really easy to get in touch and in the meantime you can check out the rest of our photos on flickr and our twitter stream. We hope your day is full of cake too!

 
Leave a comment

Posted by on May 4, 2011 in Testing

 

Tags: , , , , , , , , , , , , , , ,

Why so little good Agile?

Today I gave a talk at the  Government Test Professionals Forum conference in Wellington.

I presented a case study about how the Farm Systems Division of Livestock Improvement Corporation have adopted Agile methods.
I told the story of Team Awesome (they choose the name themselves), how their practices have changed and the measurable benefits that have resulted from their new way of working:

  • Massive reduction in residual defects
  • Increased team satisfaction
  • Shorter time to market
  • Increased customer satisfaction

I told the story of how the team collaborates, how all the roles work together. How testing is fully integrated into the flow of work and how the whole team (developers, analysts, product manager, testers) coordinate their activities starting with expressing the detailed requirements for user stories as test design specifications using the Behavoural Driven Development model. They have adopted Agile well, and gained the benefits that all the books talk about.

After the talk I was chatting with one of the attendees and she said that my story was unusual – her experience as a tester on “agile” projects has been uniformly negative – testers as victims of development teams who use “going agile” as a excuse for hacking and not bothering with requirements.

This saddened me; surely we know how to apply these practices properly, don’t management in our organizations understand that agile is about applying the practices in a disciplined way, you can’t just pick the pieces that seem easy? Agile works when the combination of practices are applied together – for example: user stories are a good technique for identifying features and prioritizing the work to be done, but they must then be supplemented by some technique to define the detailed requirements on a just in time basis, just ahead of when the story will be developed. You can’t just adopt user stories and ignore the detailed requirements and testing – that is truly Tragile, but seems to be oh-so-common.

Building software is hard work; building good software takes a concerted team effort, irrespective of the methodology being used. We know this, and have known this for the last 40 years.

Please stop calling these half-hearted implementations Agile – it’s not, it’s just a continuation of the bad practices that many organizations have followed over the years, just with a different brand.

 
1 Comment

Posted by on May 3, 2011 in Agile, Testing

 

Tags: , , , , , , , , , ,