<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Requirement Naming &#8211; Stick A Fork In It?</title>
	<atom:link href="http://tynerblain.com/blog/2006/11/28/requirement-naming/feed/" rel="self" type="application/rss+xml" />
	<link>http://tynerblain.com/blog/2006/11/28/requirement-naming/</link>
	<description>Software product success.</description>
	<lastBuildDate>Tue, 22 May 2012 20:46:27 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
	<item>
		<title>By: Roger L. Cauvin</title>
		<link>http://tynerblain.com/blog/2006/11/28/requirement-naming/comment-page-1/#comment-63414</link>
		<dc:creator>Roger L. Cauvin</dc:creator>
		<pubDate>Sun, 14 Jan 2007 20:28:31 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2006/11/28/requirement-naming/#comment-63414</guid>
		<description>&quot;Hey, maybe Steve Johnson is reading and will work it into Pragmatic…&quot;

As far as I can tell, Steve Johnson is on record largely agreeing with my view.  See his article, &lt;a href=&quot;http://www.pragmaticmarketing.com/productmarketing/topics/02/0204sj.asp&quot; rel=&quot;nofollow&quot;&gt;Reqs and Specs&lt;/a&gt;, for details.

He distinguishes between requirements and specifications, and then enumerates the following roles:

 - the product manager finds and quantifies market problems, articulating them in the form of requirements 
 - the product architect (or designer) writes a functional specification describing the approach to solving the problem 
 - the product developer creates a technical specification that fully describes how the functional specification will be implemented

As you can see, Johnson mentions three types of documents, but he considers only one of them a requirements document.</description>
		<content:encoded><![CDATA[<p>&#8220;Hey, maybe Steve Johnson is reading and will work it into Pragmatic…&#8221;</p>
<p>As far as I can tell, Steve Johnson is on record largely agreeing with my view.  See his article, <a href="http://www.pragmaticmarketing.com/productmarketing/topics/02/0204sj.asp" rel="nofollow">Reqs and Specs</a>, for details.</p>
<p>He distinguishes between requirements and specifications, and then enumerates the following roles:</p>
<p> &#8211; the product manager finds and quantifies market problems, articulating them in the form of requirements<br />
 &#8211; the product architect (or designer) writes a functional specification describing the approach to solving the problem<br />
 &#8211; the product developer creates a technical specification that fully describes how the functional specification will be implemented</p>
<p>As you can see, Johnson mentions three types of documents, but he considers only one of them a requirements document.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Sehlhorst</title>
		<link>http://tynerblain.com/blog/2006/11/28/requirement-naming/comment-page-1/#comment-57795</link>
		<dc:creator>Scott Sehlhorst</dc:creator>
		<pubDate>Sun, 03 Dec 2006 05:43:31 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2006/11/28/requirement-naming/#comment-57795</guid>
		<description>Adam,

Sounds like you have a sweet gig!  Great points about how to stay focused in a startup environment too.

I agree that the CYA mindset does happen a lot at large companies.  I think we&#039;re really on the same page, and that the product manager should focus on, well, all the strategic stuff Pragmatic outlines.

Different team sizes will split up the work differently (vision vs spec vs design vs implementation).</description>
		<content:encoded><![CDATA[<p>Adam,</p>
<p>Sounds like you have a sweet gig!  Great points about how to stay focused in a startup environment too.</p>
<p>I agree that the CYA mindset does happen a lot at large companies.  I think we&#8217;re really on the same page, and that the product manager should focus on, well, all the strategic stuff Pragmatic outlines.</p>
<p>Different team sizes will split up the work differently (vision vs spec vs design vs implementation).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adam Bullied</title>
		<link>http://tynerblain.com/blog/2006/11/28/requirement-naming/comment-page-1/#comment-57545</link>
		<dc:creator>Adam Bullied</dc:creator>
		<pubDate>Thu, 30 Nov 2006 07:54:48 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2006/11/28/requirement-naming/#comment-57545</guid>
		<description>Scott, I totally agree, and wanted to provide some insight on things from my side -- I&#039;m in a *really* small start-up now (14 people -- 3 developers and 1 product mgr...myself) and was in a pretty small start-up prior (80 people...15-20 developers around the World and 1 product mgr...myself).

There is a key factor that we may not be hitting on here too -- the number of products involved and the tech stakeholder involvement. Really quick point here is, if you have 1 product (typical start-up), EVERYONE in the company wants to own it and feel like they are helping it get better. That means, and this is something I push, everyone must wear the Product Mgmt hat at some point. If you have multiple products, it&#039;s easier because folks are more spread out in terms of where their interests lie. It&#039;s much easier when there is more than 1 to foster a product-centric environment. But, I digress.

You are right in that, typically, product vision is driven from the top - especially in a startup. CEO / CTO / VC (let&#039;s not forget them) comes up with an idea, and delegates responsibility for creating the thing and the PM must point out flaws along the way. Also, she must take initiative for actually getting the thing built. If you are not pointing out ways the idea can be made better, or if that&#039;s not fostered, there are bigger issues. A person&#039;s title must be forgotten to unabashedly create excellent products. You should all be on the same team - the customers.

That being said, I&#039;ve created 1 template in the past that I&#039;ve found to work well -- an FRD (Feature Requirements Document) template. I define a feature as being a container for requirements, whether functional and non-functional. They can all be wrapped into one doc, and can be clearly pointed defined. Here&#039;s the structure I have in the template:

- Introduction / Overview
- Feature vision
- Requirement Themes
- Actors
- Functional Requirements
- Non-Functional Requirements

Prior to this, I would generate a simple vision doc that would outline at a 50,000 foot view what the hell my FRD doc was talking about. This would get the point across to everyone that it needed to, then the content would be rolled into the FRD, and the Vision doc would be effectively destroyed. We are now just down to 1 doc defining everything about a feature / module / whatever. It&#039;s not a matter of the # of docs, because in theory, you would have more than a single FRD (and it works more effectively if you do) if you were defining an entire product from scratch. This allows you to divvy up FRD&#039;s between developers more easily and not suck out time by having valuable tech resources reading about the &quot;vision&quot; for something they aren&#039;t working on. So long as they get the bigger picture of the product as a whole (and that&#039;s much important), dev should be golden working this way.

Now, that was for the company with 85 people, in which product development was dominated with feature requests made by clients VIA Services, and the product roadmap had to fit what clients were paying for. It was a high-quality revenue stream. Right or wrong -- that&#039;s how it worked.

In the company of 14, we don&#039;t support queue jumping / roadmap hogging as a revenue stream, so it is all proactive. It&#039;s bliss, let me tell you. More time to spend on the market as a whole instead of those that yell the loudest. My comment about me drowning if I had to write out all those docs revolves around two absolute truths:

1 - They would take me at least 3-4+ weeks to generate
2 - I can get the point / req&#039;s across in a bulleted list in 1-2 days for a complete product with over 100 features of all sizes (tiny to full-scale / platform entwined beasts)

My logic is, each feature I recommend, I better make damn sure I have a justification for doing so, because my VC, CEO, and CTO are going to have my hide if I don&#039;t. They all understand I work for the customer at the end of the day, and for me, that&#039;s just not a fed line; I really do operate &amp; feel that way. As an aside, I&#039;m always of the mind that opinion matters for absolute 0 in making product decisions. Unless it&#039;s a) good for the customer and b) you can prove it&#039;s good for the customer, it&#039;s useless and should be shelved.

Now, if I were to take 3-4 weeks to generate documents that I could completely NULL and void if I were to call up the CEO and say, &quot;hey -- here&#039;s my bulleted requirements list, let me tell you why I want to do features 5-10, all the others should be obvious,&quot; that saves everyone in the company time, and thus saves overhead, and thus saves money. And that&#039;s the name of the game for me...I just don&#039;t see how it&#039;s not the name of the game in all companies. There&#039;s nothing touch feely here -- just get &#039;er done (JGET).

I think more often than not, and I&#039;ve gotten this from talking to some of my best friends that work in large Org&#039;s, must of this &quot;communication&quot; stems from everyone trying to cover their ass and not want to make mistakes. While massive companies can claim all they want that they foster &quot;teamwork&quot; and environments where their folks are allowed to falter, I just don&#039;t think it&#039;s true. It&#039;s built into the culture that if you make a major mistake, your kicked to the curb and the guy waiting in line for your job takes over.

So, my thinking is, this stuff is much broader than a PM generating *RD/*RS documents. I lean towards thinking they exist because if they didn&#039;t, it would mean people really have to trust their team and peers and directs. From what I understand, it&#039;s not your manager doing your performance review each year deciding how much food you&#039;ll be able to put on the table. If you work for Scary Monolithic Corp, Inc. it&#039;s some HR associate that you&#039;ve never met before and their MO is &quot;save the bottom line.&quot; Yikes.

Make mistakes. Big companies have money -- fight for it to actually go and talk to the product team face to face. Buy Webcams and use Skype to talk regularly. I feel that people are generally smart and *want* to get it; they want to buy in to the vision and do a good job. Work to foster the environment with dev where questions are the norm and no one is called out for asking one that&#039;s stupid -- Jack Welch taught me that there is no such thing. That&#039;s the msg I give to my team.

I think at the end of the day, relationships would be better, a team would be stronger, and a PM&#039;s time wouldn&#039;t be sucked up generating paperwork. There&#039;s no reason why all of the *key* elements of these things can&#039;t be combined into 1 document and then discussed. The truth of the matter is, a developer is only reading &amp; caring about 1 thing - how can they make the requirement work elegantly, and be creative at the same time. Requirements aren&#039;t about solutions -- that&#039;s spec, and that should be coming from a tech lead anyway, not a product manager. And yes, I could see how a spec doc would be 1,000 pages, especially when you are dealing with a system responsible for billions of dollars for example.

Anyway, talk about rambling! I&#039;m sure I&#039;m overlooking the need to communicate high amounts of detail. Maybe I&#039;m just spoiled in that my CTO and I are really on the same page and we get what the other is trying to accomplish.

I&#039;m really enjoying this discussion and hope that we can agree on some points -- at least between the three of us. Hey, maybe Steve Johnson is reading and will work it into Pragmatic... =)</description>
		<content:encoded><![CDATA[<p>Scott, I totally agree, and wanted to provide some insight on things from my side &#8212; I&#8217;m in a *really* small start-up now (14 people &#8212; 3 developers and 1 product mgr&#8230;myself) and was in a pretty small start-up prior (80 people&#8230;15-20 developers around the World and 1 product mgr&#8230;myself).</p>
<p>There is a key factor that we may not be hitting on here too &#8212; the number of products involved and the tech stakeholder involvement. Really quick point here is, if you have 1 product (typical start-up), EVERYONE in the company wants to own it and feel like they are helping it get better. That means, and this is something I push, everyone must wear the Product Mgmt hat at some point. If you have multiple products, it&#8217;s easier because folks are more spread out in terms of where their interests lie. It&#8217;s much easier when there is more than 1 to foster a product-centric environment. But, I digress.</p>
<p>You are right in that, typically, product vision is driven from the top &#8211; especially in a startup. CEO / CTO / VC (let&#8217;s not forget them) comes up with an idea, and delegates responsibility for creating the thing and the PM must point out flaws along the way. Also, she must take initiative for actually getting the thing built. If you are not pointing out ways the idea can be made better, or if that&#8217;s not fostered, there are bigger issues. A person&#8217;s title must be forgotten to unabashedly create excellent products. You should all be on the same team &#8211; the customers.</p>
<p>That being said, I&#8217;ve created 1 template in the past that I&#8217;ve found to work well &#8212; an FRD (Feature Requirements Document) template. I define a feature as being a container for requirements, whether functional and non-functional. They can all be wrapped into one doc, and can be clearly pointed defined. Here&#8217;s the structure I have in the template:</p>
<p>- Introduction / Overview<br />
- Feature vision<br />
- Requirement Themes<br />
- Actors<br />
- Functional Requirements<br />
- Non-Functional Requirements</p>
<p>Prior to this, I would generate a simple vision doc that would outline at a 50,000 foot view what the hell my FRD doc was talking about. This would get the point across to everyone that it needed to, then the content would be rolled into the FRD, and the Vision doc would be effectively destroyed. We are now just down to 1 doc defining everything about a feature / module / whatever. It&#8217;s not a matter of the # of docs, because in theory, you would have more than a single FRD (and it works more effectively if you do) if you were defining an entire product from scratch. This allows you to divvy up FRD&#8217;s between developers more easily and not suck out time by having valuable tech resources reading about the &#8220;vision&#8221; for something they aren&#8217;t working on. So long as they get the bigger picture of the product as a whole (and that&#8217;s much important), dev should be golden working this way.</p>
<p>Now, that was for the company with 85 people, in which product development was dominated with feature requests made by clients VIA Services, and the product roadmap had to fit what clients were paying for. It was a high-quality revenue stream. Right or wrong &#8212; that&#8217;s how it worked.</p>
<p>In the company of 14, we don&#8217;t support queue jumping / roadmap hogging as a revenue stream, so it is all proactive. It&#8217;s bliss, let me tell you. More time to spend on the market as a whole instead of those that yell the loudest. My comment about me drowning if I had to write out all those docs revolves around two absolute truths:</p>
<p>1 &#8211; They would take me at least 3-4+ weeks to generate<br />
2 &#8211; I can get the point / req&#8217;s across in a bulleted list in 1-2 days for a complete product with over 100 features of all sizes (tiny to full-scale / platform entwined beasts)</p>
<p>My logic is, each feature I recommend, I better make damn sure I have a justification for doing so, because my VC, CEO, and CTO are going to have my hide if I don&#8217;t. They all understand I work for the customer at the end of the day, and for me, that&#8217;s just not a fed line; I really do operate &amp; feel that way. As an aside, I&#8217;m always of the mind that opinion matters for absolute 0 in making product decisions. Unless it&#8217;s a) good for the customer and b) you can prove it&#8217;s good for the customer, it&#8217;s useless and should be shelved.</p>
<p>Now, if I were to take 3-4 weeks to generate documents that I could completely NULL and void if I were to call up the CEO and say, &#8220;hey &#8212; here&#8217;s my bulleted requirements list, let me tell you why I want to do features 5-10, all the others should be obvious,&#8221; that saves everyone in the company time, and thus saves overhead, and thus saves money. And that&#8217;s the name of the game for me&#8230;I just don&#8217;t see how it&#8217;s not the name of the game in all companies. There&#8217;s nothing touch feely here &#8212; just get &#8216;er done (JGET).</p>
<p>I think more often than not, and I&#8217;ve gotten this from talking to some of my best friends that work in large Org&#8217;s, must of this &#8220;communication&#8221; stems from everyone trying to cover their ass and not want to make mistakes. While massive companies can claim all they want that they foster &#8220;teamwork&#8221; and environments where their folks are allowed to falter, I just don&#8217;t think it&#8217;s true. It&#8217;s built into the culture that if you make a major mistake, your kicked to the curb and the guy waiting in line for your job takes over.</p>
<p>So, my thinking is, this stuff is much broader than a PM generating *RD/*RS documents. I lean towards thinking they exist because if they didn&#8217;t, it would mean people really have to trust their team and peers and directs. From what I understand, it&#8217;s not your manager doing your performance review each year deciding how much food you&#8217;ll be able to put on the table. If you work for Scary Monolithic Corp, Inc. it&#8217;s some HR associate that you&#8217;ve never met before and their MO is &#8220;save the bottom line.&#8221; Yikes.</p>
<p>Make mistakes. Big companies have money &#8212; fight for it to actually go and talk to the product team face to face. Buy Webcams and use Skype to talk regularly. I feel that people are generally smart and *want* to get it; they want to buy in to the vision and do a good job. Work to foster the environment with dev where questions are the norm and no one is called out for asking one that&#8217;s stupid &#8212; Jack Welch taught me that there is no such thing. That&#8217;s the msg I give to my team.</p>
<p>I think at the end of the day, relationships would be better, a team would be stronger, and a PM&#8217;s time wouldn&#8217;t be sucked up generating paperwork. There&#8217;s no reason why all of the *key* elements of these things can&#8217;t be combined into 1 document and then discussed. The truth of the matter is, a developer is only reading &amp; caring about 1 thing &#8211; how can they make the requirement work elegantly, and be creative at the same time. Requirements aren&#8217;t about solutions &#8212; that&#8217;s spec, and that should be coming from a tech lead anyway, not a product manager. And yes, I could see how a spec doc would be 1,000 pages, especially when you are dealing with a system responsible for billions of dollars for example.</p>
<p>Anyway, talk about rambling! I&#8217;m sure I&#8217;m overlooking the need to communicate high amounts of detail. Maybe I&#8217;m just spoiled in that my CTO and I are really on the same page and we get what the other is trying to accomplish.</p>
<p>I&#8217;m really enjoying this discussion and hope that we can agree on some points &#8212; at least between the three of us. Hey, maybe Steve Johnson is reading and will work it into Pragmatic&#8230; =)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Sehlhorst</title>
		<link>http://tynerblain.com/blog/2006/11/28/requirement-naming/comment-page-1/#comment-57512</link>
		<dc:creator>Scott Sehlhorst</dc:creator>
		<pubDate>Wed, 29 Nov 2006 15:52:23 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2006/11/28/requirement-naming/#comment-57512</guid>
		<description>Thanks Roger!

We&#039;ll keep the conversation going on this one - maybe some other folks will chime in as well.

Scott</description>
		<content:encoded><![CDATA[<p>Thanks Roger!</p>
<p>We&#8217;ll keep the conversation going on this one &#8211; maybe some other folks will chime in as well.</p>
<p>Scott</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Roger L. Cauvin</title>
		<link>http://tynerblain.com/blog/2006/11/28/requirement-naming/comment-page-1/#comment-57487</link>
		<dc:creator>Roger L. Cauvin</dc:creator>
		<pubDate>Wed, 29 Nov 2006 08:57:30 +0000</pubDate>
		<guid isPermaLink="false">http://tynerblain.com/blog/2006/11/28/requirement-naming/#comment-57487</guid>
		<description>Scott, I very much appreciate your patient, respectful, and insightful approach to continuing this dialog.  Unfortunately, I don&#039;t think we can stick a fork in it yet.

A few things:

1. I should not have implied that you favor producing every document (MRD, PRD, FRS, SRS).  My real point is that I don&#039;t think it&#039;s possible to reconcile all of the &lt;i&gt;terminology&lt;/i&gt; (&quot;market requirement&quot;, &quot;product requirement&quot;, &quot;functional requirement&quot;, &quot;nonfunctional requirement&quot;, &quot;software requirement&quot;) associated with these documents.  I&#039;m even struggling to understand how you reconcile PRD terminology with SRS terminology (see #2).

2. As I see it, one of your examples of a product requirement, &quot;The system shall reccommend ingredient purchase amounts and timing that would reduce spoilage by at least 50% against the baseline,&quot; is a combination of a functional requirement (&quot;The system shall recommend purchase amounts and timing.&quot;) and a nonfunctional requirement (&quot;Spoilage stemming from the system’s purchase recommendations shall not exceed 50% of the baseline amount.&quot;).  How do you reconcile this example with your contention that product requirements &quot;are neither functional nor non-functional&quot;?  (I posed this question in a comment on your &quot;Valuable and Functional Requirements&quot; entry.)

3.  I certainly do not deny that people use the word &quot;requirement&quot; and related terms in many different ways.  Indeed - the diverse usages of the terms are central to my point.  I contend that these diverse usages are irreconcilable, and further that their incoherence and inconsistency is destructive.

4.  When linguists face this sort of problem, they &lt;a href=&quot;http://cauvin.blogspot.com/2006/11/explication.html&quot; rel=&quot;nofollow&quot;&gt;explicate&lt;/a&gt; the terms.  I.e., they account for all the usages, point out the inconsistencies and inefficiencies, and extract the essence of the terms to clarify their meanings.

5.  It&#039;s a bit like math students who say that two angles are &quot;equal&quot;.  We know what they mean, but we also know that this terminology is in some sense &quot;wrong&quot;.  The &lt;i&gt;measures&lt;/i&gt; of the angles are equal; the angles themselves are &lt;i&gt;congruent&lt;/i&gt;.  In the case of geometry, this terminological confusion is rather innocuous.  Unfortunately, in the case of requirements terminology, the usage is so skewed and inconsistent that it reflects, and contributes to, a requirements crisis.

6.  I have no issue with two levels of documents, at least in theory.  I just don&#039;t see how you can reconcile the terminology.  The PRD/SRS distinction is much more linguistically coherent if you call the SRS an FDS (functional design specification) or an IDS (interaction design specification).  Such a naming scheme would, in my opinion, lead to greater awareness of the goals that should drive the product and more attention to the nonfunctional requirements that never seem to get their due.</description>
		<content:encoded><![CDATA[<p>Scott, I very much appreciate your patient, respectful, and insightful approach to continuing this dialog.  Unfortunately, I don&#8217;t think we can stick a fork in it yet.</p>
<p>A few things:</p>
<p>1. I should not have implied that you favor producing every document (MRD, PRD, FRS, SRS).  My real point is that I don&#8217;t think it&#8217;s possible to reconcile all of the <i>terminology</i> (&#8220;market requirement&#8221;, &#8220;product requirement&#8221;, &#8220;functional requirement&#8221;, &#8220;nonfunctional requirement&#8221;, &#8220;software requirement&#8221;) associated with these documents.  I&#8217;m even struggling to understand how you reconcile PRD terminology with SRS terminology (see #2).</p>
<p>2. As I see it, one of your examples of a product requirement, &#8220;The system shall reccommend ingredient purchase amounts and timing that would reduce spoilage by at least 50% against the baseline,&#8221; is a combination of a functional requirement (&#8220;The system shall recommend purchase amounts and timing.&#8221;) and a nonfunctional requirement (&#8220;Spoilage stemming from the system’s purchase recommendations shall not exceed 50% of the baseline amount.&#8221;).  How do you reconcile this example with your contention that product requirements &#8220;are neither functional nor non-functional&#8221;?  (I posed this question in a comment on your &#8220;Valuable and Functional Requirements&#8221; entry.)</p>
<p>3.  I certainly do not deny that people use the word &#8220;requirement&#8221; and related terms in many different ways.  Indeed &#8211; the diverse usages of the terms are central to my point.  I contend that these diverse usages are irreconcilable, and further that their incoherence and inconsistency is destructive.</p>
<p>4.  When linguists face this sort of problem, they <a href="http://cauvin.blogspot.com/2006/11/explication.html" rel="nofollow">explicate</a> the terms.  I.e., they account for all the usages, point out the inconsistencies and inefficiencies, and extract the essence of the terms to clarify their meanings.</p>
<p>5.  It&#8217;s a bit like math students who say that two angles are &#8220;equal&#8221;.  We know what they mean, but we also know that this terminology is in some sense &#8220;wrong&#8221;.  The <i>measures</i> of the angles are equal; the angles themselves are <i>congruent</i>.  In the case of geometry, this terminological confusion is rather innocuous.  Unfortunately, in the case of requirements terminology, the usage is so skewed and inconsistent that it reflects, and contributes to, a requirements crisis.</p>
<p>6.  I have no issue with two levels of documents, at least in theory.  I just don&#8217;t see how you can reconcile the terminology.  The PRD/SRS distinction is much more linguistically coherent if you call the SRS an FDS (functional design specification) or an IDS (interaction design specification).  Such a naming scheme would, in my opinion, lead to greater awareness of the goals that should drive the product and more attention to the nonfunctional requirements that never seem to get their due.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

