InfoQ

News

Father of Use Cases Says Agile Needs to Get Smarter

Posted by Shane Hastie on Apr 03, 2009

Community
Agile
Topics
Methodologies
Tags
Culture Change

At the Software Education SDC conference in Melbourne, Australia, and Wellington, New Zealand, last week, Ivar Jacobson, author of the original work on Use Cases, the Unified Modeling Language and the Rational Unified Process, said that Agile development needs to “Get Smart”.

He stated that the information technology industry is very fashion conscious, having a tendency to latch onto silver bullets, and listed the following examples:

  • Fifteen years ago it was all about OO
  • Ten years ago it was about components, UML, Unified Process
  • Five years ago it was about RUP and CMMi
  • Two years ago it was about XP
  • Today it is about Scrum

All have good elements – but none is what we need, what we need to do is to Work Smarter. He says “Being Smart is an evolution of being Agile”:

  • Agile means being flexible and adaptable
  • Agile provides simple/lightweight starting points
  • Being Smart is knowing when to go beyond agile
    • Knowing when to follow the rules and when to break them
    • Knowing when to be consistent and when to change
    • Knowing when to grow and when to shrink

According to Jacobson “Smart is Agile++”. He continued to give examples of a number of smart (and unsmart) practices and approaches he has recognized over the years. Some of the Smart and Unsmart practices he identified are:

  • Unsmart with People – viewing processes and tools as more important than people
  • Smart with People – recognizing and understanding that software is built by people, not with processes and tools!

    “A fool with a tool is still a fool but a dangerous fool”
  • Unsmart with Teams – Teams organized into stove-pipe groups with separate responsibilities (requirements, analysis, design etc)
  • Smart with Teams – Cross functional, small (ideally 10 or less people) self organizing teams with the right mix of skills to undertake the work.

    “A software team is like a sports team with all needed competencies to win”
  • Unsmart with Projects – Trying to follow a waterfall approach
  • Smart with Projects – Build a “skinny system” to demonstrate that you have eliminated all the critical risks, then add more capabilities on top of that skinny system as needed.

    “Think big, build in many steps”
  • Unsmart with Requirements – Trying to define all the requirements up front (a constant in software development is that requirements WILL change)
  • Smart with Requirements – Base early decisions on lightweight requirements and detail as and when needed – requirements are negotiable and priorities will change

    “Design your project for requirement changes”
  • Unsmart with Architecture – no architecture is as bad as trying to design everything up front
  • Smart with Architecture – just enough architecture to build the skinny system, architecture must result in executable code

    “Start to build a skinny system, add muscles later in small steps”
  • Unsmart with Testing – having two classes of people – developers and testers. Unsmart projects testers are “the cleaners in the software world” – picking up the mess left by the developers
  • Smart with Testing – the whole team is jointly responsible for quality and testers are first-class citizens

    “Whatever you do, you are not done until you have verified that you did what you wanted to do”
  • Unsmart with Documentation – slavishly filling in a document template because some process rule says it has to be there
  • Smart with Documentation – recognize the “law of nature: people don’t read documents”. Document only what is absolutely needed

    “Focus on the essentials – the placeholders for conversations – people figure out the rest for themselves”
  • Unsmart with Process – continuously latching on to the latest fad, and trying to change everything you do in response to the newest rule book
  • Smart with Process – Don’t throw out the baby with the bathwater:

    1. Start with your existing way of working
    2. Find the pain points
    3. Change one practice at a time

    “People don’t read process books, so focus on the essentials, people figure out the rest for themselves”

 The key element to becoming Smart is to focus on the people, as Jacobson says, and “it all comes down to you”.

Related Sponsor

VersionOne is recognized by Agile practitioners as the leader in Agile project management tools. Companies such as Adobe, BBC, CNN, Dow, HP, IBM, Sony and 3M have turned to VersionOne to help deliver greater value to their customers.

15 comments

Watch Thread Reply

It sounds like Devoxx 08 by David MARTIN Posted Apr 3, 2009 6:31 AM
Links... by Jim Leonardo Posted Apr 3, 2009 10:38 AM
Re: Links... by Amr Elssamadisy Posted Apr 3, 2009 5:52 PM
This is just plain old Agile, I don't see any ++ by Curt Hibbs Posted Apr 3, 2009 5:17 PM
Re: This is just plain old Agile, I don't see any ++ by Edward Garson Posted Apr 4, 2009 2:22 PM
Re: This is just plain old Agile, I don't see any ++ by Rob Elliot Posted Apr 4, 2009 2:59 PM
Re: This is just plain old Agile, I don't see any ++ by Amr Elssamadisy Posted Apr 4, 2009 5:35 PM
So I've been dumb all this time? by William Pietri Posted Apr 4, 2009 6:41 PM
Clarification by Shane Hastie Posted Apr 5, 2009 1:00 AM
Re: Clarification by Alexis Hui Posted Apr 6, 2009 12:36 PM
Re: Clarification by Jim Leonardo Posted Apr 6, 2009 3:01 PM
Re: Clarification by Mark Levison Posted Apr 7, 2009 10:58 AM
Re: Clarification by johnson chuang Posted Apr 13, 2009 8:38 PM
Agile is not a silver bullet indeed, but... by Roberto Fasciolo Posted Apr 17, 2009 5:15 AM
Alec Sharp blogged on the same conference by Shane Hastie Posted May 19, 2009 5:34 PM
  1. Back to top

    It sounds like Devoxx 08

    Apr 3, 2009 6:31 AM by David MARTIN

    It sounds to be the same presentation Ivar Jacobson did at Devoxx 08. Can anyone confirm ?

  2. Back to top

    Links...

    Apr 3, 2009 10:38 AM by Jim Leonardo

    Is it me, or are the links a little fouled up?

  3. I hate to sound critical of someone of Ivar's stature in our industry, but I fail to see how any of the Unsmart/Smart examples are Agile++. They all look like standard Agile to me.

    Am I missing something?

  4. Back to top

    Re: Links...

    Apr 3, 2009 5:52 PM by Amr Elssamadisy

    Yes the links are fouled up - we'll get right on them.

  5. +1

  6. Agreed - all the smart/unsmart points look just like my understanding of Agile

  7. Back to top

    Re: This is just plain old Agile, I don't see any ++

    Apr 4, 2009 5:35 PM by Amr Elssamadisy

    So, are we missing something? It is hard to dismiss someone like Ivar, at the same time, I agree with this sentiment.

  8. Back to top

    So I've been dumb all this time?

    Apr 4, 2009 6:41 PM by William Pietri

    Like others, I'm not seeing what else Jacobsen is suggesting. Even after skimming the recent articles on his blog, it's not clear to me. Is it possible he hasn't seen any good Agile teams in action?

    I've read things from a number of yesteryear's luminaries that make me suspect that they're opining on the Agile movement mainly from what they hear and read, rather than from the kind of direct experience that informed their earlier work.

  9. Back to top

    Clarification

    Apr 5, 2009 1:00 AM by Shane Hastie

    I suspect I missed some of the essence of Ivar's message in my summary of his talk. He made a strong point that much of what he is saying is indeed Agile as it is intended to be, but that he sees a lot of organisations trying to implement Agile by rote, thus repeating the mistakes of the past.

    Agile isn't a silver bullet and he was encouraging his audience (in the Wellington conference mainly government and large company business analysts and project managers) to think carefully about the people factors and not expect to get the benefits by somehow applying a methodology recipe out of someone's book.

  10. Back to top

    Re: Clarification

    Apr 6, 2009 12:36 PM by Alexis Hui

    Agree, I think Shane has uncovered the motivation behind Ivar's talk...

  11. Back to top

    Re: Clarification

    Apr 6, 2009 3:01 PM by Jim Leonardo

    What's most interesting is that he is pretty much saying plainly and clearly "Waterfall is terrible".

    I've been part of an organization that has been trying for several years to pass off waterfall as RUP, these statements coming from Jacobson will really help me make my own case.

  12. Back to top

    Re: Clarification

    Apr 7, 2009 10:58 AM by Mark Levison

    If that's the case how is Ivar any different than James Shore or any one else talking about bad/mediocre agile implementations in recent months?

  13. Back to top

    Re: Clarification

    Apr 13, 2009 8:38 PM by johnson chuang

    I think the point Ivar talked is not about Agile at all, it's about people. "Focus on people" is the smart way.

  14. Back to top

    Agile is not a silver bullet indeed, but...

    Apr 17, 2009 5:15 AM by Roberto Fasciolo

    I've just blogged about this in my blog: believerdiary.blogspot.com/2009/04/agile-or-jus...

    Besides what I've blogged I'd like to add that I think the way Ivar used for expressing that Agile is not a silver bullet is maybe the wrong one, as people could easily get the message that "Agile is not smart".

  15. Back to top

    Alec Sharp blogged on the same conference

    May 19, 2009 5:34 PM by Shane Hastie

    Alec Sharp (one of the conference speakers) blogged about the same talk here alecsharp.com/

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.