<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;A0MCQXo-fip7ImA9WhRUEUQ.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112</id><updated>2012-01-21T18:31:00.456-08:00</updated><category term="logging" /><category term="Lean" /><category term="Mockito" /><category term="value" /><category term="log4jdbc" /><category term="Agile Objective" /><category term="free taskboard tool scrum xp task board" /><category term="Software Craftsmanship" /><category term="Test Automation" /><category term="user stories" /><category term="Iterative and Incremental Development" /><category term="Agile collaboration" /><category term="TDD" /><category term="scrum" /><category term="feedback" /><category term="Agile" /><category term="Agile components" /><category term="kanban" /><category term="timebox" /><category term="Agile communication" /><category term="Agile tribes" /><category term="Spring" /><category term="Clean Code" /><category term="SimpleJdbcTemplate" /><category term="self-organization" /><category term="xp" /><category term="Agile lightweight methodology" /><category term="Agile and CMMI" /><category term="PowerMock" /><category term="estimation" /><title>Agile Booknote</title><subtitle type="html">Notes from someone that loved Agile at first sight and now is trying to understand why</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://agilebooknote.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>68</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/AgileBooknote" /><feedburner:info uri="agilebooknote" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CEMDRHg6eSp7ImA9WhdbE0s.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-4239417870002525783</id><published>2011-10-11T12:47:00.000-07:00</published><updated>2011-10-11T12:47:55.611-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-11T12:47:55.611-07:00</app:edited><title>CMMI desde una Perspectiva Agil</title><content type="html">Mi presentación en #agiles2011&lt;br /&gt;
&lt;br /&gt;
&lt;iframe frameborder="0" height="401" scrolling="no" src="http://app.sliderocket.com:80/app/fullplayer.aspx?id=A9A9AB55-B656-1C15-1A56-DEBA89C8BF72" width="500"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-4239417870002525783?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3GgBMjpYipyLZl9ONLEmRONLQpQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3GgBMjpYipyLZl9ONLEmRONLQpQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3GgBMjpYipyLZl9ONLEmRONLQpQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3GgBMjpYipyLZl9ONLEmRONLQpQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/Xze28d4WBIg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/4239417870002525783/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/10/cmmi-desde-una-perspectiva-agil.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4239417870002525783?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4239417870002525783?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/Xze28d4WBIg/cmmi-desde-una-perspectiva-agil.html" title="CMMI desde una Perspectiva Agil" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/10/cmmi-desde-una-perspectiva-agil.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0YDQnY6fyp7ImA9WhdWEEs.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-4731860732410398205</id><published>2011-09-03T09:59:00.000-07:00</published><updated>2011-09-03T09:59:33.817-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-03T09:59:33.817-07:00</app:edited><title>CMMI = Control &amp; Agile = {Collaboration/Cultivation}</title><content type="html">Pete Behrens gave a talk on &lt;a href="http://trailridgeconsulting.com/culture-of-agility.html?view=slide"&gt;The Culture of Agility&lt;/a&gt; @Agile2011 that left me thinking on the topic of my latest posts, the relationship between CMMI and Agile.&lt;br /&gt;
&lt;br /&gt;
In his presentation, he shows a quadrant which contains 4 different types of cultures:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-HIkBSXMeQLc/TmI_VMKJwWI/AAAAAAAAEE8/dXuHhBrDgKQ/s1600/aLanguageForCulture.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="256" src="http://3.bp.blogspot.com/-HIkBSXMeQLc/TmI_VMKJwWI/AAAAAAAAEE8/dXuHhBrDgKQ/s400/aLanguageForCulture.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
And he defined certain characteristics for each culture. Look the characteristics for a control culture:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-XttuZ4ntgZ0/TmJCqifgQHI/AAAAAAAAEFI/RyM-b1GEkcQ/s1600/controlculture.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="420" src="http://2.bp.blogspot.com/-XttuZ4ntgZ0/TmJCqifgQHI/AAAAAAAAEFI/RyM-b1GEkcQ/s640/controlculture.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
This really looks like CMMI, right?. "Policy and procedures are extremely important", "The system is more important than people" (these phrases really sound as the explanation that CMMI gives as to why processes are so important "What holds everything together? It is the processes used in your&amp;nbsp;organization. Processes allow you to align the way you do business. They&amp;nbsp;allow you to address scalability and provide a way to incorporate knowledge&amp;nbsp;of how to do things better. Processes allow you to leverage your resources&amp;nbsp;and to examine business trends.")&lt;br /&gt;
&lt;br /&gt;
Look now the characteristics of a Collaboration Culture:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-wXmCsWF35lI/TmJHyKAnIiI/AAAAAAAAEFM/Vff9_O0aHfg/s1600/collaboration.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="458" src="http://1.bp.blogspot.com/-wXmCsWF35lI/TmJHyKAnIiI/AAAAAAAAEFM/Vff9_O0aHfg/s640/collaboration.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
And the Cultivation Culture:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-6n0CD8N3PFY/TmJJo4apUHI/AAAAAAAAEFQ/r9xaAWk07ns/s1600/cultivation.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="230" src="http://4.bp.blogspot.com/-6n0CD8N3PFY/TmJJo4apUHI/AAAAAAAAEFQ/r9xaAWk07ns/s640/cultivation.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
These really look like Agile, right?&lt;br /&gt;
&lt;br /&gt;
Look now the characteristics of personal and impersonal cultures:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-KY3duuwNDWc/TmJKTMFN1UI/AAAAAAAAEFU/G5pjLp1ayag/s1600/personal-impersonal.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="436" src="http://4.bp.blogspot.com/-KY3duuwNDWc/TmJKTMFN1UI/AAAAAAAAEFU/G5pjLp1ayag/s640/personal-impersonal.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
These one's REALLY looked like Agile on the left side and CMMI on the right side. It is clear that CMMI would fit a control culture much better than a collaboration/cultivation culture and , inversely, Agile fits perfectly on collaboration/cultivation cultures. It's clear how Agile is "Personal", while CMMI is "Impersonal".&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-size: large;"&gt;So what about compatibility. From the perspective of culture, what is the result of combining them?&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
I can imagine a couple of scenarios. In a collaboration/cultivation culture, applying CMMI would push the organization culture towards a more Control/Impersonal culture. From the other side, a control organization (which may be CMMI certified, as it's totally compliant) and wants to become more Agile may encounter a CMMI an obstacle.&lt;br /&gt;
&lt;br /&gt;
So in the culture context, I see the 2 forces going in opposite directions.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-8D3FPJbeUQM/TmJbqixFw5I/AAAAAAAAEFY/VXZLQPcKzvU/s1600/AgileCMMIForce.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="206" src="http://4.bp.blogspot.com/-8D3FPJbeUQM/TmJbqixFw5I/AAAAAAAAEFY/VXZLQPcKzvU/s640/AgileCMMIForce.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
Could this be synergetic or complementary or the effect would be the total opposite? Could this lead to an undefined culture or to an organization where employees are confused on their culture and values?&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-4731860732410398205?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/WeNMibDg5eL1z-bm1p9ETtULRVQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WeNMibDg5eL1z-bm1p9ETtULRVQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/WeNMibDg5eL1z-bm1p9ETtULRVQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WeNMibDg5eL1z-bm1p9ETtULRVQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/uEolPU9HtSw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/4731860732410398205/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/09/cmmi-control-agile-collaborationcultiva.html#comment-form" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4731860732410398205?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4731860732410398205?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/uEolPU9HtSw/cmmi-control-agile-collaborationcultiva.html" title="CMMI = Control &amp; Agile = {Collaboration/Cultivation}" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-HIkBSXMeQLc/TmI_VMKJwWI/AAAAAAAAEE8/dXuHhBrDgKQ/s72-c/aLanguageForCulture.jpg" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/09/cmmi-control-agile-collaborationcultiva.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMMQXkzeSp7ImA9WhdSFUk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-6284747294563943476</id><published>2011-07-24T15:27:00.000-07:00</published><updated>2011-07-24T15:28:00.781-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-24T15:28:00.781-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Software Craftsmanship" /><title>Software Craftsmen Movement</title><content type="html">When software development started, perhaps I guess about 50 years ago (probably more), I believe programming was the most important task in all software development life-cycle. Other tasks or phases probably didn't exist. They were embedded in what they called programming (right, the old ones?). After a few years, we started learning how to develop software better. This learning derived in methodologies that were created. In these methodologies, new phases such as analysis and designed appeared and in &amp;nbsp;many of them, those phases became more important than programming itself. This was weird because the actual task of building the software lost importance. In heavyweight waterfall methodologies, analysis and design took most of the work. Programming was just a translation work that could be performed (probably by anyone) when all the important work had already been done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Changing the subject, I usually asked myself: How do we, programmers, know that we do our work correctly? Programming is one of those jobs where anyone, with google's help, can combine a few frameworks, throw a few lines of code and create a basic software system. But does that make you a good programmer? Another circumstance which perhaps is different than in other areas, is that our job market has been in need of professionals for many years, absorbing most or all the people in the field. So for many of use, getting a job as a programmer as been an easy thing. We just got off from University and they were waiting for us. But does that make us good programmers? I believe I can speak on behalf of lots of people when I say that we go from receiving very theoretical classes of Computer Science at University to try to resolve down to earth problems using a programming language. And this happens, a lot of times, without guidance (because supossedly we learned this at University?). Or isn't it true that lots of us have throw our first few thousands of lines of code to production without anyone checking them? I wonder: who teaches us how we should do our job as programmers, the day to day tasks. I'm not talking about learning a programming language. I'm talking about how to use it to resolve a problem, which is the best process to do it, what are the techniques. &amp;nbsp;This lack of guidance, of someone that verifies our first steps, of someone that shows us the way, makes it difficult for us to understand how we progress in our career. The leap from finishing University to becoming a good programmer is huge. And how do we fill it? How are we supposed to know what it takes to be a good programmer? Is there any curricula we could follow? Is there a career path somewhere? For sure, I wasn't aware of one.&lt;br /&gt;
&lt;br /&gt;
I believe those are the 2 main reasons that fueled the creation of the software craftsmanship movement. Agile was in part a revolution against the essence of heavyweighted methodologies. A revolution that put the programming task as the most important task in all software development life-cycle again. The software craftsmanship movement took this revolution a step further. The actual task of coding the software is the most important task and it is not by any means a simple task. It is a task that requires understanding the business problem to solve, model it in the best possible way, program it using a programming language and by many programmers who all need to agree and implement the same model. To add more complexity, &amp;nbsp;many times the business scenarios change and software needs to change, to adapt to those changes. University doesn't prepare us for this job and companies need developers developing as soon as possible.&lt;br /&gt;
&lt;br /&gt;
The Software Crafstmanship Manifesto states the following:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;i&gt;As aspiring Software Craftsmen we are raising the bar of professional software development by practicing it and helping others learn the craft. Through this work we have come to value:&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;i&gt;Not only working software, but also well-crafted software&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;i&gt;Not only responding to change, but also steadily adding value&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;i&gt;Not only individuals and interactions, but also a community of professionals&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;i&gt;Not only customer collaboration, but also productive partnerships&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;i&gt;&lt;br /&gt;
That is, in pursuit of the items on the left we have found the items on the right to be indispensable.&lt;/i&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
The first important thing to note in this manifesto is that it treats software programming as a craft. A craft is by the dictionary "an art, trade, or occupation requiring special skill, especially manual skill". A clear example of a craft is a carpenter. And how do you learn the carpenter's craft? First you start besides a carpenter as an apprentice and follow him, for a lot of time. Then you start doing small things on your own. And after a long time you master that craft and are able to perform it on your own. Look how different it looks from the path that many of us have followed. Also note that a craft is something that needs to be practiced. Software craftsmen practice their profession not only daily at work, but also through code katas and getting together to improve their craft in code retreats.&lt;br /&gt;
&lt;br /&gt;
Look at the values now. Not just software, but well crafted software. Although some people may say that well crafted software is not the goal (producing value is), software craftsmen know that the best way of producing value is to produce good software,software that is robust, adaptable and can keep growing and producing value for a long period of time. I believe the third value indicates what should be the way to achieve this. A community of professionals. Through the software craftmanship community, I believe that now it's possible to follow a career path that takes you from apprentice to good developer. Professionals on this community are very open to teach what they know and help others become good professionals.&lt;br /&gt;
&lt;br /&gt;
The software craftsmanship movement provided a new perspective to our profession of software programmers. It stressed the importance of programming and also of becoming a good programmer. And it also indicated the way to achieve this. A programmer should start as an apprentice who learns from someone that knows the craft. With practice, and more practice, this apprentice will learn the craft and become a good programmer.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-6284747294563943476?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/f5Q1AjyXMYqnc77UuJzrsMiQ7so/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/f5Q1AjyXMYqnc77UuJzrsMiQ7so/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/f5Q1AjyXMYqnc77UuJzrsMiQ7so/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/f5Q1AjyXMYqnc77UuJzrsMiQ7so/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/8e70aI7P4do" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/6284747294563943476/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/07/software-craftsmen-movement.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/6284747294563943476?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/6284747294563943476?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/8e70aI7P4do/software-craftsmen-movement.html" title="Software Craftsmen Movement" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/07/software-craftsmen-movement.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkIBRX48fip7ImA9WhZaF0U.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-4418500930772751531</id><published>2011-07-04T06:02:00.000-07:00</published><updated>2011-07-04T06:02:34.076-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-04T06:02:34.076-07:00</app:edited><title>Code &amp; Beyond: Video: ¿Qué esperas de Agile? con Federico Zuppa</title><content type="html">&lt;a href="http://www.codeandbeyond.org/2011/07/video-que-esperas-de-agile-con-federico.html?spref=bl"&gt;Code &amp;amp; Beyond: Video: ¿Qué esperas de Agile? con Federico Zuppa&lt;/a&gt;: "Este video es de una de las reuniones mensuales de Agiles @ Buenos Aires , pero me había quedado en el tintero procesarlo y publicarlo, así..."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-4418500930772751531?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/j4BZJp7wpnIQOSn7aS4dlaWM3UA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/j4BZJp7wpnIQOSn7aS4dlaWM3UA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/j4BZJp7wpnIQOSn7aS4dlaWM3UA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/j4BZJp7wpnIQOSn7aS4dlaWM3UA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/f_3lzh1grrk" height="1" width="1"/&gt;</content><link rel="related" href="http://www.codeandbeyond.org/2011/07/video-que-esperas-de-agile-con-federico.html?spref=bl" title="Code &amp; Beyond: Video: ¿Qué esperas de Agile? con Federico Zuppa" /><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/4418500930772751531/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/07/code-beyond-video-que-esperas-de-agile.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4418500930772751531?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4418500930772751531?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/f_3lzh1grrk/code-beyond-video-que-esperas-de-agile.html" title="Code &amp; Beyond: Video: ¿Qué esperas de Agile? con Federico Zuppa" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/07/code-beyond-video-que-esperas-de-agile.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEcGQXwzeCp7ImA9WhZbEUo.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-1836836306524836261</id><published>2011-06-15T15:13:00.000-07:00</published><updated>2011-06-15T15:13:40.280-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-15T15:13:40.280-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Lean" /><title>The Lean Tribe</title><content type="html">The Agile Manifesto triggered the growth of "the so called until that moment lightweight methodologies". Scrum and XP became very popular and the tribes associated to them grew with them. However, not long after the Agile Manifesto was signed a new actor entered the scene with outreagous strength. His friends use to call him "Lean" :-)&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-3v-1b1Btx6w/TfPVSb307UI/AAAAAAAAEDU/tfwlwFtJA_8/s1600/super-lean.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-3v-1b1Btx6w/TfPVSb307UI/AAAAAAAAEDU/tfwlwFtJA_8/s320/super-lean.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So what is Lean? Lean has its roots in the Toyota Production System developed by Taichi Ohno. Its core idea is to maximize customer value while minimizing waste.&lt;br /&gt;
&lt;br /&gt;
Lean was brought into the Agile world by Mary and Tom Poppendieck who in their book "Lean Software Development: An Agile toolkit" translated 7 lean principles used in manufacturing to software development language.&lt;br /&gt;
&lt;br /&gt;
Although Lean and Agile share many of the same values and principles as they both are people centric and empower people and they both try to adapt/improve the process continually, they also have some differences as well. The main one in my opinion is its main objective: Agile was developed mostly by software developers and therefore its main objetive is "to uncover better ways of developing software". Lean has in its essence a broader objective (and a broader target) as it seeks to improve the flow of value and this could only happen at an organizational level.&lt;br /&gt;
&lt;br /&gt;
The Agile world was greatly modified by the entrance of Lean. So much that probably now it is an Agile/Lean world.&lt;br /&gt;
&lt;br /&gt;
So who are the referents of this new Lean tribe. Where do they get together. Do they breed with Agile folks? :D I know I may be missing many of the referents of the manufacture industries but these are the ones I know:&lt;br /&gt;
&lt;br /&gt;
- Mary and Tom Poppendieck&lt;br /&gt;
- Eli Goldratt (RIP)&lt;br /&gt;
- David Anderson&lt;br /&gt;
- Karl Scotland&lt;br /&gt;
- Alan Shalloway&lt;br /&gt;
&lt;br /&gt;
These folks get together in conferences like "Lean Software and Systems" (in its &lt;a href="http://lssc11.crowdvine.com/speakers"&gt;website&lt;/a&gt;, you'll be able to find all the speakers that attended in 2011)&lt;br /&gt;
&lt;br /&gt;
In the last few years, the Lean tribe grew incredibly fast. Particularly, a lean tool called Kanban has gained a great deal of attention and is becoming the new "Scrum" of the moment (or the new star of the moment).&lt;br /&gt;
&lt;br /&gt;
How is the relationship between Agile and Lean? Well, I believe that although there have been some fights (or discussions should I say) because sometimes tribes defend their interests, the Agile community has a lot to learn from the Lean community. Although in the Agile world, Lean is new, it really is much older than Agile.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-1836836306524836261?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8shhY6wxDwJdYB9-ZhY1inQKfZ0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8shhY6wxDwJdYB9-ZhY1inQKfZ0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8shhY6wxDwJdYB9-ZhY1inQKfZ0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8shhY6wxDwJdYB9-ZhY1inQKfZ0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/6npkQI0wt2c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/1836836306524836261/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/06/lean-tribe.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/1836836306524836261?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/1836836306524836261?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/6npkQI0wt2c/lean-tribe.html" title="The Lean Tribe" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-3v-1b1Btx6w/TfPVSb307UI/AAAAAAAAEDU/tfwlwFtJA_8/s72-c/super-lean.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/06/lean-tribe.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0YAR3s-fCp7ImA9WhZVGEg.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-3286966668499693112</id><published>2011-05-31T08:19:00.000-07:00</published><updated>2011-05-31T08:19:06.554-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-31T08:19:06.554-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile tribes" /><title>Agile Tribes</title><content type="html">The people that got together 10 years ago in Salt Lake City had different backgrounds, specialties, positions, etc.There were some folks already working on their own methodologies, such  as Beck with XP, Schwaber and Sutherland with Scrum and Cockburn with  Crystal.  Some of them were more technical, specializing in OO, programming and testing while some others were managers or people more interested in the methodology aspects of software development. This is more or less what I believe were the backgrounds that depict the folks that were there:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://docs.google.com/drawings/pub?id=1MIu-wixuIbtbJ8kpsTsYDrTpnc5nIn2qt-VjbktAVgE&amp;amp;w=936&amp;amp;h=468" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="https://docs.google.com/drawings/pub?id=1MIu-wixuIbtbJ8kpsTsYDrTpnc5nIn2qt-VjbktAVgE&amp;amp;w=936&amp;amp;h=468" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Now I wonder how these 'tribes' (or communities or subfields of interests - I wonder what is the best name) develop over the years. How did they grow or mutated? Which are the new tribes that make up the Agile world?. Who are the new referents of these tribes? Will you help me create this map?&lt;br /&gt;
How do I define what a tribe is? Let's list some items that define a tribe:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; They share the same values and principles (which should enter the big Agile umbrella)&lt;/li&gt;
&lt;li&gt;They work with a certain methodology or method&lt;/li&gt;
&lt;li&gt;They have some referents&lt;/li&gt;
&lt;li&gt;They get together in one of more congresses (this could be a consequence of the previous)&lt;/li&gt;
&lt;/ul&gt;Am I missing something to define a tribe? Hummm, yeah for sure. Will see it as we go (iteratively). For the moment, I will research for each tribe the following items:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Reason to be (values/principles they share, objectives)&lt;/li&gt;
&lt;li&gt;History&lt;/li&gt;
&lt;li&gt;Referents&lt;/li&gt;
&lt;li&gt;Present/Future?&lt;/li&gt;
&lt;/ul&gt;Now I just need to select the most important tribes in today's Agile map. I will start with these ones:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Kanbaners&lt;/li&gt;
&lt;li&gt;Software Craftsmen&lt;/li&gt;
&lt;li&gt;Lean-startupers&lt;/li&gt;
&lt;li&gt;Scrumers &lt;/li&gt;
&lt;li&gt;XPs&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
I will focus on the first 3 groups, as the last 2 exist since the beggining of Agile.&lt;br /&gt;
I'd love to receive suggestions/corrections, etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-3286966668499693112?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/wmqhq_o3CZcxHaJoBPcd5YicIpg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wmqhq_o3CZcxHaJoBPcd5YicIpg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/wmqhq_o3CZcxHaJoBPcd5YicIpg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wmqhq_o3CZcxHaJoBPcd5YicIpg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/j1X6dHJXHkk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/3286966668499693112/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/05/agile-tribes.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/3286966668499693112?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/3286966668499693112?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/j1X6dHJXHkk/agile-tribes.html" title="Agile Tribes" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/05/agile-tribes.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUUGQXw_eip7ImA9WhZVEUU.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-2424622654230203332</id><published>2011-05-23T13:40:00.000-07:00</published><updated>2011-05-23T13:40:20.242-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-23T13:40:20.242-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="SimpleJdbcTemplate" /><category scheme="http://www.blogger.com/atom/ns#" term="logging" /><category scheme="http://www.blogger.com/atom/ns#" term="Spring" /><category scheme="http://www.blogger.com/atom/ns#" term="log4jdbc" /><title>log4jdbc: Una herramienta muy útil en desarrollo</title><content type="html">Me estaba preguntando si existía una herramienta que permita ver los queries que se ejecutan contra la DB cuando se usa &lt;a href="http://static.springsource.org/spring/docs/3.0.x/api/org/springframework/jdbc/core/simple/SimpleJdbcTemplate.html"&gt;SimpleJdbcTemplate&lt;/a&gt; en Spring. Y.. existe. Se llama &lt;span id="goog_686015515"&gt;&lt;/span&gt;&lt;a href="http://draft.blogger.com/"&gt;log4jdbc&lt;span id="goog_686015516"&gt;&lt;/span&gt;&lt;/a&gt; y la instalación es sencillisima.&lt;br /&gt;
Una vez instalado, en el log de la aplicación se podrán ver los queries y también el tiempo de ejecución. &lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45728) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; s&lt;b&gt;elect DISTINCT location_code from PURCHASE_LINES where number = 'XXX'&lt;/b&gt; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:223) [2011-05-23 21:32:21,341]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 46995) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; &lt;b&gt;select DISTINCT codes from &lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;PURCHASE_LINES&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt; where po_number = 'XXX' &lt;/span&gt;&lt;/b&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;{executed in 1267 msec}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:322) [2011-05-23 21:32:22,608]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 46997) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. ResultSet.new ResultSet returned&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,610]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 46998) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. PreparedStatement.executeQuery() returned net.sf.log4jdbc.ResultSetSpy@159d796&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,611]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 46999) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. ResultSet.next() returned true&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,612]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 47000) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. ResultSet.getMetaData() returned oracle.jdbc.driver.OracleResultSetMetaData@19e80b1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,613]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 47001) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. ResultSet.getString(1) returned 10176 KKKKKK &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,614]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 47002) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. ResultSet.next() returned true&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,615]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 47003) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. ResultSet.getMetaData() returned oracle.jdbc.driver.OracleResultSetMetaData@113126e&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,616]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 47004) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. ResultSet.getString(1) returned SSSSSSS &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,617]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 47005) [http-8400-3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] INFO&amp;nbsp; 5. ResultSet.next() returned true&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | at net.sf.log4jdbc.Slf4jSpyLogDelegator(Slf4jSpyLogDelegator.java:158) [2011-05-23 21:32:22,618]&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pretty cool, ah?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-2424622654230203332?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/WJcWyDzDMs8cE21pTiRmhF7HzPg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WJcWyDzDMs8cE21pTiRmhF7HzPg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/WJcWyDzDMs8cE21pTiRmhF7HzPg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WJcWyDzDMs8cE21pTiRmhF7HzPg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/SKFwPWGJ8us" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/2424622654230203332/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/05/log4jdbc-una-herramienta-muy-util-en.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/2424622654230203332?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/2424622654230203332?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/SKFwPWGJ8us/log4jdbc-una-herramienta-muy-util-en.html" title="log4jdbc: Una herramienta muy útil en desarrollo" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/05/log4jdbc-una-herramienta-muy-util-en.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkUBRno9fip7ImA9WhZREko.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-469818919410717928</id><published>2011-04-08T08:57:00.000-07:00</published><updated>2011-04-08T08:57:37.466-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-04-08T08:57:37.466-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="PowerMock" /><category scheme="http://www.blogger.com/atom/ns#" term="Mockito" /><category scheme="http://www.blogger.com/atom/ns#" term="Spring" /><category scheme="http://www.blogger.com/atom/ns#" term="TDD" /><title>Inyectando un Spring Service con PowerMock + Mockito</title><content type="html">&lt;span style="font-size: small;"&gt;Ayer a la tarde estaba intentando hacer un test para nuestra aplicaci&lt;/span&gt;ó&lt;span style="font-size: small;"&gt;n que usa Spring en el backend. Una de las cosas que me di cuenta que cambiaron desde la ultima vez que use Spring es que todos los beans son inyectados automagicamente con la anotaci&lt;/span&gt;ó&lt;span style="font-size: small;"&gt;n @Autowire, por lo que no es necesario ni tener un constructor ni un setter para inyectar una dependencia. La pregunta ahora es como hago para testear estos beans? (para inyectar mocks en estos beans). Dps. de investigar un rato encuentro la libreria &lt;a href="http://code.google.com/p/powermock/"&gt;PowerMock &lt;/a&gt;que permite hacer cosas locas, como stubbear un metodo est&lt;/span&gt;á&lt;span style="font-size: small;"&gt;tico u obtener/setear el estado interno de un bean (rompiendo asi la encapsulaci&lt;/span&gt;ó&lt;span style="font-size: small;"&gt;n). Por ejemplo, la sintaxis para setear una variable privada es la siguiente:&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: x-small;"&gt;UserRepository userRepositoryMock = mock(UserRepository.class); // declaro el mock, usando mockito&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: x-small;"&gt;when(userRepositoryMock.safeGetLoggedUser()).thenReturn(adminUser); // seteo las expectativas&lt;br /&gt;
Whitebox.setInternalState(invoiceRepository, "userRepository", userRepositoryMock); // inyecto el mock, usando Powermock&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Cual es el problema con el que me tope? Spring utiliza proxies para manejar las transacciones via AOP y estos proxies implementan la interfase del servicio, que no contiene los setters para sus campos. Osea que si quisieramos hacer lo mismo para un servicio (en vez de un repositorio como en el ejemplo),&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;Whitebox.setInternalState(scannedFileService, "userRepository", userRepositoryMock); // inyecto el mock, usando Powermock&lt;/span&gt; &lt;br /&gt;
&lt;br /&gt;
PowerMock se quejaría (porque estamos queriendo llamar un método en una clase que no tiene ese metodo). La exception que arroja es la siguiente:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;Caused by: java.lang.RuntimeException: You want me to set value to this field: 'userRepository' on this class: 'Object' but this field is not declared withing hierarchy of this class!&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.mockito.internal.util.reflection.Whitebox.getFieldFromHierarchy(Whitebox.java:40)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.mockito.internal.util.reflection.Whitebox.setInternalState(Whitebox.java:25)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ... 31 more&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Esto se podría arreglar agregando el setter a la interfase del servicio, pero la verdad es q no me parecia limpio tener q modificar la interfase publica solamente a efectos de testear. Por suerte, existe una solución. Investigando un poco mas, encontre &lt;a href="http://forum.springsource.org/showthread.php?t=10902"&gt;este&lt;/a&gt; foro que indica como hacer con Spring para obtener el objeto 'aconsejado' (advised) desde el proxy.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: x-small;"&gt;Advised advised = (Advised) scannedFileService;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: x-small;"&gt;ScannedFileService target = (ScannedFileService)advised.getTargetSource().getTarget();&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: x-small;"&gt;Whitebox.setInternalState(target, "userRepository", userRepositoryMock);&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;et voila! Una vez obtenido el objeto aconsejado, powermock se encarga del resto. Espero sus comentarios (les parece un overkill? Agregarian los setters directamente? etc.)&lt;br /&gt;
&lt;br /&gt;
Agrego dependencias de powermock en maven para aquellos que son lentos como yo y les cuesta encontrar las dependencias :-). &lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;dependency&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;groupid&gt;org.powermock.modules&lt;/groupid&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;artifactid&gt;powermock-module-junit4&lt;/artifactid&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;version&gt;1.3.9&lt;/version&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;scope&gt;test&lt;/scope&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/dependency&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;dependency&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;groupid&gt;org.powermock.api&lt;/groupid&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;artifactid&gt;powermock-api-mockito&lt;/artifactid&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;version&gt;1.3.9&lt;/version&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;scope&gt;test&lt;/scope&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/dependency&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;&lt;dependency&gt;&amp;nbsp;&lt;/dependency&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;&lt;dependency&gt; &lt;/dependency&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-469818919410717928?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oVyzrmZfLzh_q4Wl-3XbBxRRAI8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oVyzrmZfLzh_q4Wl-3XbBxRRAI8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oVyzrmZfLzh_q4Wl-3XbBxRRAI8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oVyzrmZfLzh_q4Wl-3XbBxRRAI8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/dS9ZbgHpUmE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/469818919410717928/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/04/inyectando-un-spring-service-con.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/469818919410717928?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/469818919410717928?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/dS9ZbgHpUmE/inyectando-un-spring-service-con.html" title="Inyectando un Spring Service con PowerMock + Mockito" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/04/inyectando-un-spring-service-con.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMMRn88eyp7ImA9Wx9bE0U.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-4625595476508774912</id><published>2011-02-22T06:04:00.001-08:00</published><updated>2011-02-22T06:04:47.173-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-22T06:04:47.173-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Are Level 5 CMMI Process Areas compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.7423651322196264"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;After  a quantitatively manage organization, the next objective is an  optimizing quantitatively managed organization. An organization that is  constantly improving. CMMI level 5 process areas deal with this.  Improvement, change, should be done (otherwise, the organization is left  behind by others) but it should be managed with care, not to overwhelm  the organization. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  first process area is Organizational Innovation and Deployment (OID).  Its goals and practices represent a measured way of selecting and  deploying improvements. The second process area is called Causal  Analysis and Resolution (CAR) and aims at resolving the root causes of  defects for ever. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The specific goals and practices for OID are:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Select Improvements&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Collect and Analyze Improvement Proposals&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Identify and Analyze Innovations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Pilot Improvements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.4 Select Improvements for Deployment&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Deploy Improvements&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Manage the Deployment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.3 Plan the Deployment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Measure Improvement Effects&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;and for CAR are:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Determine Causes of Defects&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Select Defect Data for Analysis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Analyze Causes&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Address Causes of Defects&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Implement the Action Proposals&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Evaluate the Effect of Changes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.3 Record Data&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="font-weight: normal;"&gt;&lt;u&gt;&lt;b&gt;&lt;i&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; text-decoration: none; vertical-align: baseline;"&gt;Observations&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/u&gt;&lt;/h2&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Both  of these processes are designed to work in a quantitatively managed  organization. CMMI states that if it isn’t quantitatively managed, it  would work, but it wouldn’t be as effective. I wondered when I started  reading the book if optimization wasn’t left for too late in CMMI. In  one side, how would you optimize if you can’t measure? On the other, my  experience with Agile is that optimization comes from the very first  moments, at the standup and in the retrospective meetings where  opportunities for improvement are detected. Of course all these  optimizations are really subjective, as the improvement they provide  can’t really be measured.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Another  point that I wanted to make is that CMMI mentions that everyone should  be empowered to propose optimizations. This goes very much in line with  the lean approach to optimization.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  didn’t see any point of incompatibility in these areas. Having a  framework in the organization to do Kaizen is very important for the  organization as it allows to optimize with the organization’s objectives  (i.e. with everyone aligned) , it allows to do it in an orderly fashion  and it allows to really know what is been optimized and how much. &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-4625595476508774912?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vQ3JhsScSxp5gGftwYodZH_0quM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vQ3JhsScSxp5gGftwYodZH_0quM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vQ3JhsScSxp5gGftwYodZH_0quM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vQ3JhsScSxp5gGftwYodZH_0quM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/fiUSBm-l4rA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/4625595476508774912/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/02/are-level-5-cmmi-process-areas.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4625595476508774912?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4625595476508774912?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/fiUSBm-l4rA/are-level-5-cmmi-process-areas.html" title="Are Level 5 CMMI Process Areas compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/02/are-level-5-cmmi-process-areas.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0cDRnc4cSp7ImA9Wx9bEU8.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-7965879586235204036</id><published>2011-02-19T05:11:00.000-08:00</published><updated>2011-02-19T05:11:17.939-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-19T05:11:17.939-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Are Level 4 CMMI Process Areas compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.6636455072658582"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  merged the process areas in level 4, because they are really inter  twinned and probably don’t make sense to do one and not the other. The  first one, the Organizational Process Performance aims at “establish and  maintain a quantitative understanding of the performance of the  organization’s set of standard processes”. Based on these baselines, the  Quantitative Project Management process area sets the objectives and  “quantitatively manage the project’s defined process to achieve the  project’s established quality and process-performance objectives.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The Organizational Process Performance goals and practices are listed below:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Establish Performance Baselines and Models&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Select Processes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Establish Process-Performance Measures&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Establish Process-Performance Baselines&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.5 Establish Quality and Process-Performance Objectives&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.4 Establish Process-Performance Models&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The Quantitative Project Management goals and practices are listed below:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Quantitatively Manage the Project&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1Establish the Project’s Objectives&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Compose the Defined Process&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Select the Subprocesses that Will Be Statistically Managed&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.4 Manage Project Performance&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Statistically Manage Subprocess Performance&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Select Measures and Analytic Techniques&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Apply Statistical Methods to Understand Variation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.3 Monitor Performance of the Selected Subprocesses&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.4 Record Statistical Management Data&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Metrics? What metrics?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;In  CMMI Level 4, the organization reaches a level where the existing  processes can be quantitatively measured. Objective objectives can be  set based on these measures. Being able to measure is vital to being  able to manage and optimize. Jurgen published a &lt;/span&gt;&lt;a href="http://www.noop.nl/2011/01/manage-yourself-with-measures.html"&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;post&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt; recently that states “You cannot manage what you don’t measure”. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;A  very important point to keep in mind when selecting what to measure is  that these metrics need to be compatible with the Agile values and  practices. Wrongly selected metrics may create dysfunctional behaviours,  detrimental to the organization’s objectives. Dave Nicolette has a very  nice &lt;/span&gt;&lt;a href="http://davenicolette.wikispaces.com/Agile+Metrics"&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;presentation&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;  regarding Agile metrics. Some of the metrics he discusses are “Running  Tested Features”, “Hard Financial Value” and “Earned Business Value”. I  wonder, with these metrics, how to handle at the organizational level  the context differences among the projects. I mean, each project is  different, runs under different circumstances, will deliver business  value in a different way, etc. All these factors need to be considered  to draw conclusions from the metrics.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;These  metrics need to provide the picture needed by upper management to take  decisions and manage risk appropriately. Being able to visualize the  processes used, detect and resolve problems is of utmost importance in  mature organizations.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Can everything be measured?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;There’s  a nice quote by Albert Einstein in Dave’s presentation that says “Not  everything that counts can be counted, and not everything that can be  counted counts.”. Is there place for subjectivity in a mature  organization? How and where would it work? Agile methods stimulate  optimization since the very beginning and this is performed, in most  cases, subjectively. Teams introspect on the previous iteration, try to  determine how they feel and propose ideas that would optimize the  process. At upper levels, it would be impossible to optimize this way.  Managers need to see the broad view and the only way seems to be through  measures.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Keep it light!&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  must confess that after reading both process areas in level 4, I ended  up a bit scared. It really sounds difficult and requirements seem pretty  heavy. Agile processes are characterized by their minimum overhead. The  machinery required to measure and optimize processes shouldn’t increase  this overhead significantly. For this, measures should be taken in the  most automatic way, only what is needed should be measured and when it’s  not needed anymore it should be dropped. There should be constant  improvement in the improvement processes. &lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Being  able to measure, to understanding where it is standing allows an  organization to set improvement objectives. These measures need to be  align with the Agile philosophy. The improvement machinery should be  kept light.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-7965879586235204036?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/I4AjK94NAPbYNg8cD_a5G5y-ifA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/I4AjK94NAPbYNg8cD_a5G5y-ifA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/I4AjK94NAPbYNg8cD_a5G5y-ifA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/I4AjK94NAPbYNg8cD_a5G5y-ifA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/ZBuD1NjmtZ0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/7965879586235204036/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/02/are-level-4-cmmi-process-areas.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/7965879586235204036?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/7965879586235204036?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/ZBuD1NjmtZ0/are-level-4-cmmi-process-areas.html" title="Are Level 4 CMMI Process Areas compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/02/are-level-4-cmmi-process-areas.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEICQ3kycSp7ImA9Wx9UGEs.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-6103792281207605000</id><published>2011-02-16T05:19:00.000-08:00</published><updated>2011-02-16T05:22:42.799-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-16T05:22:42.799-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Decision Analysis and Resolution Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.2530109693366074"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: large; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Decision Analysis and Resolution process area, a process area at level  3, aims at “formal evaluation process that evaluates identified  alternatives against established criteria.”&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Evaluate Alternatives&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Establish Guidelines for Decision Analysis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Establish Evaluation Criteria&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Identify Alternative Solutions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.4 Select Evaluation Methods&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.5 Evaluate Alternatives&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SP 1.6 Select Solutions&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Inclusive and Fair&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The process should be inclusive and fair.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Inclusive&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;:  All stakeholders should be involved in the decision. With this, I am  not saying that all stakeholders need to agree on the solution. Probably  this is impossible or too costly. I am just saying that everyone should  be able to participate in the decision process, express their opinions,  being heard. A good facilitator will increase the chances of everyone  being heard and of taking a good decision. Being included in the  decision process provides great encouragement to follow through the  selected paths. Collaborative decision making is of utmost importance in  Agile.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Fair&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;:  the process should be fair. Every person in the team should feel that  it was not an arbitrary decision imposed. The decision was taken using a  process that they understand and consider fair. Of course, not everyone  will agree, even if a very fair process is used. However, even not  agreeing, if they consider that the process was fair, they will accept.  On the contrary, if the feeling is the decision was imposed through a  not so transparent process, the decision taken will be very difficult to  accept. An excellent paper regarding this topic can be found &lt;/span&gt;&lt;a href="http://hbr.org/2003/01/fair-process/ar/1"&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;here&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: large; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  believe it would be very beneficial to have a defined formal process  that can be used to take difficult decisions. To be more Agile, the  process should be inclusive and fair (which are really very inter  twinned)&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-6103792281207605000?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lUC2jSwOKVRhXBCvD_4qJSF3VoM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lUC2jSwOKVRhXBCvD_4qJSF3VoM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/lUC2jSwOKVRhXBCvD_4qJSF3VoM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lUC2jSwOKVRhXBCvD_4qJSF3VoM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/EWBW2PkA7q8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/6103792281207605000/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/02/is-decision-analysis-and-resolution.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/6103792281207605000?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/6103792281207605000?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/EWBW2PkA7q8/is-decision-analysis-and-resolution.html" title="Is the Decision Analysis and Resolution Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/02/is-decision-analysis-and-resolution.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYERHs8cSp7ImA9Wx9UF0o.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-3251825852882864671</id><published>2011-02-15T05:54:00.000-08:00</published><updated>2011-02-15T05:55:05.579-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-15T05:55:05.579-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Risk Management Process Area compatible with Agile?</title><content type="html">&lt;span id="internal-source-marker_0.6618722608022058" style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Risk Management process area, a process area at level 3, aims at  foreseen risks so that they can be mitigated in case they occur.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Prepare for Risk Management&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Determine Risk Sources and Categories&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Define Risk Parameters&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Establish a Risk Management Strategy&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Identify and Analyze Risks&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Identify Risks&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Evaluate, Categorize, and Prioritize Risks&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 3 Mitigate Risks&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.1 Develop Risk Mitigation Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.2 Implement Risk Mitigation Plans&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Is there the need of a risk management process area in an Agile organization?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  have heard this question a lot in organizations that transition to  Agile: How does Agile handle risk management? This question usually  comes from project managers used to Waterfall methodologies where  maintaining a list of potential risks and how to mitigate them was of  utmost importance. Why? Because these risks appeared late in the life of  the project, when a good percentage of the budgeted money has been  expended and there wasn’t much space to take decisions. Been able to  deal with these risks at that moment decided the fate of the project.  Agile approaches risk management differently. Agile tries to deal with  risks as early as possible or as soon as risks appear. The risk that a  user story entails is a decisive factor in the prioritization of this  user story. If a new risk is detected, constant reprioritization assures  that it will be dealt with soon. With this approach, the fate of the  project is decided when there is still room to maneuver and money to do  it. Instead of trying to foresee risks in the future and imagine  solutions, risks are aggressively attacked. A side effect of this  approach is the infrastructure needed to deal with risks is lighter than  the one needed in Waterfall. Would you need a list of risks if you know  that the top priority user stories are attacking the same set of risks?  Not too sure. Would you try to imagine how to deal with them if they  are going to be tackled by the team in the next iteration? No need to  draw in the air, right? The processes and practices in Agile make up the  risks management infrastructure. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Risk Management is embedded into the process in Agile. Therefore, I am not sure this area would be too valuable.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-3251825852882864671?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3J6ZKYrhX830iQcB5azLthyEnpU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3J6ZKYrhX830iQcB5azLthyEnpU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3J6ZKYrhX830iQcB5azLthyEnpU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3J6ZKYrhX830iQcB5azLthyEnpU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/zjPgZZIB5OY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/3251825852882864671/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/02/is-risk-management-rocess-area.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/3251825852882864671?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/3251825852882864671?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/zjPgZZIB5OY/is-risk-management-rocess-area.html" title="Is the Risk Management Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/02/is-risk-management-rocess-area.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak8GQnkycCp7ImA9Wx9UFkQ.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-2303500199573232523</id><published>2011-02-14T07:53:00.000-08:00</published><updated>2011-02-14T07:53:43.798-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-14T07:53:43.798-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Integrated Project Management Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.47005238968023644"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Integrated Project Management process area, a process area at maturity  level 3, aims at establishing and managing projects “according to an  integrated and defined process that is tailored from the organization’s  set of standard processes.”&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Use the Project’s Defined Process&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Establish the Project’s Defined Process&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Use Organizational Process Assets for Planning Project Activities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Establish the Project's Work Environment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.4 Integrate Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.5 Manage the Project Using the Integrated Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.6 Contribute to the Organizational Process Assets&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Coordinate and Collaborate with Relevant Stakeholders&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Manage Stakeholder Involvement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Manage Dependencies&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.3 Resolve Coordination Issues&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Can the Organization knowledge model be more people oriented?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;CMMI  defines a level 2 organization as &amp;nbsp;one that can plan and manage their  projects, but there isn’t a unified view (in the organization) on how to  do it. In the next level, there’s a set of defined processes that  individual projects use, tailoring them to suit their specific needs.  Therefore, the company has a centralized, unified view on how to plan  and manage projects. The flow repository -&amp;gt; project isn’t  unidirectional. As the project ‘learns’, this knowledge is pushed back  to the central repository. This model not only allows to have a unified  view, but also allows reusing and learning inside the organization. I  published in previous posts that I wasn’t sure that all knowledge needed  to develop software could be contained in a central repository. I still  recognized that maintaining a central repository that allows learning  at the organizational level could be very beneficial. It’s hard for me  put up in words what I think it would be missing in an Agile environment  to complement and improve this learning model. I believe it may be this  culture where more senior people seat with junior people to program or  to resolve a difficult issue. Perhaps is just that the CMMI is a model  centered around processes while Agile in centered around people. Should  this learning process be shifted towards people in an Agile  organization? How should it be done?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Having  worked in many companies, I always have the impression that each  project has its own life (use its own processes, tools, etc.). This  shouldn’t be the case in a CMMI level 3 organization. The organization’s  knowledge should be leverage inside the project, and the projects  learnings should leverage the organization’s one. Can this model be  shifted towards a more humanistic, not so process oriented one, to make  it more compatible with Agile?&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Other Areas&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;
&lt;a href="http://agilebooknote.blogspot.com/2011/01/is-organizational-process-definition.html" style="font-family: inherit;"&gt;- Is the Organizational Process Definition Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt; &lt;br /&gt;
&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2011/01/is-organizational-process-focus-process.html"&gt;- Is the Organizational Process Focus Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-validation-process-area-compatible.html"&gt;Is the Validation Process Area compatible with Agile?&lt;/a&gt; &lt;/span&gt;&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-verification-process-area-compatible.html"&gt;Is the Verification Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;span&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-product-integration-process-area.html"&gt;Is the Product Integration Process Area compatible with Agile?&amp;nbsp;&lt;/a&gt;&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-technical-solution-process-area.html"&gt;Is the Technical Solution Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-requirements-development-process.html"&gt;Is the Requirements Development Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2011/01/is-configuration-management-process.html"&gt;- Is the Configuration Management Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;        &lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span&gt;&lt;span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2010/12/this-is-special-post-number-50-enough.html"&gt;Is the Process and Product Quality Assurance Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span&gt;&lt;span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html"&gt;Is the Measurement and Analysis Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: inherit; font-size: x-small;"&gt;&lt;span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html"&gt;Is the Requirements Management Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;?&lt;br /&gt;
-  &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-2303500199573232523?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1GS2-qgCHXql2ru8zEtqdizt1Qc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1GS2-qgCHXql2ru8zEtqdizt1Qc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1GS2-qgCHXql2ru8zEtqdizt1Qc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1GS2-qgCHXql2ru8zEtqdizt1Qc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/bSQMrI3eYTo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/2303500199573232523/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/02/is-integrated-project-management.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/2303500199573232523?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/2303500199573232523?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/bSQMrI3eYTo/is-integrated-project-management.html" title="Is the Integrated Project Management Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/02/is-integrated-project-management.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkQNQngyeSp7ImA9Wx9VFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-7458601951338168829</id><published>2011-01-30T18:19:00.001-08:00</published><updated>2011-01-30T18:19:53.691-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-30T18:19:53.691-08:00</app:edited><title>The 7 Duties of Great Software Professionals</title><content type="html">Check out this SlideShare Presentation: &lt;div style="width:425px" id="__ss_6753728"&gt;&lt;strong style="display:block;margin:12px 0 4px"&gt;&lt;a href="http://www.slideshare.net/jurgenappelo/the-7-duties-of-great-software-professionals" title="The 7 Duties of Great Software Professionals"&gt;The 7 Duties of Great Software Professionals&lt;/a&gt;&lt;/strong&gt;&lt;object id="__sse6753728" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=the7dutiesofgreatsoftwareprofessionalsv1censored-110130134942-phpapp01&amp;stripped_title=the-7-duties-of-great-software-professionals&amp;userName=jurgenappelo" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed name="__sse6753728" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=the7dutiesofgreatsoftwareprofessionalsv1censored-110130134942-phpapp01&amp;stripped_title=the-7-duties-of-great-software-professionals&amp;userName=jurgenappelo" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="padding:5px 0 12px"&gt;View more &lt;a href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/jurgenappelo"&gt;Jurgen Appelo&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-7458601951338168829?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/MLlElZkibCIPXVtC1E0JdYyHcjk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MLlElZkibCIPXVtC1E0JdYyHcjk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/MLlElZkibCIPXVtC1E0JdYyHcjk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MLlElZkibCIPXVtC1E0JdYyHcjk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/rZ9yi-8jXTk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/7458601951338168829/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/7-duties-of-great-software.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/7458601951338168829?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/7458601951338168829?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/rZ9yi-8jXTk/7-duties-of-great-software.html" title="The 7 Duties of Great Software Professionals" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/7-duties-of-great-software.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUYGSHkzfyp7ImA9Wx9VFE8.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-3025690774039596052</id><published>2011-01-30T14:38:00.001-08:00</published><updated>2011-01-30T14:38:49.787-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-30T14:38:49.787-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Organizational Process Definition Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.10019425335615562"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Organization Process Definition process area, a process area at  maturity level 3, aims at establishing and maintaining a usable set of  organizational process assets and work environment standards.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Establish Organizational Process Assets&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Establish Standard Processes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Establish Lifecycle Model Descriptions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Establish Tailoring Criteria and Guidelines&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.4 Establish the Organization’s Measurement Repository&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.5 Establish the Organization’s Process Asset Library&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.6 Establish Work Environment Standards&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Would the process asset repository be effective in an Agile environment?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;No  doubt a process asset repository is vital in a framework like CMMI that  gives processes so much importance (see section ‘About Capability  Maturity Models’ in the CMMI). But would it be the same in an Agile  organization? I guess my question is: Can a process repository contain  all the necessary knowledge needed to build software successfully? I  believe software development cannot be performed just by following a set  of processes. Building software requires other things as well, such as  creativity, trade-off balancing and software craftsmanship. But then....  how can a software company build and maintain such a knowledge  repository that lives and dies in the employee’s minds? Well, I don’t  know. What I do know and saw in Agile companies is a culture of sharing  the knowledge and learning together. Pair programming and code review  practices allow more senior members to spread the knowledge on how  things are done in the company. Are there any other ways? Particularly,  ways that allow the organization to stick with the knowledge? (after  all, the CMMI is right when it states that “people typically work for  many companies throughout their careers”). I don’t know again. After  all, we are departing from a point where we think that knowledge workers  are irreplaceable, right? Probably there isn’t.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Flexibility versus Consistency&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;CMMI  tackled an issue that I always had in my mind, but never knew how to  express correctly. Flexibility goes against consistency. CMMI deals with  it by defining a set of tailoring guidelines. But, can we predict all  future scenarios to be able to create the tailoring guidelines? I  believe that breaking rules comes with maturity. In the ‘Ri’ level of  the Shu Ha Ri, very mature teams don’t go by the rules. They understand  the rationale of each of them and are able to break them, based on the  current needs. But to get there, all the previous paths need to have  been traversed. The rationale of the rules need to be understood and the  consequences of breaking them too.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  am not entirely sure that a process repository would be as effective in  software engineering as it is in other harder engineerings. Also, I  believe that tailoring a process can be performed not with tailoring  guides, but with the understanding of the particular context and a  thorough undestanding of the rationale of the existing processes.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-3025690774039596052?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fm-cS9RrO-GsEcsd9aY_Mf0A-tM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fm-cS9RrO-GsEcsd9aY_Mf0A-tM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fm-cS9RrO-GsEcsd9aY_Mf0A-tM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fm-cS9RrO-GsEcsd9aY_Mf0A-tM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/v0ktCh0oGME" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/3025690774039596052/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/is-organizational-process-definition.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/3025690774039596052?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/3025690774039596052?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/v0ktCh0oGME/is-organizational-process-definition.html" title="Is the Organizational Process Definition Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/is-organizational-process-definition.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQBSH88fCp7ImA9Wx9WGUs.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-5585521589475023105</id><published>2011-01-25T05:32:00.000-08:00</published><updated>2011-01-25T05:32:39.174-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-25T05:32:39.174-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Organizational Process Focus Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.24035402402631778"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;“The  purpose of Organizational Process Focus (OPF) is to plan, implement,  and deploy organizational process improvements based on a thorough  understanding of the current strengths and weaknesses of the  organization’s processes and process assets.”&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Determine Process Improvement Opportunities&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Establish Organizational Process Needs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Appraise the Organization’s Processes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Identify the Organization's Process Improvements&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Plan and Implement Process Improvements&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Establish Process Action Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Implement Process Action Plans&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 3 Deploy Organizational Process Assets and Incorporate Lessons Learned&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.1Deploy Organizational Process Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.2 Deploy Standard Processes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.3 Monitor Implementation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.4 Incorporate Process-Related Experiences into the Organizational Process Assets&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;How would an Agile organization do process improvement?&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;My  experience in the Agile world has always been in particular projects.  This means we were doing Agile in those projects, but the organization  as a whole was not Agile (Probably this is the case for the majority of  the Agile projects …?) Why am I saying this? Well, because I was  thinking how should process improvement at the organizational level  should be performed in an Agile organization, but I am a complete  ignorant in this regard. Anyway, If I think how we do process  improvement in a particular project with Agile and I scale it to the  organization, probably the result would be something very similar to  what the CMMI proposes. First, determining the process improvement  opportunities (retrospection), then make a plan, deploy it and monitor  how it is going. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;What would change at the organizational level? &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;1.  Organizational level goals may not coincide %100 with project level  goals: Cockburn says they are 2 different games, the project one and the  organization one (and the one that the employees are playing). I  believe that having to fulfill a process area like this one may really  help an Agile organization align its projects.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;2.  Implementation is much harder: Depending on the organization, teams are  different and have different contexts. The problem is much more  difficult to resolve. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;3.  Need for a specific team to handle this: this may be a consequence of  the previous point. The CMMI says and I agree, that a specific team that  handle process improvement in the organization is needed.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;There’s  something I like to add to the previous points. The CMMI does never  mention the employees as a source for process improvement initiatives  and underestimate the importance of them in the implementation in my  opinion. I believe that team empowerment is vital to any process  improvement initiative. As the Poppendieck’s stated in their book “The  people on the front line combine the knowledge of the minute details  with the power of many minds”. I believe this is also related with the  mentality needed for Kaizen. If all employees are constantly thinking  how to improve the current processes, the results may be amazing.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  believe the CMMI goals and practices are completely compatible in this  area. Knowledge from the lean methods of process improvement should be  incorporated to make the process area even better.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Other Areas&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-validation-process-area-compatible.html"&gt;Is the Validation Process Area compatible with Agile?&lt;/a&gt; &lt;/span&gt;&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-verification-process-area-compatible.html"&gt;Is the Verification Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-product-integration-process-area.html"&gt;Is the Product Integration Process Area compatible with Agile?&amp;nbsp;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-technical-solution-process-area.html"&gt;Is the Technical Solution Process Area compatible with Agile?&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-requirements-development-process.html"&gt;Is the Requirements Development Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2011/01/is-configuration-management-process.html"&gt;- Is the Configuration Management Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;      &lt;br /&gt;
&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2010/12/this-is-special-post-number-50-enough.html"&gt;Is the Process and Product Quality Assurance Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html"&gt;Is the Measurement and Analysis Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html"&gt;Is the Requirements Management Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;?&lt;br /&gt;
-  &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-5585521589475023105?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/E0tRG3xrd-cch9WTah6Cyt78suI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/E0tRG3xrd-cch9WTah6Cyt78suI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/E0tRG3xrd-cch9WTah6Cyt78suI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/E0tRG3xrd-cch9WTah6Cyt78suI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/tLgKm1z_rTU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/5585521589475023105/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/is-organizational-process-focus-process.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/5585521589475023105?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/5585521589475023105?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/tLgKm1z_rTU/is-organizational-process-focus-process.html" title="Is the Organizational Process Focus Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/is-organizational-process-focus-process.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08ARno8eyp7ImA9Wx9WFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-5661448489919121602</id><published>2011-01-19T07:10:00.000-08:00</published><updated>2011-01-19T07:10:47.473-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:10:47.473-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Validation Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.3291979925362617"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Validation process area, a process area at maturity level 3, aims at  “demonstrating that a product or product component fulfills its intended  use when placed in its intended environment.”&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Prepare for Validation&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Select Products for Validation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Establish the Validation Environment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Establish Validation Procedures and Criteria&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Validate Product or Product Components&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Perform Validation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Analyze Validation Results&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;There are a couple of points to address in this area:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;What is Validated?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  CMMI lists a number or work products where validation can be performed.  However, using an incremental approach for software development, the  only work product that I conceive for validation is the final product,  the increment that has been delivered. Being able to perform validation  early on the final product is one of the distinctive characteristics of  Agile methodologies. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;What is the difference between Validation and Verification?&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  CMMI states that Verification is the “you built it right” and  Validation is the “you built the right thing”. In Agile, both process  areas appear very intertwined, probably because both are performed at  the same time or because requirements/user stories are not carved in  stone and communication is so important to build it right. Thinking a  bit about it, I concluded that Validation goes a bit further than  Verification. A customer can validate an increment in functionality,  beyond what the requirement for that functionality specified. In other  words, a product owner (a good one) can judge the result of building a  user story, learn from this result and make changes to improve it. This  means Validation. Verification is the task of the Quality Assurance  members that &amp;nbsp;try to refine a user story, finding errors or  discrepancies, but their only point of reference is what the customer  expressed in the user stories or conversations (he’s not in the  customer’s mind). In any case, I am not sure that both process areas are  necessary in Agile.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Self-Verification or Self-Validation?&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;See,  it’s hard for me to see the difference. Probably, Verification is  related with the technology &amp;nbsp;facing testing quadrants in &lt;a href="http://www.exampler.com/old-blog/2003/08/21/"&gt;Marick’s  testing quadrants&lt;/a&gt; while Validation is related with the business facing  quadrants. If this is the case, probably self-verification is more  important than self-validation. With Validation, as I pointed  previously, there’s a component of human intervention that won’t be  automatable (exploratory and usability testing always have a big human  component). Anyway, there is a big chunk of Validation work that can and  should be automatable . In BDD, the customer specifies what he needs,  the validation criteria as executable specifications. Doing this  specification probably diminishes a lot of the subjectivity in the  customer’s mind. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;It  is hard for me to see the difference between Validation and  Verification. If a Waterfall development process is followed, it would  be much easier because there is a big period of time where only  Verification is performed (the team members trying to detect if what is  being built matches the requirements). Validation is performed only in  the end by the customers. In Agile, both tasks are performed  concurrently and immediately. This diminishes the value of the  Verification and increases the value of the Validation. This is what I  say that I would probably merge both areas in Agile, performing only  Validation. What do you think?&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-5661448489919121602?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xN3u6socz2TOXF9SMn_8z_cbor4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xN3u6socz2TOXF9SMn_8z_cbor4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xN3u6socz2TOXF9SMn_8z_cbor4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xN3u6socz2TOXF9SMn_8z_cbor4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/1nhwJJ1J4L4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/5661448489919121602/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/is-validation-process-area-compatible.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/5661448489919121602?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/5661448489919121602?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/1nhwJJ1J4L4/is-validation-process-area-compatible.html" title="Is the Validation Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/is-validation-process-area-compatible.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08NRH0yfCp7ImA9Wx9WFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-2691006232057045193</id><published>2011-01-16T07:39:00.000-08:00</published><updated>2011-01-19T07:11:35.394-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:11:35.394-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Verification Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.1261126822247528"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Verification Process Area, a process area at maturity level 3, aims at  “ensuring that the select work products meet their specified  requirements”. The specific practices on this process area build on each  other in the following way:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;1. Select Work Products for Verification&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;2. Establish the Verification Environment&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;3. Establish Verification Procedures and Criteria&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;4. Perform Verification&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Prepare for Verification&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Select Work Products for Verification&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Establish the Verification Environment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Establish Verification Procedures and Criteria&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Perform Peer Reviews&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Prepare for Peer Reviews&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Conduct Peer Reviews&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.3 Analyze Peer Review Data&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 3 Verify Selected Work Products&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.1 Perform Verification&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.2 Analyze Verification Results&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;There are 4 points I would like to discuss on this process area:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;How is Verification performed in Agile?&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Verification  is performed in small chunks, continually and needs constant  readjustment due to the iterative nature of the development process. The  CMMI states that Verification is an “incremental process because it  occurs throughout the development of the product and work products,  beginning with verification of the requirements, progressing through the  verification of the evolving work products, and culminating in the  verification of the completed product.”. However, it doesn’t mention the  need of constant readjustment, which is perhaps due to the fact that  Validation is performed concurrently with Verification, turning  Verification into a very dynamic task.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;What’s the meaning of building the “thing right” in Agile?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;CMMI  states that the Verification is the “you built it right”, whereas the  Validation ensures that “you built the right thing.”. I must say that  having spent the majority of my professional life in Agile environments,  I never heard the “you built it right” applied to how well it “fulfills  the requirements”. I heard that concept applied to the internal quality  of the system. How well designed, tested, maintainable and robust is  the system. I guess it makes sense to say “you built it right” when the  implementation of a user story correctly addressed the written user  story. The thing is that this whole cycle of starting with the user  story , building it and immediately verifying it is so fast, and there  may be so many changes in between, that the whole concept of you build  it right looses semantic.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;What is an Agile Peer Review Process?&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  second goal of this process area talks about peer review, as one of the  verification mechanisms available. How should a peer review process be  implemented in Agile. I believe that every commit should be reviewed.  Reviewing %100 of the code assures that every programmer codes with  attention, and that always at least 4 eyes look at the code before being  committed to the mainline. Code should be committed at least once a  day, to perform continual small integrations. This requires that the  review process is very light, fast and effective. How can this be  achieved? I believe in informality, mixed with discipline and trust to  perform the peer review. First, the criteria should be very clear to  anyone. Then, there should be trust and people should be able to discuss  and change the code based on the review, without getting mad or getting  hard feelings. In an ideal situation, I believe it should be performed  face to face, at the moment the developer finish and wants to commit (of  course, after having verified that all tests are running, the are no  style errors and whatever else is on the review criteria). &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Self-Verifying Code&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  iterative and incremental nature of Agile turns self-verifiable code or  self-tested code into a necessity. If only manual testing is performed,  the project is not sustainable in the long run as it becomes too  expensive to re-verify all features every iteration. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  see the verification part of a user story as another step towards  refining a requirement and delivering what the customer is expecting.  This whole process needs to be very light and dynamic. It needs to be  very Agile, adapting continually to increase the probabilities of  delivering a product that satisfies the user. Automation is vital to  sustainably verify all the code every iteration.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Other Areas &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: x-small;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-product-integration-process-area.html"&gt;Is the Product Integration Process Area compatible with Agile?&amp;nbsp;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: x-small;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-technical-solution-process-area.html"&gt;Is the Technical Solution Process Area compatible with Agile?&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: x-small;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2011/01/is-requirements-development-process.html"&gt;Is the Requirements Development Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2011/01/is-configuration-management-process.html"&gt;- Is the Configuration Management Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;  &lt;br /&gt;
&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2010/12/this-is-special-post-number-50-enough.html"&gt;Is the Process and Product Quality Assurance Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html"&gt;Is the Measurement and Analysis Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html"&gt;Is the Requirements Management Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;?&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-2691006232057045193?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/I3xWwUmek1e2b8q_ryPp0UJdVS4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/I3xWwUmek1e2b8q_ryPp0UJdVS4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/I3xWwUmek1e2b8q_ryPp0UJdVS4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/I3xWwUmek1e2b8q_ryPp0UJdVS4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/YnCb9b94NCg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/2691006232057045193/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/is-verification-process-area-compatible.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/2691006232057045193?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/2691006232057045193?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/YnCb9b94NCg/is-verification-process-area-compatible.html" title="Is the Verification Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/is-verification-process-area-compatible.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04FQH8yfSp7ImA9Wx9WFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-3872323991417952677</id><published>2011-01-14T04:58:00.001-08:00</published><updated>2011-01-19T07:11:51.195-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:11:51.195-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Product Integration Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.20848946000986235"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Product Integration Process Area, a process area at maturity level 3,  aims at “assemble the product from the product components, ensure that  the product, as integrated, functions properly, and deliver the  product.”&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Prepare for Product Integration&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Determine Integration Sequence&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Establish the Product Integration Environment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Establish Product Integration Procedures and Criteria&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Ensure Interface Compatibility&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Review Interface Descriptions for Completeness&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Manage Interfaces&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 3 Assemble Product Components and Deliver the Product&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.1 Assemble Product Components&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.3 Evaluate Assembled Product Components&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.4 Package and Deliver the Product or Product Component&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;What should be the integration procedure suggested by Agile?&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;If  the project is small and the contractual possibilities allow it, the  recommended approach should be without any doubt to do Continuous  Integration with all the practices suggested by Fowler in his great &lt;/span&gt;&lt;a href="http://martinfowler.com/articles/continuousIntegration.html"&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;article&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;  (everyone committing to the same mainline, every day). What if the  project is too big or a 3rd party team develops certain components of  the system? Probably the different components are developed separately  and then integrated. The question is how and how often. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;One  option is to study carefully the integration points before starting  developing, then develop the different components (based on the  documents created during the BUFD) and then integrating everything in  the end. This approach has been proved too risky. No matter how well  agreed and documented the integration points are, if there is a problem,  it happens when the project has consumed most of its budget and changes  are too expensive to be applied. The opposite option would be that all  teams (belonging to all components) try to use the same mainline.  Sometimes, this can be troublesome as it can happen that the different  teams create problems between each other. So some separation, in these  types of projects, could be valuable. However, I believe that the  separation needs to be made following the Continuous Integration values.  So if in a small project, the rule is that every developer integrates  and commit every day to the mainline, the development of a big system  could be done slicing the products in a way that many integration points  are planned. Perhaps once a week or once a month, depending on the  project. Of course this creates overhead, specially I can imagine if a  lot of mocks and doubles needs to be constructed. However, the risk is  also sliced and minimized throughout the project.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Does CMMI recommends one approach?&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;It  is not clear to me, to be honest. In the description of the process  area, it states that “Product integration can be conducted  incrementally, using an iterative process of assembling product  components, evaluating them, and then assembling more product  components.”. However, again the sequence of goals would seem to suggest  that a big analysis should be conducted at the beginning, then the  interfaces should be managed and at the end the final product should be  assembled, using the sub-components. This looks to me as goals that are  more related with building a car than building software.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Agile approach towards integration should be to it continually. How  continually? As continually as it possibly can be performed. Remember  that what needs to guide the decisions are the values and the  principles. What is the rationale for doing Continuous Integration? How  can it be applied to this particular project? These are the types of  questions that should guide decisions.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-3872323991417952677?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HaP9TNFTSTKXSIwJ3KZqQw3bK04/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HaP9TNFTSTKXSIwJ3KZqQw3bK04/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HaP9TNFTSTKXSIwJ3KZqQw3bK04/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HaP9TNFTSTKXSIwJ3KZqQw3bK04/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/_z1rooHn3Lo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/3872323991417952677/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/is-product-integration-process-area.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/3872323991417952677?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/3872323991417952677?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/_z1rooHn3Lo/is-product-integration-process-area.html" title="Is the Product Integration Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/is-product-integration-process-area.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04GRHY9eCp7ImA9Wx9WFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-6382475217125759863</id><published>2011-01-12T05:04:00.000-08:00</published><updated>2011-01-19T07:12:05.860-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:12:05.860-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Technical Solution Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.8359921106701549"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Technical Solution, a process area at maturity level 3, aims at  designing, developing and implementing solutions to requirements. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Select Product Component Solutions&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Develop Alternative Solutions and Selection Criteria&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Select Product Component Solutions&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Develop the Design&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Design the Product or Product Component&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Establish a Technical Data Package&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.3 Design Interfaces Using Criteria&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.4 Perform Make, Buy, or Reuse Analyses&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 3 Implement the Product Design&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.1 Implement the Design&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.2 Develop Product Support Documentation&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;There are a couple of points I’d like to discuss about this area:&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;1. &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;The 3 specific goals distills a Waterfall process life cycle&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;. After reading carefully the whole process area, I would say that the process suggested would look like this:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ol&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;It selects the solution (SG1)&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;It creates lower lever requirements (SG1 - SP1.2)&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;It creates a broad design (SG2 - SP2.1)&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;And a detail design (SG2 - SP2.1)&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;It implements the design (SG3)&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  ways it is written enforces this approach by, for example, specifying  the role of the architect who “postulate and develop a model of the  product, making judgements about allocation of requirements to product  components”&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;A more Agile friendly maturity model should suggest the following steps in the process development life cycle:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ol&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;It selects a solution&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;It  creates a broad design: The architecture. As I said before, there’s a  discussion on how much architecture is enough. For sure, in any Agile  approach the architecture remains very broad, just with the most  important structural components.&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Design  and implement top priority requirements: Detailed design is performed  at the same time than implementation of the features. &lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Retrofit  project: Designing and implementing a set of requirements increases the  knowledge of the product. Requirements and existing design should be  refined. This represents the iterative nature of Agile development.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;2. &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;The proposed method to the technical solution treats software development as another hard engineering&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;.  Let’s not forget that CMMI is used not only in software development  process improvement efforts, but also in other harder engineerings. It  was the belief a while ago (at the moment of the CMMI writting) that  software development could be treated as other engineering fields. There  is a very interesting discussion in Alistair Cockburn’s book about  treating software development as other engineerings. Anyway, for now  let’s just say that software uses a different material than what other  engineerings use. Software can be changed more easily. Therefore, it  isn’t necessary (or profitable) to have the whole design of the product  made up front. The design can be evolved inexpensively (and cheaper if  the team uses the practices suggested by Beck). This is completely  different than, for example, the case where a bridge needs to be built.  In the later, the whole design needs to be specified upfront and changes  during the life of the project are very expensive, if not impossible.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Although  not said explicitly, the nature of the technical solution process area  goes against the nature of the technical aspects in Agile. I believe  that trying to fullfill the objectives would lead to too big upfront  designs, which in Agile are not recommended. The separation of roles  between Architects (the people who take the big decisions up front) and  the developers who just need to follow the detailed design provided to  them goes in a complete different path than what Agile recommends.  Treating Software Engineering as another hard engineer is also not  appropriate. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Another  thing that caught my attention is that the technical process area  doesn’t say anything about good engineering practices. Of course, CMMI  is too general to go into these details. However, I wonder if a useful  software improvement model shouldn’t provide goals related to this (e.g.  one that I would add is having a automated testing strategy, which  defines what kind of automated tests are going to be developed during  the project and how the product is going to be tested). As a final  sentence, I feel this area too far from the Agile technical area.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Other Areas &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2011/01/is-requirements-development-process.html"&gt;- Is the Requirements Development Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2011/01/is-configuration-management-process.html"&gt;- Is the Configuration Management Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span style="font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt; &lt;br /&gt;
&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2010/12/this-is-special-post-number-50-enough.html"&gt;Is the Process and Product Quality Assurance Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html"&gt;Is the Measurement and Analysis Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html"&gt;Is the Requirements Management Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;?&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-6382475217125759863?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6tZ0PFj7c5rTQmKThkTZWKesa-U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6tZ0PFj7c5rTQmKThkTZWKesa-U/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6tZ0PFj7c5rTQmKThkTZWKesa-U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6tZ0PFj7c5rTQmKThkTZWKesa-U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/yx3Ki2mF8Nc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/6382475217125759863/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/is-technical-solution-process-area.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/6382475217125759863?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/6382475217125759863?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/yx3Ki2mF8Nc/is-technical-solution-process-area.html" title="Is the Technical Solution Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/is-technical-solution-process-area.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04ARXo9cCp7ImA9Wx9WFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-4112405522179961671</id><published>2011-01-07T06:20:00.000-08:00</published><updated>2011-01-19T07:12:24.468-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:12:24.468-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Requirements Development Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.3873924546243359"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&amp;nbsp;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  requirements development process area, a process area at maturity level  2, aims at producing and analyzing customer, product and product  components requirements. CMMI states that requirements start as customer  requirements (stakeholders expectations are expressed here) and are  later refined into product and product components requirements  (expressed in a more technical fashion) with the input of the technical  members after analysis and design is performed.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Develop Customer Requirements&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Elicit Needs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Develop the Customer Requirements&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Develop Product Requirements&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Establish Product and Product Component Requirements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Allocate Product Component Requirements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.3 Identify Interface Requirements&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 3 Analyze and Validate Requirements&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.1 Establish Operational Concepts and Scenarios&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.2 Establish a Definition of Required Functionality&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.3 Analyze Requirements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.4 Analyze Requirements to Achieve Balance&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.5 Validate Requirements&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Is it Compatible?&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;CMMI  states that stakeholders needs, expectations, constraints and  &amp;nbsp;limitations may be difficult to obtain and therefore it suggests an  iterative process (very much like Agile). It also states the importance  of having a customer surrogate, role that very much resembles that of  the Product Owner. However, it also talks about refinement and  allocation. I have 2 concerns about those.&lt;/span&gt;&lt;br /&gt;
&lt;h2&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Is there really the need to express requirements in a technical fashion? Is it advantageous? &lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Requirements  in a software development project represent the common area of  understanding between technical and business people. Refinement of  Customer Requirements into Product Requirements implies having 2 sets of  requirements and therefore the integrity of both have to be assured  (i.e. assure that all customer requirements have been address in the  product requirements, which if they are written technically will be  inaccessible to business folks). This is not to say that requirements  should not be refined. I believe they should, but the end result should  be one set of requirements that all members of the project can  understand. Some people could say that Customer Requirements may be  expressed in a business language too difficult to understand for  developers. However, is it possible to build a software system without  the developers understanding the business logic of what they are  building. I don’t think so. There is another issue that worries me about  this refinement. All Agile requirements (User Stories) have some  business value associated with them. Although sometimes it can get  difficult to slice functionality small enough to enter into an  iteration, the advantages of building tangible, visible functionality  are many. Although CMMI doesn’t state anything about the business value  of any type of requirements, I am afraid that this type of requirements  may result in technical requirements without visible value. In any case,  stating that all requirements introduce some new business value to the  system is really important.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="font-weight: normal;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; text-decoration: none; vertical-align: baseline;"&gt;Is there really the need to allocate requirements to technical components?&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Who  is this useful for? When is it done? Requirements should express what  needs to be done. They shouldn’t express how it is supposed to do it.  Otherwise, the requirement is biasing the implementation. Traceability  is one of the reasons that CMMI states for performing this allocation.  However, as I said before I am not sure about the benefits of having  this traceability that assures that requirements have been addressed,  but not that they have been full filled. Besides, I reckon that this  traceability may be too heavy to keep up to date. Instead, I believe  that automated tests expressed in the business language provide the  certainty that the requirement have been full filled while being always  up to date. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Although  requirements in Agile should be refined (user stories start as a point  of conversation and grow afterwards), the common shared place of  understanding is always the product backlog, which is unique set of  requirements. Translating customer requirements brings more  disadvantages than advantages in my opinion. Same with the allocation of  requirements to technical components. Something that really caught my  attention is that the CMMI doesn’t say anything about ordering  requirements by priority. In Agile, this is a top of the shelf matter,  vital to the success of the project.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Other Areas &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2011/01/is-configuration-management-process.html"&gt;- Is the Configuration Management Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2010/12/this-is-special-post-number-50-enough.html"&gt;Is the Process and Product Quality Assurance Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html"&gt;Is the Measurement and Analysis Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html"&gt;Is the Requirements Management Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;?&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-4112405522179961671?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/gA-9yAI_aL4utpfavoql5suvlpg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gA-9yAI_aL4utpfavoql5suvlpg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/gA-9yAI_aL4utpfavoql5suvlpg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gA-9yAI_aL4utpfavoql5suvlpg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/N16WiMm-5fw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/4112405522179961671/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/is-requirements-development-process.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4112405522179961671?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/4112405522179961671?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/N16WiMm-5fw/is-requirements-development-process.html" title="Is the Requirements Development Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/is-requirements-development-process.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04CQXo4eyp7ImA9Wx9WFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-1927818316674535722</id><published>2011-01-04T04:02:00.000-08:00</published><updated>2011-01-19T07:12:40.433-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:12:40.433-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Configuration Management Process Area compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.6804503485562537" style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Configuration Management Process Area, a process area at maturity level  2, aims at establishing and maintaining the integrity of work products.  The process area deals with selecting the work products that compose  the baselines, controlling changes and maintaining the integrity over  these items and providing accurate status on this data.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Establish Baselines&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Identify Configuration Items&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Establish a Configuration Management System&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Create or Release Baselines&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Track and Control Changes&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Track Change Requests&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Control Configuration Items&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 3 Establish Integrity&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.1 Establish Configuration Management Records&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 3.2 Perform Configuration Audits&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Is it too Formal?&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;CMMI  states that the first thing is to create a baseline, which is a “a set  of specifications or work products that has been formally reviewed and  agreed on, that thereafter serves as the basis for further development  or delivery, and that can be changed only through change control  procedures.” and then modify this baseline through change requests,  which should be approved by all stakeholders. It also states that this  process should be audited.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Is  this really suggesting that ALL changes should go through a change  request system? When the developers are working in the project, they  should create a change request ticket to commit their code? When the  Product Owner is completing a User Story that was missing some  information, s/he should do it via a change request ticket? I believe  this formality would take too much time to the activities that add  value, hurting the agility of the project. Of course, I believe it is  important to track everything under a source control system, to keep the  history of all configuration items and to analyze the impact of all  changes (specially to requirements). Nonetheless, this should be done in  the lighter, more non-obtrusive way. For example, the comments written  in the commit to the source control system are (or should be) more than  enough information that explains this change. Changes (the history) to  the product backlog should be kept automatically, without the Product  Owner needing to do anything. Formality is replaced with efficiency and  trust. The Configuration System method chosen for an Agile project  should be light and efficient. It should keep all the necessary  information without the users spending too much time maintaining it.  Automation (again in this area) is vital. The easiest way to maintain  the integrity of a product is to avoid human intervention in the  creation of the product. If the product is created automatically  (running a command) there is no room for human mistakes. &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 24pt; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;When  I first read the title of the process area, I thought that this process  area was going to be totally compatible. However, after I read it, I  began having my doubts. Having to create and maintain a baseline could  lead to an overhead that reduces agility. Managing the backlog through  change requests is practically impossible. Nonetheless, the need to have  all items under a configuration management system is unavoidable.  Having all or most of the steps of the configuration management process  automated is vital.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;a href="http://agilebooknote.blogspot.com/2010/12/this-is-special-post-number-50-enough.html"&gt;Is the Process and Product Quality Assurance Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html"&gt;Is the Measurement and Analysis Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: x-small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html"&gt;Is the Requirements Management Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;?&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-1927818316674535722?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_04NPqSDoA2_7-1-oPwrifVgff0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_04NPqSDoA2_7-1-oPwrifVgff0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_04NPqSDoA2_7-1-oPwrifVgff0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_04NPqSDoA2_7-1-oPwrifVgff0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/J3oksl0gfF0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/1927818316674535722/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2011/01/is-configuration-management-process.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/1927818316674535722?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/1927818316674535722?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/J3oksl0gfF0/is-configuration-management-process.html" title="Is the Configuration Management Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2011/01/is-configuration-management-process.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04DSHo6cCp7ImA9Wx9WFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-1280819255275082487</id><published>2010-12-29T06:52:00.000-08:00</published><updated>2011-01-19T07:12:59.418-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:12:59.418-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Process and Product Quality Assurance Process Area compatible with Agile?</title><content type="html">This is a special post number 50!! So....&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://img.fiesta101.com/wp-content/uploads/2010/03/sat-lets-party-webentry.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://img.fiesta101.com/wp-content/uploads/2010/03/sat-lets-party-webentry.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Enough, let's go back to Agile and CMMI compatibility..&lt;br /&gt;
&lt;h1 id="internal-source-marker_0.9924850558363183"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  Process and Product Quality Assurance Process Area, a process area at  maturity 2, aims at objectively evaluating projects for adherence to the  standards processes and procedures. Objectivity is key. It can be  achieved through an external group or through demonstration of  objectivity.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Objectively Evaluate Processes and Work Products&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Objectively Evaluate Processes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Objectively Evaluate Work Products and Services&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Provide Objective Insight&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Communicate and Ensure Resolution of Noncompliance Issues&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Establish Records&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Is it compatible?&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;This  process area aims at ensuring that each of the projects in the company  follows the company’s defined processes and practices. Something that  can make this process area difficult to apply in an Agile company is the  empiricist nature of Agile methodologies. In one side, there’s a  company defined methodology (and the willing to follow it represented in  this process area) and on the other there’s the Agile encouragement to  introspect on the methodology and modify things that are not working.  Probably this goes back to the advantages and disadvantages that I  mentioned in the &lt;a href="http://agilebooknote.blogspot.com/2010/10/are-agile-and-cmmi-compatible.html"&gt;introduction&lt;/a&gt; to this series of posts and also to the  fact that Agile is a value system. Therefore (and again), probably it’s  more important to ensure that the company’s values (which in an Agile  company should be compliant with the Agile values) are followed than to  ensure that a specific defined process is followed step by step.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Another  thing I also wonder is what is the best mechanism to provide this  insurance. &amp;nbsp;The CMMI reckons that “Traditionally, a quality assurance  group that is independent of the project provides this objectivity.”.  However, it also states that “It may be appropriate in some  organizations, however, to implement the process and product quality  assurance role without that kind of independence. For example, in an  organization with an open, quality-oriented culture, the process and  product quality assurance role may be performed, partially or  completely, by peers; and the quality assurance function may be embedded  in the process.”. I believe that the second mechanism should be the one  recommended in Agile environments. A mature Agile team is one that  doesn’t of any external group to follow the processes and practices and  that realizes when it’s incurring in technical debt and can recover and  pay it. How does it get there? Through a leader embedded in the project.  A leader is a software craftsman that teaches the rest of the group the  practices and ensures that they are always followed, even in  tempestuous times (when the only thing that matters is handling some  software by the door!)&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Exact  adherence to processes shouldn’t be encouraged in Agile environments,  but exact adherence to values should. The best mechanism to ensure  quality are through leaders embedded in the projects that act as quality  and process keepers.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;i&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;i&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Other Process Areas&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;h3 class="post-title entry-title"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html"&gt;Is the Measurement and Analysis Process Area compatible with Agile? &lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html"&gt;Is the Requirements Management Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;?&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt; &lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-1280819255275082487?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Ny-P8aL_Px2JT7zIZUK2pVqBXtw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ny-P8aL_Px2JT7zIZUK2pVqBXtw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Ny-P8aL_Px2JT7zIZUK2pVqBXtw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ny-P8aL_Px2JT7zIZUK2pVqBXtw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/onW7vP08R9w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/1280819255275082487/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2010/12/this-is-special-post-number-50-enough.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/1280819255275082487?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/1280819255275082487?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/onW7vP08R9w/this-is-special-post-number-50-enough.html" title="Is the Process and Product Quality Assurance Process Area compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2010/12/this-is-special-post-number-50-enough.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04NRXgzfCp7ImA9Wx9WFEk.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-750403717572736927</id><published>2010-12-23T05:06:00.000-08:00</published><updated>2011-01-19T07:13:14.684-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:13:14.684-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Measurement and Analysis Process Area Compatible with Agile?</title><content type="html">&lt;h1 id="internal-source-marker_0.8593093373643524"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  measurement and Analysis process area, a process area at maturity 2,  aims at developing a measurement capability that is used to support  management information needs. Measurement objectives based on identified  information needs are defined and using these objectives, objective and  quantifiable measures are defined. Mechanisms to collect and store the  data should also be defined.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Align Measurement and Analysis Activities&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Establish Measurement Objectives&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Specify Measures&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Specify Data Collection and Storage Procedures&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.4 Specify Analysis Procedures&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 2 Provide Measurement Results&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.1 Collect Measurement Data&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.2 Analyze Measurement Data&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.3 Store Data and Results&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 2.4 Communicate Results&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Are they compatible?&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Agile  possess a culture of continuous improvement, through continual  inspection and adaptation. The concept of Kaizen, that comes from the  Lean world is also very popular. The question is ‘how is this  improvement attained?’ and ‘is it always aligned with the wider company  objectives?’. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;How  is this improvement attained? How should be the process to improve? The  mechanism suggested by CMMI is the only one I know. The objective is  identified, measurements that tell us if the objective has been reached  as well as a plan to get there are defined and then successive measures  are taken through the path. Having a company wide process improvement  framework like CMMI can help identify these objectives in a project more  easily and also assures that the objectives selected are aligned with  the wider company objectives. It can also help define the measures,  which should be “precise, quantifiable measures”.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;However, I have a couple of concerns related with setting objectives and trying to reach these objectives:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;u&gt;&lt;b&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;1. Not weighting properly the importance of the objective within the whole context of the project&lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Let me picture this with an example, for which I will use Highsmith’s Agile triangle.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: center;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;img height="188px;" src="https://lh3.googleusercontent.com/7GKWfNM5u4urHBpVxfMFDQJZSMQ3-lUEdLC895-gFbv-DGfdRiR2YiaBjukSMUZOcs-UN6GN_UynYG-c2vDTj-1np_uxzkTO7gATFnQSMFgSnXIzeQ" width="300px;" /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;We  may set up our objective as “Improve prior levels of quality” (taken  from the CMMI examples). What is a quantifiable precise measure for this  objective? Probably most will say counting the number of raised bugs.  Having no bugs is really wonderful, but having no bugs on a software  that doesn’t do what the customer needs is really valuable? &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;u&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;2. Creating dysfunctional behaviours&lt;/span&gt;&lt;/u&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  human beings find ways to reach the objective that don’t match exactly  what the objective was created for. Having raised less bugs assures us  that the software is more robust? Are we really doing things better? The  human/social aspects could be tricky.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Another  thing to keep in mind when devising measurements and processes to be  used inside a project is that all these processes and measures are  “waste” (things that don’t add value to the product). Of course, this  could all be good waste, because it will allow the company to improve,  to do things better in the future. Nonetheless, they should be treated  as such and designed to be as light as possible. Probably, automation  (again) is the key in this regard.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  believe that creating more formal mechanisms to improve, that are  aligned with company objectives, could be beneficial to Agile projects  which in general focus their improvements efforts informally and with a  project scope. The real objectives and the human aspects should be taken  into consideration to avoid optimizing in the wrong side. The  improvements processes should be light and agile.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;b&gt;&lt;i&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Other Process Areas&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt; - &lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html"&gt;Is the Requirements Management Process Area compatible with Agile?&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;?&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-750403717572736927?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/wzBvBVbLDLfCITRi-QRUZlzoI0E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wzBvBVbLDLfCITRi-QRUZlzoI0E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/wzBvBVbLDLfCITRi-QRUZlzoI0E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wzBvBVbLDLfCITRi-QRUZlzoI0E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/rEbnJ5IWBE8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/750403717572736927/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/750403717572736927?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/750403717572736927?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/rEbnJ5IWBE8/is-measurement-and-analysis-process.html" title="Is the Measurement and Analysis Process Area Compatible with Agile?" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2010/12/is-measurement-and-analysis-process.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcFRnk4cSp7ImA9Wx9WFEg.&quot;"><id>tag:blogger.com,1999:blog-3356724893663618112.post-7033477482728303990</id><published>2010-12-19T06:52:00.000-08:00</published><updated>2011-01-19T07:13:37.739-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-19T07:13:37.739-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Agile and CMMI" /><title>Is the Requirements Management Process Area compatible with Agile</title><content type="html">&lt;h1 id="internal-source-marker_0.48910889091736476"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&amp;nbsp;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  requirements management process area, a process area at maturity 2,  deals with managing all requirements related to the project throughout  its life. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Below are the specific goals and practices:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Manage Requirements&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.1 Obtain an Understanding of Requirements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.2 Obtain Commitment to Requirements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.3 Manage Requirements Changes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.4 Maintain Bidirectional Traceability of Requirements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0pt; margin-top: 0pt; text-indent: 36pt;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;SP 1.5 Identify Inconsistencies Between Project Work and Requirements&lt;/span&gt;&lt;/div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;SG 1 Manage Requirements&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The only objective in this process area states that requirements should be managed by doing the following:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Managing all changes to the requirements&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Maintaining the relationships among the requirements, the project plans, and the work products&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Identifying inconsistencies among the requirements, the project plans, and the work products&lt;/span&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Taking corrective action&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;All  of this is completely true in an agile environment. However, the  practices recommended to get there is very different. Let’s analyze each  of the practices.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;CMMI lists the following as the recommended practices to manage requirements:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;1.  Obtain an understanding of the requirements. When and how complete?  Well, the objective states that “The project maintains a current and  approved set of requirements” so my assumption is this understanding is  complete.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;2.  Obtaining commitment to Requirements. From those “who have to carry out  the activities necessary to implement the requirements.”&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;3. Manage Requirements Changes. Analyze impact and document rationale.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;4.  Maintain Bidirectional Traceability of Requirements. From requirements  to source code and vice-versa. This traceability helps determine  requirements have been completely addressed.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;5. Identify Inconsistencies Between Project Work and Requirements.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Requirements are managed differently in Agile. Let’s see how the practices would change:&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;1.  The project backlog doesn’t represent a current approved set of  requirements. Requirements in a backlog have different levels of  understanding and approval. Requirements live their life in the backlog  with different levels of understanding and approval. They are born as  ideas, “topics of conversation” and grow their understanding and  approval, even after they are implemented. The driver in this  understanding is their priority. More important requirements need to be  understood/approved first. There could be phases in the form of releases  in the backlog that will determine the understanding and approval of a  set of requirements. &lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;2.  It is important the Agile recommendation of having cross-functional  teams. A jelled team which contains all the necessary expertise  represents the easiest path for full commitment.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;3.  Changes in the backlog should be managed lightly, but continually. In  fact, I am not even sure that they should be named changes. As  previously mentioned in point 1, a requirement grows in the backlog,  perhaps changing its status, form and priority. This doesn’t mean that  Agile embraces high volatility or churn. All stakeholders should be  aware of the impact of the changes. A change may be important, but is  never free. The Product Owner, responsible for the ROI is the one to  make the trade-off.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;4.  Maintaining traceability could be very time consuming and only helps  determine that requirements have been addressed. Acceptance Tests are  less time consuming are help determine that requirements have been  fulfilled.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;5.  Again, automated acceptance tests are the recommended practice to  detect and fix inconsistencies in an Agile project. Doing this manually  would be too time and mind consuming. Computers should maintain all this  knowledge gained and detect the inconsistencies for us. The second  recommended practice is to involve the customer through all the project.  Customers are the best persons to detect inconsistencies (should we  call them inconsistencies?)&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="font-weight: normal;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; text-decoration: none; vertical-align: baseline;"&gt;What is missing in the recommended practices?&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: underline; vertical-align: baseline;"&gt;Prioritization&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;:  One of the most important aspects in managing requirements in an agile  environment is managing priorities. Prioritization works starts at  project inception and follows throughout the project. Of course, this is  a very difficult task as it involves not only understanding the  business value that different requirements add but also making  trade-offs based on technical feedback and measures of effort.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: bold; text-decoration: underline; vertical-align: baseline;"&gt;Requirements live and Requirements light&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;:  One of the most difficult and time consuming tasks during a project is  to maintain requirements up to date. If doing this is too time  consuming, agility suffers. Many agilists suggest that the best way of  maintaining them is through maintaining them as executable requirements  (or executable specifications, examples, etc.). An executable  requirement must be maintained and it always up to date. Being able to  execute/debug this requirements allows to easily trace requirements with  source code.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;I  believe the only goal of this process area is entirely applicable in an  agile environment, but the path to get there goes in a complete  opposite direction. The CMMI recommendation is to get a complete  approved set of requirements, which is maintained and traced to the  source code (and viceversa) throughout the life of the project. The  agile recommendation is to maintain a prioritized executable  specification at all times. The later mechanism is lighter, assures is  up to date and automated.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;b&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Other Process Areas&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt; - &lt;/span&gt;&lt;a href="http://agilebooknote.blogspot.com/2010/12/is-project-monitoring-and-control.html"&gt;Is the Project Monitoring and Control Process Area compatible with Agile&lt;/a&gt;&lt;br /&gt;
- &lt;a href="http://agilebooknote.blogspot.com/2010/11/is-project-planning-process-area.html"&gt;Is the Project Planning Process Area compatible with Agile?&lt;/a&gt;&lt;br /&gt;
&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3356724893663618112-7033477482728303990?l=agilebooknote.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/25FAhXagYPmBVG6-9PQ9CO_D7-A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/25FAhXagYPmBVG6-9PQ9CO_D7-A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/25FAhXagYPmBVG6-9PQ9CO_D7-A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/25FAhXagYPmBVG6-9PQ9CO_D7-A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AgileBooknote/~4/XE8cvQ_Wsw4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://agilebooknote.blogspot.com/feeds/7033477482728303990/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/7033477482728303990?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3356724893663618112/posts/default/7033477482728303990?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AgileBooknote/~3/XE8cvQ_Wsw4/is-requirements-management-process-area.html" title="Is the Requirements Management Process Area compatible with Agile" /><author><name>Federico Zuppa</name><uri>http://www.blogger.com/profile/13346754761957313175</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="22" height="32" src="http://2.bp.blogspot.com/_sfFV7tSF_hQ/TSxGMQ1Gd3I/AAAAAAAAD98/m8f2FvpjgD4/S220/fzuppa.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://agilebooknote.blogspot.com/2010/12/is-requirements-management-process-area.html</feedburner:origLink></entry></feed>

