Skip to search.

Breaking News Visit Yahoo! News for the latest.

×Close this window

agile-usability · Agile Usability

The Yahoo! Groups Product Blog

Check it out!

Group Information

  • Members: 2219
  • Category: Other
  • Founded: Jul 11, 2004
  • Language: English
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Real people. Real stories. See how Yahoo! Groups impacts members worldwide.

Messages

Advanced
Messages Help
Messages 2238 - 2267 of 7635   Oldest  |  < Older  |  Newer >  |  Newest
Messages: Show Message Summaries Sort by Date ^  
#2238 From: Adrian Howard <adrianh@...>
Date: Tue Aug 1, 2006 8:37 am
Subject: Re: Subtle User Interaction Experiences
ajh65537
Send Email Send Email
 
On 31 Jul 2006, at 16:30, Jeff Patton wrote:
[snip]
> I think it was Andrew who mentioned that the posture of some
> developers is
> to ask if it was part of the original story - or to suggest putting a
> delight feature in subsequent story.  I work in what should be
> pretty Agile
> environments and this happens a lot.  I didn't look at the Apple
> article,
> but if I get the idea of the feature from reading it, it does seem
> a rather
> simple feature.  And, if implemented once could be easily leveraged
> wherever
> a date appears in a table.  I've stumbled across those sorts of
> feature
> opportunities before and in practice, I routinely see push back from
> developers on implementing them.
[snip]

Wearing my developer hat, if I suggest something go into a subsequent
story I'm not saying "I don't want to implement this", I'm saying
"I'm more than happy to implement this, but don't consider it part of
the story I'm working on at the moment".

When I read "push back from developers on implementing them" I heard
"the developers don't want to implement them" - was I mishearing what
you were saying?

If not, I'm curious what kind of push back you are getting - since my
experience is that agile teams are positively eager to implement
these sorts of feature.

Is it possibly down to an environment where you're not allowed to add/
remove/change stories during an iteration?

Cheers,

Adrian

#2239 From: Adrian Howard <adrianh@...>
Date: Tue Aug 1, 2006 8:47 am
Subject: Re: Subtle User Interaction Experiences
ajh65537
Send Email Send Email
 
Hiya,

On 31 Jul 2006, at 15:00, marc mcneill wrote:

> From the outset of a project I look to drive out "emotional
> requirements".

I'm not sure I understand this statement since...

> Asking how important is it to delight the end users and
> prioritising this as
> a story against the functional stories helps guage the extent to
> which we
> need to focus upon making the UI "world class".  If "delight" has a
> high
> priority this will inform the product development and the way in which
> features are developed.  Having the "delight" story lends itself to
> acceptance critieria within each functional story; having it
> explicitly
> stated rather than something that is shoe-horned in at the end when
> the
> marketing department complains that the product is unusable and off-
> brand.

Seems to imply that "emotional requirements" are very much still
present - and useful.

?

Adrian

#2240 From: Adrian Howard <adrianh@...>
Date: Tue Aug 1, 2006 8:42 am
Subject: Re: Re: Subtle User Interaction Experiences
ajh65537
Send Email Send Email
 
On 31 Jul 2006, at 16:36, PaulOldfield1@... wrote:

> (responding to Andrew)
>
>
> > I am a product manager, and I can honestly say that the experience I
> > described above rarely happens for me.  95% of the time I will get
> > back from the developer(s) that it was not described like that in
> the
> > story or during iteration planning.  We could put it on the next
> > iteration, but it will take time, yada yada yada.
>
> I like William's comments.
[snip]

Ditto.

For me the phrase "Responding to change over following a plan" comes
to mind.

Are the usability changes are getting a harsher reception than
changes in requirement from the customer? Would the client adding a
new row to w FIT test get the same reception?

Cheers,

Adrian

#2241 From: acockburn@...
Date: Tue Aug 1, 2006 11:04 am
Subject: Re: Subtle User Interaction Experiences / Storyotypes
aacockburn
Send Email Send Email
 
<<... Early on I rigorously follow aggressive story splitting and
thinning approaches – like these described by Gerrard
Mesznaros’ in his Story-o-typing approach:
http://springerlink <http://springerlink>
.metapress.com/link.asp?id=h53td341yagcc80w >>
 
A hard to find paper. I found Google has a cached copy of a presentation he made (html of his pdf at http://tinyurl.com/rnrr5  so you can at least read the ideas until Google's cache wears out.
 

Alistair Cockburn, Humans and Technology
801.582.3162     1814 Ft Douglas Cir,  Salt Lake City, UT 84103
http://alistair.cockburn.us/   | acockburn@...
 
==============================================

"La perfection est atteinte non quand il ne reste rien a ajouter,
mais quand il ne reste rien a enlever." (Saint-Exupery)

==============================================


#2242 From: "Dave Churchville" <dchurchv@...>
Date: Tue Aug 1, 2006 3:58 pm
Subject: Re: Subtle User Interaction Experiences
dchurchv
Send Email Send Email
 
--- In agile-usability@yahoogroups.com, Jon Kern <jonkern@...> wrote:
>
> there is not a connection between a development process and adding
> "delight" features.
>
> it has nothing to do with simplest solution mantra -- that is generally
> for coding. This purely is a product management issue. the technical
> team merely provides the time and cost estimate.
>

I agree with this in principle, but in my own experience I've seen the
development team actively resist usability changes with "Agile"
justification, rather than passively recite time estimates.

I suspect there's another factor here...with the rise of test-driven
development and automated testing, perhaps features that aren't easy
to test are not as well received?

User interface changes, especially non-trivial ones, have often been a
difficult thing to push through in the Agile projects I've been
involved with.  Yes, they eventually get done, but I've noticed a
lower energy level from the development team.

I can't really explain this except that user interfaces are often
emotional and reasonable people disagree on the "best" implementation.

So unlike a business rule which is objective, UI changes are often
scorned as "stupid" or "unnecessary".  This is what I call the "messy
human stuff" that is an unavoidable part of the software process.

Thoughts?

--Dave

David Churchville
http://www.extremeplanner.com/blog

#2243 From: "Jeff Patton" <jpatton@...>
Date: Tue Aug 1, 2006 4:22 pm
Subject: user stories - are they mini fixed scope contracts? was: Re: Subtle User Inter..
jeff621
Send Email Send Email
 
--- In agile-usability@yahoogroups.com, Adrian Howard <adrianh@...>
wrote:
> > a date appears in a table.  I've stumbled across those sorts of
> > feature
> > opportunities before and in practice, I routinely see push back
from
> > developers on implementing them.
> [snip]
>
> Wearing my developer hat, if I suggest something go into a
subsequent
> story I'm not saying "I don't want to implement this", I'm saying
> "I'm more than happy to implement this, but don't consider it part
of
> the story I'm working on at the moment".
>
> When I read "push back from developers on implementing them" I
heard
> "the developers don't want to implement them" - was I mishearing
what
> you were saying?

No, you're not necessarily.  I may be guilty of practicing a very
relaxed form of agile.  For very many years I relied on nothing more
than a story written on a 3x5 card and a conversation.  What was in
and out of a story was very fluid - and almost always a matter of the
ongoing conversation between developer and customer.  Statements
like "I don't consider it part of the story I'm working on" when a
customer might consider it part of the story seem to strike an
adversarial posture I'd characterize as push-back.  Possibly a better
statement might be "this seems like a good idea, but my original
estimate hadn't accounted for it.  Should we up the estimate -
possibly jeapordizing other things in this iteration? - or should we
defer this?"  That's more of the convesation/collaboration that I'd
hope for, and one we were able to cultivate for years.  It's a subtle
difference in language.  And frankly it's often the body language of
the developers that communicates more than the actual words they
use.

Adrian, in a subsequent post you said:
"Are the usability changes are getting a harsher reception than
changes in requirement from the customer?"

This is often the case that usability changes do get a harsher
reception - are often met with skepticism.  Usability changes often
don't add functionality - they just make the functionality we have
better.  If one team member is pushing towards implementing more, and
another team member is pushing towards implementing better, there
will likely be tension.  And, I've observed the same skeptical
reception when the usability changes come directly from the customer.

I think focal to this discussion is the idea of how maleable stories
are: are they "contracts for fixed scope" or are they general goals
to be achieved during an iteration where the details of those goals
are to be worked through collaboratively during the iteration.  I've
observed both extremes in practice on agile projects - and variations
in between.

Thanks for posting and responding.

-Jeff

#2244 From: Ron Jeffries <ronjeffries@...>
Date: Tue Aug 1, 2006 4:58 pm
Subject: Re: Re: Subtle User Interaction Experiences
ronaldejeffries
Send Email Send Email
 
Hello Dave,

Thanks for your email. On Tuesday, August 1, 2006, at 11:58:37 AM,
you wrote:

> I agree with this in principle, but in my own experience I've seen the
> development team actively resist usability changes with "Agile"
> justification, rather than passively recite time estimates.

The technical term for developers resisting changes and citing
"Agile" as the reason is "bu11sh1t". There is no such transaction
defined in the Agile lexicon.

OTOH, IMO, providing time estimates is not "passive".

> I suspect there's another factor here...with the rise of test-driven
> development and automated testing, perhaps features that aren't easy
> to test are not as well received?

It would surprise me to see a team that was deeply into testing then
come up with such a counter-Agile behavior as you describe, but
anything is possible.

> User interface changes, especially non-trivial ones, have often been a
> difficult thing to push through in the Agile projects I've been
> involved with.  Yes, they eventually get done, but I've noticed a
> lower energy level from the development team.

I wonder why. Possibly they don't believe the business value is
there. Possibly they are aware of (or experiencing) the frequent
customer disfunction of fiddling the GUI while the model languishes.

> I can't really explain this except that user interfaces are often
> emotional and reasonable people disagree on the "best" implementation.

> So unlike a business rule which is objective, UI changes are often
> scorned as "stupid" or "unnecessary".  This is what I call the "messy
> human stuff" that is an unavoidable part of the software process.

I would be surprised to find the kind of debate you describe going
on in a team that has a Release Plan in front of them, with all the
stories estimated and a date in mind. I'd love to sit down with a
team that had those things in place and still had this problem, to
find out why.

Ron Jeffries
www.XProgramming.com
It is better to attempt something great and fail that attempt,
than to attempt to do nothing and succeed.
--Cookie, Garden Court Chinese Restaurant, Hamburg, MI

#2245 From: William Pietri <william@...>
Date: Tue Aug 1, 2006 5:32 pm
Subject: Re: Re: Subtle User Interaction Experiences
william_pietri
Send Email Send Email
 
Dave Churchville wrote:
> User interface changes, especially non-trivial ones, have often been a
> difficult thing to push through in the Agile projects I've been
> involved with.  Yes, they eventually get done, but I've noticed a
> lower energy level from the development team.
>

Hi, Dave. Are you comparing here with non-Agile teams or just with other
features for the same team?
> So unlike a business rule which is objective, UI changes are often
> scorned as "stupid" or "unnecessary".  This is what I call the "messy
> human stuff" that is an unavoidable part of the software process.
>
> Thoughts?
>

It's definitely my experience that nobody can at first believe quite how
"stupid" users are. It's not that users are really stupid, of course;
they're quite smart. But that's a common first reaction.

When I get that reaction, I like to show people the results of user
testing. Programmers are idealists, so they don't like things that are
in principle unnecessary. But they are also pragmatists. If you show
them how users struggle and how that struggle makes them less happy with
the product, you can get them engaged in hacking human behavior.

William

#2246 From: "Dave Churchville" <dchurchv@...>
Date: Tue Aug 1, 2006 6:02 pm
Subject: Re: Subtle User Interaction Experiences
dchurchv
Send Email Send Email
 
--- In agile-usability@yahoogroups.com, Ron Jeffries <ronjeffries@...>
wrote:
> The technical term for developers resisting changes and citing
> "Agile" as the reason is "bu11sh1t". There is no such transaction
> defined in the Agile lexicon.

You mean there's no "Resist stupid customer requests" practice defined
in XP? Even in the second edition???  What about Agile 2.0? ;-)

To be totally honest, I admit to having occasionally used the "Rule of
3" for requests with apparent low business value.  "Wait until they
ask for it 3 times, then you know they're serious"


> > User interface changes, especially non-trivial ones, have often been a
> > difficult thing to push through in the Agile projects I've been
> > involved with.  Yes, they eventually get done, but I've noticed a
> > lower energy level from the development team.
>
> I wonder why. Possibly they don't believe the business value is
> there. Possibly they are aware of (or experiencing) the frequent
> customer disfunction of fiddling the GUI while the model languishes.

Yes, I think it's a questioning of the business value, to be sure.  As
a dev manager, I also sometimes questioned the business value, and
made sure to have the conversation with the customer.  Nevertheless,
once the customer was committed to a course of action, I always
thought they should get the best implementation we could deliver.

A team with low energy around a feature isn't likely to deliver their
best, in my opinion.  Which can lead to lowered trust, etc.  I'm not
saying this is in any way an "agile" problem, just a problem.

By the way, I like the new "Thank you for your question" header :-)
It's funny how a little thing like courtesy can change the dynamic of
a conversation.  So I thank you for your thank you!

--Dave

David Churchville
http://www.extremeplanner.com/blog

#2247 From: "Dave Churchville" <dchurchv@...>
Date: Tue Aug 1, 2006 6:13 pm
Subject: Re: Subtle User Interaction Experiences
dchurchv
Send Email Send Email
 
--- In agile-usability@yahoogroups.com, William Pietri <william@...>
wrote:
> Hi, Dave. Are you comparing here with non-Agile teams or just with
other
> features for the same team?

Hi William,

No, just with other features for the same team.  ALL teams I've been
involved with seem to have reduced energy for UI changes.

Actually, Agile teams are more open to changes in general in my
experience, but still less excited about the UI ones.  So I'm not
suggesting that this is an Agile problem, but I think it's a problem
that hasn't yet been solved (in my experience) by agile techniques.

> It's definitely my experience that nobody can at first believe quite
how
> "stupid" users are. It's not that users are really stupid, of course;
> they're quite smart. But that's a common first reaction.

Yup.  I had to train myself to think "OK, it *seems* like a stupid
request, but there's probably a real need at the heart of it"

In fact, translating between "user-suggested implementation" and
"underlying pain" has turned out to be one of my more useful skills.

> When I get that reaction, I like to show people the results of user
> testing. Programmers are idealists, so they don't like things that are
> in principle unnecessary. But they are also pragmatists. If you show
> them how users struggle and how that struggle makes them less happy
with
> the product, you can get them engaged in hacking human behavior.

Yes, I totally agree with that as a programmer myself ;-)

I've also been fairly successful at motiviating other programmers
around this issue, but it can be exhausting.

--Dave

David Churchville
http://www.extremeplanner.com/blog

#2248 From: "Robin Dymond" <robin.dymond@...>
Date: Tue Aug 1, 2006 7:07 pm
Subject: Re: user stories - are they mini fixed scope contracts? was: Re: Subtle User Inter..
rdymond1
Send Email Send Email
 
Jeff I think that a "fixed scope user story" is a bit of a misnomer. While we need well defined user story language and acceptance criteria, I find the variation comes in the acceptance criteria. The key problem the user story describes is fixed, how that solution emerges from the team is negotiable.
 
One of the key issues faced by many teams is creating well written user stories. It can be difficult to clearly describe the problem without invoking some solution in describing the feature. Sometimes this may be appropriate, but usually it ends up weakening the user story by restricting the freedom of the team to develop the best solution they can think of. User story writing is definitely a skill, however just as important is good customer engagement to guide the team. Make no doubt about it, there will be uncomfortable times when the team and the customer do not agree. The key is to realize the co-dependence and shared responsibility that both have in maximizing business value. Customers can love their teams, or they can be frustrated by them. I have seen both scenarios, and it often depends on expectation, understanding, and communication as to whether these relationships are successful.
 
If the relationship is not working, then looking at how the fundamentals of the process are implemented (or not implemented) will give important clues as to how to fix the problem. For example, customers HATE surprises when it comes to scope removal from an iteration. Make sure they know of all the scope the team will, or may have to remove, by the mid point in the iteration. If they know work is "out" early, they may work much harder to clear the obstacles or road blocks to completing that work. The team also gets benefit from a midpoint review, it helps focus everyone on "getting to done" in the 2nd half of the iteration.

Usability changes seem to arrive in two ways: - as part of a user story (initial spec), or as customer feedback (iterative). In either case, it will help the team if the value of the changes can be clearly articulated from both the user and the business perspective. Saying this change will make the feature "easier to use" may be true, but does not capture value. Saying the change will save customer service agents "15 seconds per call" or some other measureable improvement quantifies the value of the change for the business. Sometimes you can't provide such a hard measure, but often, especially with systems that are widely used ( i.e. B2C website) a value estimate is possible.
 
cheers,
Robin Dymond
On 8/1/06, Jeff Patton <jpatton@...> wrote:

--- In agile-usability@yahoogroups.com, Adrian Howard <adrianh@...>
wrote:
> > a date appears in a table. I've stumbled across those sorts of
> > feature
> > opportunities before and in practice, I routinely see push back
from
> > developers on implementing them.
> [snip]
>
> Wearing my developer hat, if I suggest something go into a
subsequent
> story I'm not saying "I don't want to implement this", I'm saying
> "I'm more than happy to implement this, but don't consider it part
of
> the story I'm working on at the moment".
>
> When I read "push back from developers on implementing them" I
heard
> "the developers don't want to implement them" - was I mishearing
what
> you were saying?

No, you're not necessarily. I may be guilty of practicing a very
relaxed form of agile. For very many years I relied on nothing more
than a story written on a 3x5 card and a conversation. What was in
and out of a story was very fluid - and almost always a matter of the
ongoing conversation between developer and customer. Statements
like "I don't consider it part of the story I'm working on" when a
customer might consider it part of the story seem to strike an
adversarial posture I'd characterize as push-back. Possibly a better
statement might be "this seems like a good idea, but my original
estimate hadn't accounted for it. Should we up the estimate -
possibly jeapordizing other things in this iteration? - or should we
defer this?" That's more of the convesation/collaboration that I'd
hope for, and one we were able to cultivate for years. It's a subtle
difference in language. And frankly it's often the body language of
the developers that communicates more than the actual words they
use.

Adrian, in a subsequent post you said:
"Are the usability changes are getting a harsher reception than
changes in requirement from the customer?"

This is often the case that usability changes do get a harsher
reception - are often met with skepticism. Usability changes often
don't add functionality - they just make the functionality we have
better. If one team member is pushing towards implementing more, and
another team member is pushing towards implementing better, there
will likely be tension. And, I've observed the same skeptical
reception when the usability changes come directly from the customer.

I think focal to this discussion is the idea of how maleable stories
are: are they "contracts for fixed scope" or are they general goals
to be achieved during an iteration where the details of those goals
are to be worked through collaboratively during the iteration. I've
observed both extremes in practice on agile projects - and variations
in between.

Thanks for posting and responding.

-Jeff



#2249 From: "Jeff Patton" <jpatton@...>
Date: Tue Aug 1, 2006 11:12 pm
Subject: RE: Re: Subtle User Interaction Experiences
jeff621
Send Email Send Email
 

Two themes I’ll pick up on in this last email message – Ok maybe three:

 

Business value – it’s tough to prove business value on lots of things – in particular improvements on user interactions.  Testing at least helps demonstrate it.  

 

William mentioned testing – but I find that lots of folks don’t know what we mean by testing.  There’s a big difference between testing that software is functionally correct and testing that users can effectively, efficiently use it.  

 

Finally Dave mentioned that the UI problem hasn’t been solved by agile techniques – which I agree with.  But, low fidelity collaborative UI testing techniques work very well in an agile context.  I’ve already mentioned Gerrard once in this thread – but I’m going to again, because as it happens he wrote a paper that was presented at this years Agile2006 on adding usability testing to his Agile project.  Since it’s not available on the conference website, I put it here: http://www.abstractics.com/reference/Meszaros-AgileUsabilty.pdf  For those of you who don’t know Gerrard, he’s got a forthcoming book on X-unit testing patterns.  He’s living proof – as I suspect many of you are – that developer, analyst, and usability engineer can co-exist in one body. 

 

Thanks all for your posts.

 

-Jeff

 


From: agile-usability@yahoogroups.com [mailto:agile-usability@yahoogroups.com] On Behalf Of Dave Churchville
Sent: Tuesday, August 01, 2006 12:13 PM
To: agile-usability@yahoogroups.com
Subject: [agile-usability] Re: Subtle User Interaction Experiences

 

--- In agile-usability@yahoogroups.com, William Pietri <william@...>
wrote:
> Hi, Dave. Are you comparing here with non-Agile teams or just with
other
> features for the same team?

Hi William,

No, just with other features for the same team. ALL teams I've been
involved with seem to have reduced energy for UI changes.

Actually, Agile teams are more open to changes in general in my
experience, but still less excited about the UI ones. So I'm not
suggesting that this is an Agile problem, but I think it's a problem
that hasn't yet been solved (in my experience) by agile techniques.

<snip>


#2250 From: Ron Jeffries <ronjeffries@...>
Date: Wed Aug 2, 2006 1:25 am
Subject: Re: Re: Subtle User Interaction Experiences
ronaldejeffries
Send Email Send Email
 
Hello Dave,

Thanks again for your email. On Tuesday, August 1, 2006, at 2:02:36
PM, you wrote:

> --- In agile-usability@yahoogroups.com, Ron Jeffries <ronjeffries@...>
> wrote:
>> The technical term for developers resisting changes and citing
>> "Agile" as the reason is "bu11sh1t". There is no such transaction
>> defined in the Agile lexicon.

> You mean there's no "Resist stupid customer requests" practice defined
> in XP? Even in the second edition???  What about Agile 2.0? ;-)

> To be totally honest, I admit to having occasionally used the "Rule of
> 3" for requests with apparent low business value.  "Wait until they
> ask for it 3 times, then you know they're serious"

Well, from my preferences in Agile, I'm troubled by that. I think
that the dynamics work best when we are quite responsive to
everything they ask for, and when we always express our response in
essentially the same way, something like this:

   We can schedule that story whenever you ask us to. Its cost will
   be <estimate/> days. As you know, we're doing <velocity/> story
   days per week, so we can schedule this story any time you want to
   put <estimate/> story days available for it.

   Looking at the big picture here on the table, we have <total/>
   days of work until the release, and <available/> story days
   between now and that date. We'll work on whatever you want us to,
   and we're as interested as you are in getting the best combination
   of work done by the date. It looks to us, from the big picture, as
   if we have too much to do by the deadline, so we're concerned that
   this story might not be the most important thing to do. But it's
   your decision: we just want to be sure you see the overall
   picture.

This transaction puts the decision where it belongs, as I understand
Agile, namely in the hands of the customer. Their job is to manage
scope to get the project in on time. We want always to make it clear
to them how much is on the table, and it is their job to dispose of
our time as they see fit.

>> > User interface changes, especially non-trivial ones, have often been a
>> > difficult thing to push through in the Agile projects I've been
>> > involved with.  Yes, they eventually get done, but I've noticed a
>> > lower energy level from the development team.
>>
>> I wonder why. Possibly they don't believe the business value is
>> there. Possibly they are aware of (or experiencing) the frequent
>> customer disfunction of fiddling the GUI while the model languishes.

> Yes, I think it's a questioning of the business value, to be sure.  As
> a dev manager, I also sometimes questioned the business value, and
> made sure to have the conversation with the customer.  Nevertheless,
> once the customer was committed to a course of action, I always
> thought they should get the best implementation we could deliver.

Yes ...

> A team with low energy around a feature isn't likely to deliver their
> best, in my opinion.  Which can lead to lowered trust, etc.  I'm not
> saying this is in any way an "agile" problem, just a problem.

It certainly is a problem. The best way I know to solve it is with
open and frequent communication between customers and developers,
with a clear division of responsibility, and a clear picture of the
overall project plan on the table.

> By the way, I like the new "Thank you for your question" header :-)
> It's funny how a little thing like courtesy can change the dynamic of
> a conversation.  So I thank you for your thank you!

Well, I have to admit that it is generally part of my reply template
now, but it does express my real appreciation for the questions and
comments that come along. Thanks for your thank you for my thank
you!

Ron Jeffries
www.XProgramming.com
Do as you will, try to do it well. That's what I do.

#2251 From: "Dave Churchville" <dchurchv@...>
Date: Wed Aug 2, 2006 3:32 am
Subject: Re: Subtle User Interaction Experiences
dchurchv
Send Email Send Email
 
--- In agile-usability@yahoogroups.com, Ron Jeffries <ronjeffries@...>
wrote:
> > "Wait until they
> > ask for it 3 times, then you know they're serious"
>
> Well, from my preferences in Agile, I'm troubled by that. I think
> that the dynamics work best when we are quite responsive to
> everything they ask for, and when we always express our response in
> essentially the same way, something like this:
...
> This transaction puts the decision where it belongs, as I understand
> Agile, namely in the hands of the customer. Their job is to manage
> scope to get the project in on time. We want always to make it clear
> to them how much is on the table, and it is their job to dispose of
> our time as they see fit.

Yes, again, I agree with this in principle as well my usual practice.

My somewhat tongue-in-cheek "wait for them to ask 3 times" is more
indicative of my former "product manager" hat, where I acted as a
proxy for a diverse set of customers.

Thanks for forcing me to clarify my sloppy comment ;-)

--Dave

David Churchville
http://www.extremeplanner.com/blog

#2252 From: PaulOldfield1@...
Date: Wed Aug 2, 2006 4:47 am
Subject: Re: user stories - are they mini fixed scope contracts? was...
pauloldfield1
Send Email Send Email
 
(responding to Robin)
 
I've just picked out two bits of your posting...
 
> One of the key issues faced by many teams is creating well
> written user stories. It can be difficult to clearly describe the
> problem without invoking some solution in describing the feature.
 
> Usability changes seem to arrive in two ways: - as part of a
> user story (initial spec), or as customer feedback (iterative).
 
These both have a whiff about them of problems with the
'conversation' part of "Card, Conversation, Confirmation".  In the
first case there might be an over-reliance on the 'card'.  There
might not; that's for someone closer to the context to judge.
The card should be a placeholder for the conversation; one
should not need to do much more than identify the problem
so we all know what conversation needs to take place.
 
In the second case, there seems to be no allowance for changes
in usability to arise as part of the conversation.  Maybe this isn't
a problem because of the connotations of the word 'changes' in
this context - perhaps usability requirements arise during the
conversation that are not regarded as 'changes'.  Again, it would
take somebody closer to the context to judge.
 
Paul Oldfield

#2253 From: PaulOldfield1@...
Date: Wed Aug 2, 2006 4:47 am
Subject: Re: Re: Subtle User Interaction Experiences
pauloldfield1
Send Email Send Email
 
(responding to all)

>> It's definitely my experience that nobody can at first believe
>> quite how "stupid" users are. It's not that users are really 
>> stupid, of course; they're quite smart. But that's a common
>> first reaction.
>
> Yup.  I had to train myself to think "OK, it *seems* like a
> stupid request, but there's probably a real need at the heart
> of it"
>
> In fact, translating between "user-suggested implementation"
> and "underlying pain" has turned out to be one of my more
> useful skills.
I'm beginning to suspect, from this thread, that basic
requirements elicitation skills are in short supply.  Requirements
gathering and analysis used to be a specialist set of skills.  If
we're expecting our teams to gather the requirements directly
from the customers, then the team should have theses skills.
 
For example, we will often get a requirement phrased as a
solution.  From our point of view, the solution is out of kilter
with the rest of the design.  We may think the requirement is
stupid as a result.  Yet there will be an underlying requirement.
We just need to ask why the customer wants what they asked
for; what would this do for them.  Asking why is the easy bit;
spotting the design masquerading as requirement is the bit
that takes skill.
 
Dave has picked up on this, but he says "I had to train myself...".
Why?  There's something fundamentally wrong with our
industry, and I'm not sure we're addressing that problem yet.
 
Paul Oldfield

#2254 From: "Andrea Pilati" <andrea.pilati@...>
Date: Wed Aug 2, 2006 2:12 am
Subject: Re: What would you do?: Affected User Reqs
apilati2000
Send Email Send Email
 
We have that same situation with a client, who believes we're
"re-designing" the site, yet still wants the old site/process/user
interface.

What we did was present the task flows absolutely separated from the
IA/user wireframes, and kept impressing upon them that the
requirements (i.e. use case flows) didn't necessarily represent the
interface. They seemed to calm down, and we've been working really
closely with the IAs to track the requirements being met in the
interface. We're only part-way through this process, but at least the
swords aren't rattling, yet.
I know it's hard to step back from the UI, for most biz clients 'cause
they're familiar with the interaction, not necessarily the task but
carefully scalpel-ling the reqs from UI has worked for me
(sometimes!). I always come in as the conduit - holding the current
user's hand (your client) and then gently (!) guiding them towards
better - which I totally agree with everyone, you can do through
testing, and good quantitative results.

It sounds like you're being hit with both ends - business and user
expert. I don't envy you, that's for sure!

take care,
a

#2255 From: William Pietri <william@...>
Date: Wed Aug 2, 2006 3:50 pm
Subject: Re: Re: Subtle User Interaction Experiences
william_pietri
Send Email Send Email
 
Dave Churchville wrote:
> No, just with other features for the same team.  ALL teams I've been
> involved with seem to have reduced energy for UI changes.
>
> Actually, Agile teams are more open to changes in general in my
> experience, but still less excited about the UI ones.  So I'm not
> suggesting that this is an Agile problem, but I think it's a problem
> that hasn't yet been solved (in my experience) by agile techniques.
>

Interesting. On a project a couple years back, the XP Customer role was
filled by someone whose background was in UI design. I asked him if his
experience matched yours. His reply is so relevant that I'm going to
quote it at length:

James Home wrote:
> it wasn't true for us, but it's rare that an interface designer has
> the opportunity to be as involved as I was with shaping engineering's
> opinion on what is and isn't important.  the five of us worked
> together pretty seamlessly, unlike most teams where we'd be insulated
> by a product manager gasket on one side and an engineering manager
> gasket on the other.  I have come to believe that those gaskets
> introduce serious social failure points in the communication of an
> interface requirement.  it too often works like this:
>
> - interface designer comes up with a feature that will make some part
> of the application's interface better.  it's a change, but it will
> genuinely improve the user experience.
>
> - interface designer and product manager have great meeting discussing
> the new feature.  product manager notes that the new feature isn't in
> the schedule, but they'll figure something out.
>
> - product manager does a mediocre and self conscious job of explaining
> the feature to the engineering manager, further straining their
> already tenuous relationship.  very little conversation about the
> feature itself happens; the focus of the discussion is on how the
> feature isn't in the existing schedule, and that they really just need
> to get something out the door.
>
> - engineering manager presents the feature to engineering as yet
> another course change by the product team.  no discussion of the
> feature itself takes place, other than a functional description.
>
> - without any sense of the context that led to the proposed feature,
> the engineer sees another "stupid request", and has no enthusiasm for
> implementing it.

This certainly fits in with one of my frequent observations on XP teams:
by keeping in close proximity and constant communication, you don't just
improve the sharing of information; you come to share values, too. On
the team he's talking about, it was a consumer-focused product at a
startup, and the product manager cared passionately about the user
experience, due to both his nature and its critical business importance.
And all of us came to appreciate and care about that, too.


For the resistant teams you've seen, could you tell us more about the
communication flow? E.g., where the product managers sat in relation to
the developers?


> I've also been fairly successful at motiviating other programmers
> around this issue, but it can be exhausting.
>

Interesting. I completely agree that it's an education. I was lucky
enough to do a bunch of general tech support in high school and college,
so I developed an early appreciation for usability. Perhaps in addition
to getting them to watch usability testing, we should have developers
take turns doing support for the products they write.

William

#2256 From: William Pietri <william@...>
Date: Wed Aug 2, 2006 3:55 pm
Subject: Re: user stories - are they mini fixed scope contracts? was...
william_pietri
Send Email Send Email
 
PaulOldfield1@... wrote:
> The card should be a placeholder for the conversation; one
> should not need to do much more than identify the problem
> so we all know what conversation needs to take place.


Absolutely. One of my clients is just adopting the planning game. They
had a painful experience last week where the developer worked for a few
days from some notes on a card; on Thursday they discovered that he went
in the wrong direction, and some of his work needed to be scrapped.

They are having a hard time accepting that the solution to "not enough
information on the card" is to put *less* information on the card, not
more. They'll get there, but it's a struggle.

William

#2257 From: "Jeff Patton" <jpatton@...>
Date: Wed Aug 2, 2006 4:20 pm
Subject: design or requirements was: RE: Re: Subtle User Interaction Experiences
jeff621
Send Email Send Email
 

Paul,

 

From your message below:

“For example, we will often get a requirement phrased as a solution.  From our point of view, the solution is out of kilter with the rest of the design.  We may think the requirement is stupid as a result.  Yet there will be an underlying requirement.  We just need to ask why the customer wants what they asked for; what would this do for them.  Asking why is the easy bit; spotting the design masquerading as requirement is the bit that takes skill.”

 

You’ve hit on the issue that the most perplexing for me.  When I’m working with people on requirements one of the first things I’ll do is write on the whiteboard: “requirement = decision” – then explain that the requirements are the decisions we make in response to what we understand about the problems we’re trying to solve.  For any problem understanding, there’s a number of possible solutions… the one we decide on is the one we’ll call the “requirement.”  Since humans are fallible, we don’t always make the best decisions.  Sometimes we find we made a wrong decision – especially after we start to see and try out the solution.  Requirements change when we realized there’s a better solution to our problem, or we got the problem wrong to begin with.  

 

Decisions pile up on top of other decisions.  Given a business goal we decide on the work that employees can do to help the business reach it.  Given that work we decided on software tools that can best help them – some existing, some new.  Given a decision to build a new tool we decide how the employees will likely use it.  Given that decision on usage we make more detailed decisions on screens, navigation, and widgets.  Given those decisions we make specific decisions on layout, color, font, etc.  Along that continuum of decision, I struggle with identifying which were actually required – or “requirements.”  I could unwind this stack of decisions all the way back to the source.  I could decide I made an error in the business goal, or how we intended to reach it.  Certainly that invalidates all the subsequent decisions.  I believe we start using the word requirement as a “tag” for a decision we don’t want to question or unravel – and especially when we intend to delegate the execution of the decision to someone else.

 

Hearing the statement “design masquerading as a requirement” is interesting to me.  I believe the process of considering solutions to a problem and deciding on a best one /is/ design.  So, in my mind the product of design /is/ a requirement.  We simply start calling it a requirement when we don’t want it unraveled and to start delegating its execution to someone else.  So, all requirements are the result of design – they’re not masquerading.  By calling it a requirement the person who called it that was telling you “I’ve done the design work, don’t question it… it’s a requirement.”  What I really hear in the statement “design masquerading as a requirement” is “I don’t like the design decision you made.  What was the problem you were trying to solve so I can validate your design or consider alternatives?”  Which I think is always a good question to ask – not just when making the choice to add a delight feature to a product – but all the way up the stack.

 

Hope that all makes sense.

 

-Jeff


#2258 From: PaulOldfield1@...
Date: Wed Aug 2, 2006 1:21 pm
Subject: Re: design or requirements was: RE: Re: Subtle User Intera...
pauloldfield1
Send Email Send Email
 
(responding to Jeff)
 
> ...Hearing the statement “design masquerading as a requirement” is
> interesting to me.  I believe the process of considering solutions to
> a problem and deciding on a best one /is/ design.  So, in my mind
> the product of design /is/ a requirement...
 
This is one point where I like using UML's Use case symbols - you
know, the oval one with the stick man outside.  That is a Use Case
for 'our system'.  I think of 'our system' as being the inside of the oval.
Clearly the stick man is outside the oval.
 
Now what I do is draw a larger oval, encompassing 'our system' and
the stick man.  I call this 'our business'.  There's a stick man outside
this, who might be 'the customer for our business', but our first
stick man is inside this second oval.  We could call him 'our
business worker'; somebody who works inside 'our business'.
 
This sets me up nicely to make the distinction between 'our business'
as a system that has requirements and design, and 'our system'
that has requirements and design.
 
Now the design of 'our business' drives the requirements of
'our system'.  That's legitimate.  What we want to avoid is being
given the design of 'our system' masquerading as requirements
for 'our system'.
 
One question that people have been addressing recently is the
question of getting feedback from what we learn as we design
'our system' into the design of 'our business'.  Mary Poppendieck
reports from Sweden that some companies over there are
building the 'business system' (i.e. manual processes etc.)
and the automated system ('our system') together as a
holistic, integrated entity.
 
Why does it matter, if the design needs to be done anyway?
Because design isn't easy, and design decisions should
be made by those in full posession of relevant facts and
with best knowledge of options for a solution.  If we're
deciding on technical design, leave it to the system architects
and technical designers.  If we're designing business processes,
leave it to the business architects and business designers.
 
I hope that picture helps you make sense of a tricky terminology
issue, and my standpoint on that.  It might also help us
identify points where we differ, if any remain.
 
Paul Oldfield
 
 

#2259 From: "Jeff Patton" <jpatton@...>
Date: Wed Aug 2, 2006 7:20 pm
Subject: RE: design or requirements was: RE: Re: Subtle User Intera...
jeff621
Send Email Send Email
 

Hi Paul,

 

I think I understand the basics pretty well – although the fuzziness of the real world doesn’t seem to be well represented in the crisp edged ovals of a UML: diagram.

 

I think in the picture you’re sketching with words below you draw the business worker pointing to the usecase as inside the system oval.  Does that imply that deciding who the workers are and what they do is part of the design of the system?  And does that make that the responsibility of the developer?  Or is supporting specific workers to use the system to do specific tasks part of the requirements of the system?  If supporting specific workers doing specific tasks is part of the requirements – what about the specific steps of the tasks and the specific user interactions of the tasks?  Are those things designed?  By who?  Agile customers or developers?  And how much of that design happens after the story card is introduced, and how much happened before it was written? 

 

You do a good job below pointing out that there’s lots of design going on and lots of different kinds of designers: system architects, technical designers, business architects, business designers.  Which I think makes the point I was getting at – design happens at lots of levels and the results of a design can be tagged “requirement” and fed forward.

 

It’s that tagging a thing as a requirement that makes me bristle.  It smacks of waterfall thinking – hints at irrevocable immutable decisions – seems to suggest that that since they’re requirements, they aren’t questionable.  But, I think my allergy to the word requirement is my own problem.  ;-) 

 

I think the point I’m trying to make – and a point I know you understand – is that what’s written on a story card is a decision for some capability in the software that the customer believes they need.  It’s their best decision based on their understanding of the problem.  It may vary in precision – low precisions like “customer enters album title in search box to see a list of albums that match the title” to very high precision like “place a 40 x 40 pixel image of the album cover next to album listing in the search return.”  Now whether an album cover picture should be in the search return or not, and exactly how big it should be if we choose to place it there are decisions that need to be made.  Things like what side of the UML oval those decisions fall on hurt my head to think about since at the end of the day no one’s buying UML diagrams [unless you work for Accenture].  Things like whether they should or shouldn’t have been made before the story card was written also hurt my head – since at the end of the day no one’s buying story cards either.

 

So wrapping back to my original point, the label “design decision” or “requirement” is a subjective one – and the choice to use one term or the other doesn’t change what it is – rather it implies a degree of immutability and/or implies who should or did make the decision – and in the case of the phrase “design masquerading as a requirement” who shouldn’t have made the decision.  Those are interesting concerns if you’re trying to enforce a process – but less interesting if your ultimate concern is the quality of the finished software.

 

Hope I didn’t get to edgy with those opinions.  ;-)

 

Thanks,

 

-Jeff

 


From: agile-usability@yahoogroups.com [mailto:agile-usability@yahoogroups.com] On Behalf Of PaulOldfield1@...
Sent: Wednesday, August 02, 2006 11:21 AM
To: agile-usability@yahoogroups.com
Subject: Re: [agile-usability] design or requirements was: RE: Re: Subtle User Intera...

 

(responding to Jeff)

 

> ...Hearing the statement “design masquerading as a requirement” is

> interesting to me.  I believe the process of considering solutions to

> a problem and deciding on a best one /is/ design.  So, in my mind

> the product of design /is/ a requirement...

 

This is one point where I like using UML's Use case symbols - you

know, the oval one with the stick man outside.  That is a Use Case

for 'our system'.  I think of 'our system' as being the inside of the oval.

Clearly the stick man is outside the oval.

 

Now what I do is draw a larger oval, encompassing 'our system' and

the stick man.  I call this 'our business'.  There's a stick man outside

this, who might be 'the customer for our business', but our first

stick man is inside this second oval.  We could call him 'our

business worker'; somebody who works inside 'our business'.

 

This sets me up nicely to make the distinction between 'our business'

as a system that has requirements and design, and 'our system'

that has requirements and design.

 

Now the design of 'our business' drives the requirements of

'our system'.  That's legitimate.  What we want to avoid is being

given the design of 'our system' masquerading as requirements

for 'our system'.

 

One question that people have been addressing recently is the

question of getting feedback from what we learn as we design

'our system' into the design of 'our business'.  Mary Poppendieck

reports from Sweden that some companies over there are

building the 'business system' (i.e. manual processes etc.)

and the automated system ('our system') together as a

holistic, integrated entity.

 

Why does it matter, if the design needs to be done anyway?

Because design isn't easy, and design decisions should

be made by those in full posession of relevant facts and

with best knowledge of options for a solution.  If we're

deciding on technical design, leave it to the system architects

and technical designers.  If we're designing business processes,

leave it to the business architects and business designers.

 

I hope that picture helps you make sense of a tricky terminology

issue, and my standpoint on that.  It might also help us

identify points where we differ, if any remain.

 

Paul Oldfield

 

 


#2260 From: PaulOldfield1@...
Date: Wed Aug 2, 2006 4:25 pm
Subject: Re: design or requirements was: RE: Re: Subtle User Intera...
pauloldfield1
Send Email Send Email
 
(responding to Jeff)
 
And for others, sorry, this is a bit of an epic.  I think it's worth
writing, but feel free to differ.
 
> I think I understand the basics pretty well – although the fuzziness
> of the real world doesn’t seem to be well represented in the crisp
> edged ovals of a UML: diagram.
 
I've had this discussion several times, and that's a useful
observation nobody has made before.  (I'd dig out the old e-mails
if I hadn't lost them in a disk crash...).  Yes, a Use case expects
a crisp edge, a well-defined boundary to the system, at least
by the time we finish writing it.  With user stories this edge starts
fuzzier; we don't get the crisp definition until the acceptance
tests are written if we use a typical agile approach.
 
> I think in the picture you’re sketching with words below you draw
> the business worker pointing to the usecase as inside the system
> oval.
 
We have nested ovals; the 'business worker is outside the inner
oval but inside the outer oval.  The outer oval represents the business
and all its systems (manual and automated).  The inner oval
represents the IT system; specifically that IT system we are building.
For an enterprise model, the outer oval could contain many nested
ovals. So the business worker is inside the business but outside
the IT system.
 
> Does that imply that deciding who the workers are and what they
> do is part of the design of the system?
 
It's part of the design of the outer oval - it is business design, but
not IT system design.  Remember, the two ovals represent
different systems, that are nested.  So this is design of the outer
system.
 
> And does that make that the responsibility of the developer?
 
I assume here you are talking about the developer of the IT system,
in which case, no.  Not unless this developer is also doing
business process engineering.
 
> Or is supporting specific workers to use the system to do specific
> tasks part of the requirements of the system?
 
Part of the requirements of the inner system, the IT system, Yes.
 
> what about the specific steps of the tasks and the specific user
> interactions of the tasks?  Are those things designed?  By who?
>  Agile customers or developers?  And how much of that design
> happens after the story card is introduced, and how much
> happened before it was written?
 
If the steps in the Business Worker's tasks are totally manual,
then they are solely the responsibility of the Business Designer
(or equivalent).  If they are automated, then they become a
requirement on the inner, IT system.  Negotiating the requirement
is best done by collaboration between the designers of the two
systems and the person who is going to have to use the system;
possibly with a few other roles thrown in.  Of course, these roles
can be combined in various ways.  The user of the IT system might
also be acting as designer of the business system, for example.
 
> It’s that tagging a thing as a requirement that makes me bristle. 
> It smacks of waterfall thinking – hints at irrevocable immutable
> decisions – seems to suggest that that since they’re requirements,
> they aren’t questionable.  But, I think my allergy to the word
> requirement is my own problem.  ;-)
 
I hear what you're saying, and agree with the sentiment.  Yet
at some point, the decision becomes (relatively) irrevocable,
immutable.  The trick is to ensure this doesn't happen until
they don't need to be questionable - until all questions have
already been asked and answered.  Even when working with
Use cases we can ensure the conversations that need to happen
have happened before the use case is 'done'... provided we
don't get a PM who demands sign off before he will sanction
commencement of design  :-(   User stories are *expected* to
have the card, conversation, confirmation lifecycle.
 
> ... low precisions like “customer enters album title in search
> box to see a list of albums that match the title” to very high
> precision like “place a 40 x 40 pixel image of the album cover
> next to album listing in the search return.”  
 
I immediately think "search box" is design.  Leave it for the
conversation.  As for the high precision example, I'd need to
ask a few questions to find out what is wanted; that's
almost all solution.  It might turn out to be the right solution;
ideal for what the user wants.  Yet we could choose to accept
these stories as-is, because they are placeholders for a
conversation.
 
<aside>
> ... no one’s buying UML diagrams [unless you work for Accenture].  
They've moved on from powerpoint, then?  ;-)
</aside>
 
In reality, things like whether to show a representation of the album
cover are open to negotiation.  We tell the business what's feasible
and what it costs; they tell us what they need, which of the
feasible options they prefer after consideration of the cost, and
what priority to put on this compared to their other requirements.
It doesn't matter where the ideas come from; a good idea is a
good idea from any source.
 
As to when to make the decision - the best time is just in time.
If we make the decision any earlier two significant things come
in to play.  First, we may get better information later.  Second,
we need to record the decision because we aren't going to
act on it straight away.  Okay that isn't strictly true, but we can
only hold a few decisions in memory.
 
> Hope I didn’t get to edgy with those opinions.  ;-)
 
Not by my reckoning.
Thanks.
 
Paul Oldfield
 
 

#2261 From: "Dave Churchville" <dchurchv@...>
Date: Wed Aug 2, 2006 8:28 pm
Subject: Re: Subtle User Interaction Experiences
dchurchv
Send Email Send Email
 
--- In agile-usability@yahoogroups.com, William Pietri <william@...>
wrote:

> For the resistant teams you've seen, could you tell us more about the
> communication flow? E.g., where the product managers sat in relation to
> the developers?

I'll share 2 of these situations (I've got more than that, but that
would be too much writing ;-) )

One of these teams worked on an internal call-center type of
application that was used constantly, and small UI changes actually
had a rather significant impact on productivity.  A single extra
confirmation dialog or even an extra mouse-click was a pretty big deal
for the end users of the application.

However, the "customer" was really the call center director, who
rarely suggested specific UI changes to streamline workflow, but
rather asked for additional features to reduce errors, allow better
tracking or distribution, etc.  The end users and the director were
all in a remote location and timezone (East/West coast).

As "customer proxy", I spent a lot of time on the phone, in
web-conferences, and periodic cross-country trips to make sure we
understood the user needs as they started to expand.  I also included
the development team on relevant phone calls to make sure they were
hearing requests straight from the customer (not just from me).

So the typical flow was:

1. Customer calls me to ask about a new feature: "Can we have a list
that shows X?"
2. I'd try to get at the heart of it: "What will the new list allow
you to do?  What problem are you trying to solve?"
3. Customer answers: "Well, we're making errors when doing Y, and I
think if we had a list of X, we'd make fewer errors".
4. I confer with the team to come up with a solution for the issue,
which might or might not be "a list that shows X", and present to the
customer for approval and validation.
5. We schedule the feature for a release and follow normal agile
processes from there.

The other major resistant situation was for a commercial product,
without direct customer contact (startup = no real customers).  So we
worked with the VP of Product Development who was effectively the
Product Manager since the Marketing dept. wasn't very helpful.

So naturally most of the input was subjective, and not validated by
real customers. We used an Agile process, minus the real customer
validation.  Later on, once we got a few customers, there was still a
gap here, but at least some of the input was from a real user.

Does this shed some light on it?  I suppose these aren't typical
"ideal agile" customer scenarios, but they're part of my real-world
experiences.

--Dave

David Churchville
http://www.extremeplanner.com/blog

#2262 From: Adrian Howard <adrianh@...>
Date: Thu Aug 3, 2006 3:19 pm
Subject: Re: user stories - are they mini fixed scope contracts? was: Re: Subtle User Inter..
ajh65537
Send Email Send Email
 
On 1 Aug 2006, at 17:22, Jeff Patton wrote:
[snip]
> No, you're not necessarily.  I may be guilty of practicing a very
> relaxed form of agile.  For very many years I relied on nothing more
> than a story written on a 3x5 card and a conversation.  What was in
> and out of a story was very fluid - and almost always a matter of the
> ongoing conversation between developer and customer.  Statements
> like "I don't consider it part of the story I'm working on" when a
> customer might consider it part of the story seem to strike an
> adversarial posture I'd characterize as push-back.
[snip]

Maybe. I'd tend to see it as the start of a conversation myself ;-)

>   Possibly a better
> statement might be "this seems like a good idea, but my original
> estimate hadn't accounted for it.  Should we up the estimate -
> possibly jeapordizing other things in this iteration? - or should we
> defer this?"

Does "new story" always mean "defer to next iteration" to you?

It doesn't to me - and maybe that's why I don't hear the same
negative tone. Obviously more work means /something/ is going to get
deferred - but it doesn't have to be the new work.

>   That's more of the convesation/collaboration that I'd
> hope for, and one we were able to cultivate for years.  It's a subtle
> difference in language.

Yup. Exactly.

>   And frankly it's often the body language of
> the developers that communicates more than the actual words they
> use.

This is the thing that just seems really weird to me.... developers
not wanting to do new functionality that the customer wants. This is
so anti every experience I've had with agile teams it strikes me as a
sign that something is going badly wrong with the customer/developer
communications.

> Adrian, in a subsequent post you said:
> "Are the usability changes are getting a harsher reception than
> changes in requirement from the customer?"
>
> This is often the case that usability changes do get a harsher
> reception - are often met with skepticism.

Again, I find curious. Any ideas why? Developers making value
judgements about the stories coming from the customer depending on
whether they are usability related or not doesn't gel with the agile
teams I've worked with. A story is a story is a story.

> Usability changes often
> don't add functionality - they just make the functionality we have
> better.

If they're not adding functionality then no code needs to be written.
Job done ;-)

Usability stories /are/ adding functionality. The issue is how
different changes are being prioritised.

> If one team member is pushing towards implementing more, and
> another team member is pushing towards implementing better, there
> will likely be tension.

For me the issue isn't between more and better. It's between
different adding one bit of functionality or adding another.

>   And, I've observed the same skeptical
> reception when the usability changes come directly from the customer.

I wonder if some of this may be due to previous experience of
customers making really bad usability decisions?

I know I've been burned badly by this - both as a usability bod and
as a developer.

> I think focal to this discussion is the idea of how maleable stories
> are: are they "contracts for fixed scope" or are they general goals
> to be achieved during an iteration where the details of those goals
> are to be worked through collaboratively during the iteration.  I've
> observed both extremes in practice on agile projects - and variations
> in between.

The problem with general goals is that it makes it very hard to
define progress and - more importantly - being "done". Getting that
rapid and repeated "finished" fix is really important.

My preference is to have lots of small stories that have very clear
goals. If in the course of implementation we find that some of those
goals need to be changed or amended in any non trivial way I much
prefer to add a new story into the current iteration than amend the
current story.

I find teams much more productive if everybody is seeing continual
progress and positive feedback.

1) Me: I'll do the display mail messages in columns story now.....
<pause for typing>... done!
2) Customer: Great. All seems to work. Thanks. I have a new story for
you. We need to resize columns.
3) Me: Now I'll do the resize columns story...<pause for typing>...
done!
4) Customer: Great. All seems to work. Thanks. I have a new story for
you. Date columns need to squish.
5) Me: Now I'll do the make date column heading squishy
story...<pause for typing>... done!
6) Customer: Great. All seems to work. Thanks. I have a new story for
you.
... and so on...

Rather than continual negative feedback:

1) Me: I'll do the display mail messages in columns story now.....
<pause for typing>... done!
2) Customer: No you're not - that's rubbish. Look it doesn't work for
long subject lines
3) Me: Hmmm... okay guess I guess I can make then resizeable...<pause
for typing>... done
4) Customer: Well that's complete pants - when I resize the date
field you can only see the time of the message? Get it right!
5) Me: All right already <mutter naughty works under breath while
typing>... done?
6) Customer: Well - I guess it will do...
... and so on...

Okay - I'm exaggerating... slightly...

The worst bit about the negative feedback loop is that you can get to
the end of the iteration and from my perspective I have been working
my ass off all week, and from the customer perspective not a single
story has been completed... very bad.

So I can understand developers pushing back against a continually
growing story, but I can't understand developers pushing back against
new stories.

Hopefully making some vague sort of sense...

Cheers,

Adrian

#2263 From: Adrian Howard <adrianh@...>
Date: Thu Aug 3, 2006 7:47 pm
Subject: Re: Re: Subtle User Interaction Experiences
ajh65537
Send Email Send Email
 
On 2 Aug 2006, at 16:50, William Pietri wrote:
[snip]
> This certainly fits in with one of my frequent observations on XP
> teams:
> by keeping in close proximity and constant communication, you don't
> just
> improve the sharing of information; you come to share values, too. On
> the team he's talking about, it was a consumer-focused product at a
> startup, and the product manager cared passionately about the user
> experience, due to both his nature and its critical business
> importance.
> And all of us came to appreciate and care about that, too.
[snip]

Yes. This has been exactly my experience, and it clarifies why I find
the experiences of Dave and Jeff so intriguing.

With the agile teams I've worked with the developers /care/ about the
product. They're passionate about building the best possible product
for the customer and actively try and get into the customers head.
Developers are always asking "why?". Not to be picky, or challenge
the customer - but to understand them more deeply. They're looking at
the product and feeding ideas back to the customer because they've
spotted areas that need improvement.

Not being enthused by changes that make the product better, just
because they're "usability" related changes, seems so alien to this
mindset I'm really interested in finding out why this happens.

Cheers,

Adrian

#2264 From: Adrian Howard <adrianh@...>
Date: Thu Aug 3, 2006 10:29 pm
Subject: Re: Re: Subtle User Interaction Experiences
ajh65537
Send Email Send Email
 
On 2 Aug 2006, at 00:12, Jeff Patton wrote:
[snip]
> Business value  its tough to prove business value on lots of
> things  in particular improvements on user interactions.  Testing
> at least helps demonstrate it.

Yup. That is where I have the majority of my problems when wearing my
usability hat. Convincing the business owner of the value of the issues.

> William mentioned testing  but I find that lots of folks dont
> know what we mean by testing.

Which "we" is that :-)

> Theres a big difference between testing that software is
> functionally correct and testing that users can effectively,
> efficiently use it.

Yes, but that's not to say that we can't use many of the same
techniques. I've been surprised about how many usability issues can
be embodied in automated tests to help keep everybody honest as
development continues.

> Finally Dave mentioned that the UI problem hasnt been solved by
> agile techniques  which I agree with.

Just in case I've not been clear - I don't think the UI problem has
been solved by agile techniques either. Just that, in my experience,
agile teams are a lot better at dealing with usability issues than
non-agile teams. Things aren't perfect - just better.

>  But, low fidelity collaborative UI testing techniques work very
> well in an agile context.  Ive already mentioned Gerrard once in
> this thread  but Im going to again, because as it happens he
> wrote a paper that was presented at this years Agile2006 on adding
> usability testing to his Agile project.  Since its not available
> on the conference website, I put it here: http://
> www.abstractics.com/reference/Meszaros-AgileUsabilty.pdf
[snip]

Thanks. An interesting read.

Cheers,

Adrian

#2265 From: Adrian Howard <adrianh@...>
Date: Thu Aug 3, 2006 7:38 pm
Subject: Re: Re: Subtle User Interaction Experiences
ajh65537
Send Email Send Email
 
On 1 Aug 2006, at 16:58, Dave Churchville wrote:
[snip]
> I agree with this in principle, but in my own experience I've seen the
> development team actively resist usability changes with "Agile"
> justification, rather than passively recite time estimates.

I'd love to see a list of these "agile" justifications - just so I
can add to my list of "agile myths" :-)

> I suspect there's another factor here...with the rise of test-driven
> development and automated testing, perhaps features that aren't easy
> to test are not as well received?
[snip]

That's an interesting perspective. I know I get nervous around
features that I can't figure out how to write automated tests for.
Hopefully as we get better at figuring out how to write these sorts
of test this will be less of a problem.

That said, on my good days, an un-testable feature is a challenge
rather than a problem.

> I can't really explain this except that user interfaces are often
> emotional and reasonable people disagree on the "best" implementation.
>
> So unlike a business rule which is objective, UI changes are often
> scorned as "stupid" or "unnecessary".  This is what I call the "messy
> human stuff" that is an unavoidable part of the software process.

How do developers keep carry on thinking UI features are stupid" or
"unnecessary" in the face of:
* the customer, the person who understands the business issues,
saying that they're important
* feedback from users from the regular releases?
* usability test results?
* etc.

An agile development group that looks down at certain feature
requests from the customer sounds pretty bad, one that can do this
and ignore the feedback too...

Cheers,

Adrian

#2266 From: Adrian Howard <adrianh@...>
Date: Fri Aug 4, 2006 9:18 am
Subject: Re: Re: Subtle User Interaction Experiences
ajh65537
Send Email Send Email
 
On 2 Aug 2006, at 09:47, PaulOldfield1@... wrote:
[snip]
> I'm beginning to suspect, from this thread, that basic
> requirements elicitation skills are in short supply.   Requirements
> gathering and analysis used to be a specialist set of skills.   If
> we're expecting our teams to gather the requirements directly
> from the customers, then the team should have theses skills.
[snip]

Yes, I agree completely. One of the things I like about XP is that
it's the team - rather than an individual analyst/architect - working
with the customer to help articulate stories.

This is one of the things that makes me slightly nervous when people
say that the obvious position for a usability person is being the
customers "one voice", because it cuts the rest of the team out of
the loop on all of those "whys".

> For example, we will often get a requirement phrased as a
> solution.  From our point of view, the solution is out of kilter
> with the rest of the design.  We may think the requirement is
> stupid as a result.  Yet there will be an underlying  requirement.
> We just need to ask why the customer wants what they asked
> for; what would this do for them.  Asking why is the easy bit;
> spotting the design masquerading as requirement is the bit
> that takes skill.
[snip]

I think this is one of the hidden benefits of having small stories.
By cutting features down into very small vertical slices you're
forced to burrow down to the core of the issue and ask lots of "whys".

Adrian

#2267 From: Adrian Howard <adrianh@...>
Date: Fri Aug 4, 2006 9:22 am
Subject: Re: design or requirements was: RE: Re: Subtle User Interaction Experiences
ajh65537
Send Email Send Email
 
On 2 Aug 2006, at 17:20, Jeff Patton wrote:
[snip]
> Hearing the statement design masquerading as a requirement is
> interesting to me.  I believe the process of considering solutions
> to a problem and deciding on a best one /is/ design.  So, in my
> mind the product of design /is/ a requirement.  We simply start
> calling it a requirement when we dont want it unraveled and to
> start delegating its execution to someone else.  So, all
> requirements are the result of design  theyre not masquerading.
> By calling it a requirement the person who called it that was
> telling you Ive done the design work, dont question it its a
> requirement.  What I really hear in the statement design
> masquerading as a requirement is I dont like the design decision
> you made.  What was the problem you were trying to solve so I can
> validate your design or consider alternatives?  Which I think is
> always a good question to ask  not just when making the choice to
> add a delight feature to a product  but all the way up the stack.
>
> Hope that all makes sense.

It does indeed :-)

Adrian

Messages 2238 - 2267 of 7635   Oldest  |  < Older  |  Newer >  |  Newest
Add to My Yahoo!      XML What's This?

Copyright 2010 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines NEW - Help