[prev in list] [next in list] [prev in thread] [next in thread] 

List:       extremeprogramming
Subject:    Re: [XP] Specifying Requirements with AT's Too Much
From:       Elizabeth Keogh <ekeogh () thoughtworks ! com>
Date:       2008-01-29 11:27:24
Message-ID: OF21B7F42D.FC554F7E-ON802573DF.003CC8B9-652573DF.003F292B () thoughtworks ! com
[Download RAW message or body]

Nick Robinson wrote on 15/01/2008 22:38:34:

> I am in a situation where requirements are specified in JIRA, and 
> they can be as poor as a one-liner. This is not an agile project; 
> very much old skool. I am trying to move the team towards story-
> styled requirements defniition. A senior BA who has seen a mock up 
> of a story based requirement (nothing special and very simple with 
> acceptance tests), has pushed back. The push is around the fact the 
> development team are highly qualified and paid alot, the BA's should 
> have to put such detail on the requirements (the AT's).

I would argue that the BA is also highly qualified and paid a lot to 
ensure that the business requirements are accurately communicated to the 
devs. You might want to ask him/her what he thinks his role is. But 
anyway...

> The issue here is that when we get onto a JIRA to implement, lets say 
> over halfway through the iteration (3wks), when we start to dig 
> deeper there is often a load of stuff the BA's havent thought of. 

Have you brought this up in retrospectives? (Do you have retrospectives?)
Have you given the BA this feedback? (Is he open to feedback?)

> The deadlines remain immutable, and we have to work profusely long 
> hours to get all the extra work done for the unspecified requirements 
> THAT MUST BE DONE for the feature to be accepted.

I like Dale's response about acceptance criteria. I'm into examples (which 
are the same thing, but you might be able to say 'Give me an example' 
without getting the same push-back that you're getting from 'I need 
acceptance criteria').

Try writing down the examples yourself, in English, and quizzing the BA 
about them. "Does <this event> always result in <this outcome>? What 
<context> might cause it to be different? What happens if <some other 
context> or <some other event>? Are there any examples you can think of 
which we haven't covered yet?" And if the BA is being a pain, make them 
sign off on your understanding, as communicated through those examples.

I just wrote a blog post about why this is important: 
http://sirenian.livejournal.com/44156.html . Feel free to use it.

As for long hours and immutable deadlines... you can fix two of time, 
scope and budget (ie: number of people, bearing in mind the Mythical Man 
Month). It doesn't sound as if discovering the extra scope earlier will 
necessarily help you avoid the long hours. You might need another 
conversation about the impossible deadlines and scope.
 
> I am trying to compose my response to this push back, but like I say, 
> when I close my eyes I see nothing. Any help on this subject would 
> be most appreciated.

Push back on the push-back. If the BA won't help, talk to the guy with the 
money, tell him that the scope of the project's been severely 
underestimated and point out that the long hours you're working are 
impacting the quality, as well as making it likely that key people will 
quit. And don't be afraid to walk away yourself.

Cheers,
Liz.

--
Elizabeth Keogh
liz@thoughtworks.com
http://sirenian.livejournal.com
http://jbehave.org


[Non-text portions of this message have been removed]


[Attachment #3 (text/html)]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" \
"http://www.w3.org/TR/html4/strict.dtd"> <html>
<head>
</head>




<body style="background-color: #ffffff;">

<!--~-|**|PrettyHtmlStartT|**|-~-->
<div id="ygrp-mlmsg" style="width:655px; position:relative;">
  <div id="ygrp-msg" style="width: 490px; padding: 0 15px 0 0; float:left;  \
z-index:1;"> <!--~-|**|PrettyHtmlEndT|**|-~-->

    <div id="ygrp-text">
            <p>Nick Robinson wrote on 15/01/2008 22:38:34:<br>
<br>
&gt; I am in a situation where requirements are specified in JIRA, and <br>
&gt; they can be as poor as a one-liner. This is not an agile project; <br>
&gt; very much old skool. I am trying to move the team towards story-<br>
&gt; styled requirements defniition. A senior BA who has seen a mock up <br>
&gt; of a story based requirement (nothing special and very simple with <br>
&gt; acceptance tests), has pushed back. The push is around the fact the <br>
&gt; development team are highly qualified and paid alot, the BA's should <br>
&gt; have to put such detail on the requirements (the AT's).<br>
<br>
I would argue that the BA is also highly qualified and paid a lot to <br>
ensure that the business requirements are accurately communicated to the <br>
devs. You might want to ask him/her what he thinks his role is. But <br>
anyway...<br>
<br>
&gt; The issue here is that when we get onto a JIRA to implement, lets say <br>
&gt; over halfway through the iteration (3wks), when we start to dig <br>
&gt; deeper there is often a load of stuff the BA's havent thought of. <br>
<br>
Have you brought this up in retrospectives? (Do you have retrospectives?<wbr>)<br>
Have you given the BA this feedback? (Is he open to feedback?)<br>
<br>
&gt; The deadlines remain immutable, and we have to work profusely long <br>
&gt; hours to get all the extra work done for the unspecified requirements <br>
&gt; THAT MUST BE DONE for the feature to be accepted.<br>
<br>
I like Dale's response about acceptance criteria. I'm into examples (which <br>
are the same thing, but you might be able to say 'Give me an example' <br>
without getting the same push-back that you're getting from 'I need <br>
acceptance criteria').<br>
<br>
Try writing down the examples yourself, in English, and quizzing the BA <br>
about them. &quot;Does &lt;this event&gt; always result in &lt;this outcome&gt;? What \
<br> &lt;context&gt; might cause it to be different? What happens if &lt;some other \
<br> context&gt; or &lt;some other event&gt;? Are there any examples you can think of \
<br> which we haven't covered yet?&quot; And if the BA is being a pain, make them \
<br> sign off on your understanding, as communicated through those examples.<br>
<br>
I just wrote a blog post about why this is important: <br>
<a href="http://sirenian.livejournal.com/44156.html">http://sirenian.<wbr>livejournal.<wbr>com/44156.<wbr>html</a> \
. Feel free to use it.<br> <br>
As for long hours and immutable deadlines... you can fix two of time, <br>
scope and budget (ie: number of people, bearing in mind the Mythical Man <br>
Month). It doesn't sound as if discovering the extra scope earlier will <br>
necessarily help you avoid the long hours. You might need another <br>
conversation about the impossible deadlines and scope.<br>
 <br>
&gt; I am trying to compose my response to this push back, but like I say, <br>
&gt; when I close my eyes I see nothing. Any help on this subject would <br>
&gt; be most appreciated.<br>
<br>
Push back on the push-back. If the BA won't help, talk to the guy with the <br>
money, tell him that the scope of the project's been severely <br>
underestimated and point out that the long hours you're working are <br>
impacting the quality, as well as making it likely that key people will <br>
quit. And don't be afraid to walk away yourself.<br>
<br>
Cheers,<br>
Liz.<br>
<br>
--<br>
Elizabeth Keogh<br>
<a href="mailto:liz%40thoughtworks.com">liz@thoughtworks.<wbr>com</a><br>
<a href="http://sirenian.livejournal.com">http://sirenian.<wbr>livejournal.<wbr>com</a><br>
 <a href="http://jbehave.org">http://jbehave.<wbr>org</a><br>
<br>
[Non-text portions of this message have been removed]<br>
<br>
</p>
    </div>  

    <!--~-|**|PrettyHtmlStart|**|-~-->
    <span width="1" style="color: white;">__._,_.___</span>
    <!-- Start the section with Message In topic -->
    <div id="ygrp-actbar">
              <span class="left">
          <a href="http://groups.yahoo.com/group/extremeprogramming/message/138141;_yl \
c=X3oDMTM4amtvN2owBF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BG1zZ0lkAzEzODQzNgRzZWMDZnRyBHNsawN2dHBjBHN0aW1lAzEyMDE2MDYxOTgEdHBjSWQDMTM4MTQx">
                
            Messages in this topic          </a> (<span class="bld">6</span>)
        </span>
        <a href="http://groups.yahoo.com/group/extremeprogramming/post;_ylc=X3oDMTJyb3 \
RoN3JwBF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BG1zZ0lkAzEzODQzNgRzZWMDZnRyBHNsawNycGx5BHN0aW1lAzEyMDE2MDYxOTg-?act=reply&messageNum=138436">
  <span class="bld">
            Reply          </span> (via web post)
        </a>  | 
        <a href="http://groups.yahoo.com/group/extremeprogramming/post;_ylc=X3oDMTJlMz \
FrMjNrBF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA250cGMEc3RpbWUDMTIwMTYwNjE5OA--" \
class="bld">  Start a new topic        </a>
          </div> 
    <!-------     Start Nav Bar  ------>
    <!-- |**|begin egp html banner|**| -->
    <div id="ygrp-vitnav">
                <a href="http://groups.yahoo.com/group/extremeprogramming/messages;_yl \
c=X3oDMTJlaXEycDg4BF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA21zZ3MEc3RpbWUDMTIwMTYwNjE5OA--">Messages</a> \
  |    <a href="http://groups.yahoo.com/group/extremeprogramming/files;_ylc=X3oDMTJmb2 \
1raXV0BF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA2ZpbGVzBHN0aW1lAzEyMDE2MDYxOTg-">Files</a> \
  |    <a href="http://groups.yahoo.com/group/extremeprogramming/photos;_ylc=X3oDMTJlM \
WdhdmFuBF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA3Bob3QEc3RpbWUDMTIwMTYwNjE5OA--">Photos</a> \
  |    <a href="http://groups.yahoo.com/group/extremeprogramming/links;_ylc=X3oDMTJmN3 \
E4ZDdrBF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA2xpbmtzBHN0aW1lAzEyMDE2MDYxOTg-">Links</a> \
  |    <a href="http://groups.yahoo.com/group/extremeprogramming/database;_ylc=X3oDMTJ \
jc2x2OTZnBF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA2RiBHN0aW1lAzEyMDE2MDYxOTg-">Database</a> \
  |    <a href="http://groups.yahoo.com/group/extremeprogramming/polls;_ylc=X3oDMTJmZ3 \
N1cWd1BF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA3BvbGxzBHN0aW1lAzEyMDE2MDYxOTg-">Polls</a> \
  |    <a href="http://groups.yahoo.com/group/extremeprogramming/members;_ylc=X3oDMTJl \
OWk4MWUzBF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA21icnMEc3RpbWUDMTIwMTYwNjE5OA--">Members</a> \
  
    </div>  
    <!-- |**|end egp html banner|**| -->

                <div id="ygrp-grft">
                  
<!-- |**|begin egp html banner|**| -->

          To Post a message, send it to:&nbsp;&nbsp; \
extremeprogramming@eGroups.com<BR> <BR>
To Unsubscribe, send a blank message to: \
extremeprogramming-unsubscribe@eGroups.com<BR> <BR>
ad-free courtesy of objectmentor.com          
<!-- |**|end egp html banner|**| -->

              </div>
    
    <!-- yahoo logo -->
    <!-- |**|begin egp html banner|**| -->
    <div id="ygrp-ft">
      <a href="http://groups.yahoo.com/;_ylc=X3oDMTJkZ285NzJlBF9TAzk3MzU5NzE0BGdycElkA \
                zE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA2dmcARzdGltZQMxMjAxNjA2MTk4">
                
      <img src="http://us.i1.yimg.com/us.yimg.com/i/yg/img/logo/ma_grp_160.gif" \
height="15" width="106" border="0" alt="Yahoo! Groups"></a> <br>  <a \
href="http://groups.yahoo.com/group/extremeprogramming/join;_ylc=X3oDMTJmZW5iZWd1BF9TA \
zk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA3N0bmdzBHN0aW1lAzEyMDE2MDYxOTg-">Change \
settings via the Web</a> (Yahoo! ID required) <br>  Change settings via email: <a \
href="mailto:extremeprogramming-digest@yahoogroups.com?subject=Email Delivery: \
Digest">Switch delivery to Daily Digest</a> | <a href = \
"mailto:extremeprogramming-traditional@yahoogroups.com?subject=Change Delivery \
Format: Traditional">Switch format to Traditional</a> <br>

      <a href="http://groups.yahoo.com/group/extremeprogramming;_ylc=X3oDMTJkOGc4dGRnB \
F9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwNmdHIEc2xrA2hwZgRzdGltZQMxMjAxNjA2MTk4">
  Visit Your Group 
      </a> |
      <a href="http://docs.yahoo.com/info/terms/">
        Yahoo! Groups Terms of Use      </a> |
      <a href="mailto:extremeprogramming-unsubscribe@yahoogroups.com?subject=">
        Unsubscribe      </a> 
    </div>     <!-- |**|end egp html banner|**| -->
  </div> <!-- ygrp-msg -->

  
  <!-- Sponsor -->
  <!-- |**|begin egp html banner|**| -->
  <div id="ygrp-sponsor" style="width:140px;float: left; clear: none; margin-left: \
5px; background:white; margin-bottom:25px ;position:absolute; top:0; right: 0;">  \
<!-- Network content -->  
    <!-- Start vitality -->
    <div id="ygrp-vital">
              <div id="vithd">Recent Activity</div>
        <ul style="list-style-type:none; padding: 0; margin: 2px 0;">
                <li style="clear: both;">
      <div class="ct" style="float: right;"><span \
style="display:none">&nbsp;</span>26</div>  <div class="cat"><a \
href="http://groups.yahoo.com/group/extremeprogramming/members;_ylc=X3oDMTJmdTQxcmIxBF \
9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwN2dGwEc2xrA3ZtYnJzBHN0aW1lAzEyMDE2MDYxOTg-">New \
Members</a></div>  </li>
  
            
            
            
            
            
        </ul>
            <a href="http://groups.yahoo.com/group/extremeprogramming;_ylc=X3oDMTJlcmx \
qMG52BF9TAzk3MzU5NzE0BGdycElkAzE1MDU0MDkEZ3Jwc3BJZAMxNzA3Mjc2NzE4BHNlYwN2dGwEc2xrA3ZnaHAEc3RpbWUDMTIwMTYwNjE5OA--">
  Visit Your Group      </a>
    </div> 
              
    <!-- Network content -->
              <div id="nc">
              <div class="ad">
                      <div id="hd1">Yahoo! Finance</div> 
<p><a href="http://us.ard.yahoo.com/SIG=13ol550s9/M=493064.12016257.12445664.8674578/D \
=groups/S=1707276718:NC/Y=YAHOO/EXP=1201613399/L=/B=XEIAAdFJq24-/J=1201606199075838/A= \
4507179/R=0/SIG=12de4rskk/*http://us.rd.yahoo.com/evt=50284/*http://finance.yahoo.com/personal-finance">It's \
Now Personal</a></p>  <p>Guides, news,</p> 
<p>advice & more.</p>                   </div>
                    <div class="ad">
                      <div id="hd1">New business?</div> 
<p><a href="http://us.ard.yahoo.com/SIG=13oop4sa6/M=493064.12016308.12445700.8674578/D \
=groups/S=1707276718:NC/Y=YAHOO/EXP=1201613399/L=/B=XUIAAdFJq24-/J=1201606199075838/A= \
3848640/R=0/SIG=131an6mds/*http://searchmarketing.yahoo.com/arp/srchv2.php?o=US2002&cmp=Yahoo&ctv=Groups1&s=Y&s2=&s3=&b=50">Get \
new customers.</a></p>  <p>List your web site</p> 
<p>in Yahoo! Search.</p>                  </div>
                    <div class="ad">
                      <div id="hd1">Self Improvement</div> 
<p><a href="http://us.ard.yahoo.com/SIG=13o0lstn3/M=493064.12117552.12537389.8674578/D \
=groups/S=1707276718:NC/Y=YAHOO/EXP=1201613399/L=/B=XkIAAdFJq24-/J=1201606199075838/A= \
5170404/R=0/SIG=11ml7n8m5/*http://advision.webevents.yahoo.com/selfimprovement/">on \
Yahoo! Groups</a></p>  <p>Connect with people</p> 
<p>and get support.</p>                  </div>
          </div>
    
  </div>   <!-- |**|end egp html banner|**| -->
  <div style="clear:both; color: #FFF; font-size:1px;">.</div>
</div>   <img src="http://geo.yahoo.com/serv?s=97359714/grpId=1505409/grpspId=1707276718/msgId=138436/stime=1201606198/nc1=4507179/nc2=3848640/nc3=5170404" \
width="1" height="1"> <br>

<span  style="color: white;">__,_._,___</span>
<!--~-|**|PrettyHtmlEnd|**|-~-->
</body>
<!--~-|**|PrettyHtmlStart|**|-~-->
<head>
<style type="text/css">
<!--
#ygrp-mkp{
  border: 1px solid #d8d8d8;
  font-family: Arial;
  margin: 14px 0px;
  padding: 0px 14px;
}
#ygrp-mkp hr{
  border: 1px solid #d8d8d8;
}
#ygrp-mkp #hd{
  color: #628c2a;
  font-size: 85%;
  font-weight: bold;
  line-height: 122%;
  margin: 10px 0px;
}
#ygrp-mkp #ads{
  margin-bottom: 10px;
}
#ygrp-mkp .ad{
  padding: 0 0;
}
#ygrp-mkp .ad a{
  color: #0000ff;
  text-decoration: none;
}
-->
</style>
</head>
<head>
<style type="text/css">
<!--
#ygrp-sponsor #ygrp-lc{
  font-family: Arial;
}
#ygrp-sponsor #ygrp-lc #hd{
  margin: 10px 0px;
  font-weight: bold;
  font-size: 78%;
  line-height: 122%;
}
#ygrp-sponsor #ygrp-lc .ad{
  margin-bottom: 10px;
  padding: 0 0;
}
-->
</style>
</head>
<head>
<style type="text/css">
<!--
#ygrp-mlmsg {font-size:13px; font-family: \
arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;} #ygrp-mlmsg table \
{font-size:inherit;font:100%;} #ygrp-mlmsg select, input, textarea {font:99% \
arial,helvetica,clean,sans-serif;} #ygrp-mlmsg pre, code {font:115% \
monospace;*font-size:100%;} #ygrp-mlmsg * {line-height:1.22em;}
#ygrp-text{
    font-family: Georgia;	
}
#ygrp-text p{
    margin: 0 0 1em 0;
}
#ygrp-tpmsgs{
    font-family: Arial;	
    clear: both;
}
#ygrp-vitnav{
	padding-top: 10px;
	font-family: Verdana;
	font-size: 77%;
	margin: 0;
}
#ygrp-vitnav a{
	padding: 0 1px;
}
#ygrp-actbar{
	clear: both;
	margin: 25px 0;
	white-space:nowrap;
	color: #666;
	text-align: right;
}
#ygrp-actbar .left{
	float: left;
	white-space:nowrap;
}
.bld{font-weight:bold;}
#ygrp-grft{
	font-family: Verdana;
	font-size: 77%;
	padding: 15px 0;
}
#ygrp-ft{
  font-family: verdana;
  font-size: 77%;
  border-top: 1px solid #666; 
  padding: 5px 0; 
}
#ygrp-mlmsg #logo{
  padding-bottom: 10px;
}

#ygrp-vital{
	background-color: #e0ecee;
	margin-bottom: 20px;
	padding: 2px 0 8px 8px;
}
#ygrp-vital #vithd{
	font-size: 77%;
	font-family: Verdana;
	font-weight: bold;
	color: #333;
	text-transform: uppercase;
}
#ygrp-vital ul{
	padding: 0;
	margin: 2px 0;
}
#ygrp-vital ul li{
  list-style-type: none;
  clear: both;
  border: 1px solid #e0ecee;  
}
#ygrp-vital ul li .ct{
  font-weight: bold;
  color: #ff7900;
  float: right;
  width: 2em;
  text-align:right;
  padding-right: .5em;
}
#ygrp-vital ul li .cat{
  font-weight: bold;
}
#ygrp-vital a{
	text-decoration: none;
}

#ygrp-vital a:hover{
  text-decoration: underline;
}

#ygrp-sponsor #hd{
	color: #999;
	font-size: 77%;
}
#ygrp-sponsor #ov{
	padding: 6px 13px;
	background-color: #e0ecee;
	margin-bottom: 20px;
}
#ygrp-sponsor #ov ul{
	padding: 0 0 0 8px;
	margin: 0;
}
#ygrp-sponsor #ov li{
	list-style-type: square;
	padding: 6px 0;
	font-size: 77%;
}
#ygrp-sponsor #ov li a{
	text-decoration: none;
	font-size: 130%;
}
#ygrp-sponsor #nc{
  background-color: #eee;
  margin-bottom: 20px;
  padding: 0 8px;
}
#ygrp-sponsor .ad{
	padding: 8px 0;
}
#ygrp-sponsor .ad #hd1{
	font-family: Arial;
	font-weight: bold;
	color: #628c2a;
	font-size: 100%;
	line-height: 122%;
}
#ygrp-sponsor .ad a{
	text-decoration: none;
}
#ygrp-sponsor .ad a:hover{
	text-decoration: underline;
}
#ygrp-sponsor .ad p{
	margin: 0;
}
o{font-size: 0; }
.MsoNormal{
   margin: 0 0 0 0;
}
#ygrp-text tt{
  font-size: 120%;
}
blockquote{margin: 0 0 0 4px;}
.replbq{margin:4}
-->
</style>
</head>
<!--~-|**|PrettyHtmlEnd|**|-~-->
</html><!--End group email -->



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic