<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="http://rss.projectconnections.com/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://rss.projectconnections.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">
    <title>PM Blog: Alan S. Koch</title>
    
    <link rel="alternate" type="text/html" href="http://blog.projectconnections.com/alan_koch/" />
    <id>tag:typepad.com,2003:weblog-1624420</id>
    <updated>2008-04-29T13:48:26-07:00</updated>
    
    <generator uri="http://www.typepad.com/">TypePad</generator>
    <link rel="self" href="http://rss.projectconnections.com/rss/alan_koch" type="application/atom+xml" /><entry>
        <title>Customer Focus</title>
        <link rel="alternate" type="text/html" href="http://rss.projectconnections.com/~r/rss/alan_koch/~3/280883775/customer-focus.html" />
        <link rel="replies" type="text/html" href="http://blog.projectconnections.com/alan_koch/2008/04/customer-focus.html" thr:count="2" thr:updated="2008-05-07T22:19:45-07:00" />
        <id>tag:typepad.com,2003:post-49189260</id>
        <published>2008-04-29T13:48:26-07:00</published>
        <updated>2008-04-30T16:12:42-07:00</updated>
        <summary>The Essence of Agility What makes a project "Agile"? Part 2 of 4 by Alan S. Koch, PMP Is the team "Agile," as they claim, or are they using that term as a cloak for a lack of discipline? One...</summary>
        <author>
            <name>Erik Andreasen</name>
        </author>
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.projectconnections.com/alan_koch/">
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;!--Contents:Start--&gt;

&lt;!--pubDate: 2008-04-30--&gt;
&lt;p style="text-align: center;"&gt;&lt;strong&gt;The Essence of Agility&lt;br /&gt;What makes a project "Agile"?&lt;br /&gt;Part 2 of 4&lt;/strong&gt;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;by Alan S. Koch, PMP&lt;/p&gt;
&lt;p&gt;Is the team "Agile," as they claim, or are they using that term as a cloak for a lack of discipline? One way to know is to observe what drives their activity: do they do what is cool, or do they do what the customer values? In this article, we will continue to explore the types of discipline that are the essence of being Agile. This time, we will focus on how the team relates to their customer.&lt;/p&gt;
&lt;h2 class="heading"&gt;Agility and Discipline&lt;/h2&gt;
&lt;p&gt;In &lt;a href="http://blog.projectconnections.com/alan_koch/2008/04/what-makes-a-pr.html"&gt;my last column&lt;/a&gt;, I discussed the importance of discipline to Agility. Kent Beck, co-author of &lt;i&gt;Extreme Programming Explained&lt;/i&gt;, put it well in his foreword to my book: "Agility in software requires iron discipline." (If you did not see that installment, you may want to &lt;a href="http://blog.projectconnections.com/alan_koch/2008/04/what-makes-a-pr.html"&gt;read it&lt;/a&gt; before you continue with this one.) &lt;/p&gt;
&lt;p&gt;Differentiating true Agility from undisciplined behavior is a matter of observing the team to see if they exhibit the behaviors that are essential to Agility: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Learning and adaptation&lt;/li&gt;
&lt;li&gt;Collaboration&lt;/li&gt;
&lt;li&gt;Customer focus&lt;/li&gt;
&lt;li&gt;Small self-directed teams&lt;/li&gt; 
&lt;li&gt;Lean principles&lt;/li&gt; 
&lt;li&gt;Progressive requirements elaboration&lt;/li&gt;
&lt;li&gt;Incremental delivery&lt;/li&gt;
&lt;li&gt;Iterative planning and adaptation&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In this second article of a four-part series, we will discuss the third of those behaviors, Customer focus. As we discuss this, it will be useful to refer to the Agile Lifecycle. &lt;/p&gt;
&lt;p align="center"&gt;&lt;img src="http://www.projectconnections.com/articles/images/022108-akoch_510x366.gif"&gt;&lt;/p&gt;
&lt;h2 class="heading"&gt;Customer Focus&lt;/h2&gt;
&lt;p&gt;It is &lt;i&gt;all&lt;/i&gt; about our customer. &lt;b&gt;&lt;i&gt;All!&lt;/i&gt;&lt;/b&gt; An Agile team will do everything in their power to maintain continuous (or at least regular) contact with their customer, because that contact is essential to their ability to produce what the customer needs. An Agile team doesn't trust a Requirements Specification to tell the whole story. They know that if such a document was written, it contains errors, interpretations, and key omissions. They also know that even if it accurately represents what the customer &lt;i&gt;thought&lt;/i&gt; they needed when they signed off, things are likely to change before the product is complete.&lt;/p&gt;
&lt;p&gt;In order to ensure that they deliver what the customer really needs (and needs &lt;i&gt;today&lt;/i&gt;), the team includes the customer in team activities as often as possible. The customer's input is important in each phase of the Agile lifecycle (as pictured above).&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Initiate Project&lt;/b&gt; &amp;ndash; Of &lt;i&gt;course&lt;/i&gt; the customer's participation is needed during this phase. But the Agile team will also be involved with them. It is not enough for the Customer to say, "This is what I want, and that is when I need it." Of equal importance is the team's understanding of &lt;i&gt;why&lt;/i&gt; each feature is important to the customer, and the customer's understanding of which parts of the project are difficult, time-consuming or technically risky.&lt;/p&gt;
&lt;p&gt;Ultimately, defining a project that will best meet the customer's needs requires collaborative planning, with critical input from both the developers and their customer.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Plan Iteration&lt;/b&gt; &amp;ndash Although planning the details of the work the team will do in a short iteration is their own job to do (see Small Self-Directed Teams, in the next installment of this series), the team needs critical input from their customer to do it well. What is the goal we are trying to achieve in this iteration? Which features and functions are tied to that goal? And what are their relative priorities? The team's customer must play a central role in these parts of the plan.&lt;/p&gt;
&lt;p&gt;But even more important is that the detailed Iteration planning may reveal that the team will be unable to do as much as had originally been thought. The customer &lt;i&gt;must&lt;/i&gt; be part of the discussion about how to adjust the scope of the iteration to make it an aggressive, yet achievable plan that will bring real value to the customer.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Develop Product Increment&lt;/b&gt; &amp;ndash; The customer's role &lt;i&gt;during&lt;/i&gt; development cannot be over-emphasized. Regardless of how well requirements have been defined and in what form they have been documented (we will discuss Requirements in Part 4 of this series), the team will have &lt;i&gt;many&lt;/i&gt; questions as they actually do the work. Instead of guessing about the best way to implement each feature, an Agile team asks lots of questions of their customer. "If I do it this way, it will have this impact on the end user; but that way will result in such-and-such a limitation. Which way should I do it?"  "What precisely were you expecting when you said that you need the system to do this?"  "Take a look at this. Will it do what you need?"&lt;/p&gt;
&lt;p&gt;An Agile team will not just forge ahead; they will seek feedback from their customer whenever they have a question. Obviously, if their customer is not available to interact with them in this way, the team's ability to be Agile will be hampered. But that will not keep them from asking!&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Review Iteration&lt;/b&gt; &amp;ndash; The point behind the Iteration Review is to get the customer's feedback on what was built during the iteration&amp;mdash;either acceptance or specific guidance on what needs to change. This feedback is central to the Agile approach; it is why the product is built incrementally.&lt;/p&gt;
&lt;p&gt;After each step in the project, the team will demonstrate what was just built to their customer and actively seek the customer's feedback. If their customer is willing and able to do full Acceptance Testing, that is even better! And putting the product into production is best, because this will result in the richest and most important feedback the team could get!&lt;/p&gt;
&lt;p&gt;The more feedback the team members can get from their customer during development (as just discussed in the prior point), the fewer surprises there will be in the Iteration Review. Nevertheless, even with excellent access to their customer during development, the Iteration Review establishes an important milestone that the Agile team cannot continue without.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Adapt to Change&lt;/b&gt; &amp;ndash; In &lt;a href="http://blog.projectconnections.com/alan_koch/2008/04/what-makes-a-pr.html"&gt;the first part of this series&lt;/a&gt;, I discussed the importance of learning and adaptation to an Agile team. This phase of the Agile lifecycle is when much of the adaptation takes place. Based on all that has been learned as we went through the iterations so far, what should change about the project?&lt;/p&gt;
&lt;p&gt;Because the project is all about the customer, these deliberations cannot take place without the customer's participation. The team can articulate the impacts of any changes (cost of that new requirement, impact of a risk realized, expense of changing an already-implemented feature). But only the customer can decide how the project's progression and deliverables should be adjusted to account for all of this.&lt;/p&gt;
&lt;p&gt;An Agile team will not simply soldier forward in the face of unachievable expectations. Neither will they make these key decisions themselves. They will present the facts of the project to their customer (and management and any other stakeholders who must be involved), and look to &lt;i&gt;them&lt;/i&gt; to make the hard decisions.&lt;/p&gt;
&lt;h2 class="heading"&gt;Becoming More Agile&lt;/h2&gt;
&lt;p&gt;We will discuss the last five behaviors of the Essence of Agility (small self-directed teams, lean principles, progressive requirements elaboration, incremental delivery, and iterative planning and adaptation) in parts three and four of this series. But becoming truly Agile can begin today.&lt;/p&gt;
&lt;p&gt;We can involve our customer in the workings of the project regularly and continuously. We can articulate the costs, limitations and risks in the project, but leave it to our customer to decide the best use of the project's limited resources. And we can get feedback from our customer as often as we possibly can.&lt;/p&gt;
&lt;p&gt;To make this happen, we must engage our customer to a degree that they have probably not been engaged in our projects before. This is a significant time commitment on their part, so we must make it clear that they (and not the project team) are the main beneficiaries of any additional investment of their own time in the project. This investment is insurance that the project will delivery the highest possible business value to them in the face of constraints, changes and all of the surprises that will come up.&lt;/p&gt;
&lt;p&gt;This will help us to become a bit more agile. But these behaviors will be difficult to achieve without the other parts of the Essence of Agility. So stay tuned!&lt;/p&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;script language="JavaScript" src="http://www.projectconnections.com/articles/scripts/akoch-copyright-2008.js"&gt;&lt;/script&gt;&lt;/p&gt;
&lt;!--Contents:End--&gt;&lt;/div&gt;
</content>


    <feedburner:origLink>http://blog.projectconnections.com/alan_koch/2008/04/customer-focus.html</feedburner:origLink></entry>
    <entry>
        <title>What makes a project "Agile"?</title>
        <link rel="alternate" type="text/html" href="http://rss.projectconnections.com/~r/rss/alan_koch/~3/271026041/what-makes-a-pr.html" />
        <link rel="replies" type="text/html" href="http://blog.projectconnections.com/alan_koch/2008/04/what-makes-a-pr.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-48266256</id>
        <published>2008-04-10T09:27:58-07:00</published>
        <updated>2008-04-30T16:11:48-07:00</updated>
        <summary>The Essence of Agility Part 1 of 4 Learning and Adaptation &amp; Collaboration by Alan S. Koch, PMP The Agile approach is often panned as an excuse for lack of discipline. I've been told that Agility means, "We'll just wing...</summary>
        <author>
            <name>Erik Andreasen</name>
        </author>
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://blog.projectconnections.com/alan_koch/">
<div xmlns="http://www.w3.org/1999/xhtml"><!--Contents:Start-->

<!--pubDate: 2008-02-21-->
<p style="text-align: center;"><strong>The Essence of Agility<br />Part 1 of 4<br />Learning and Adaptation &amp; Collaboration</strong></p>
<p style="text-align: center;">by Alan S. Koch, PMP</p>
<p>The Agile approach is often panned as an excuse for lack of discipline. I've been told that Agility means, "We'll just wing it, and when we run out of money, we'll ask for more." This and other such statements show that many people don't understand what Agility is all about.</p>
<p>The confusion is understandable because there is a plethora of practices that people claim as "Agile." And unfortunately, some of them are indeed using the term "Agile" as an excuse for lack of discipline. </p>
<p>The Essence of Agility is a set of observable behaviors and actions. We can determine if a project is agile or merely claiming to be by looking for these behaviors and evaluating how effectively they support the Agile Values and Principles.</p>
<h2 class="subheading">Agility and Discipline</h2>
<p>Agility is valued by any organization. It connotes the ability to withstand whatever comes our way while maintaining balance and momentum. In software development, this translates into maintaining project performance and progress in the face of changing customer needs, business priorities, technology, and organizational dynamics.</p>
<p>Calling undisciplined behavior <em>agile</em> is a misuse of the term. As Kent Beck (co-author of <em>Extreme Programming Explained</em>) wrote in his foreword to my book: "Agility in software requires iron discipline." So how are we to differentiate true Agility from undisciplined behavior?</p>
<p>The Agile methods, as designed by their creators and implemented on disciplined teams, use a variety of tactics to build a project environment that is indeed agile. There is no one set of practices that is definitively Agile. In fact, there are a dozen different methods that are included under the banner of Agile, and each of them includes some unique practices. </p>
<p>True Agility is based on a few distinct principles that are underpinned by a unique value system. (Refer to the Agile Manifesto at <a href="http://www.agilemanifesto.org">www.agilemanifesto.org</a>.) The application of these values and principles results in a few indispensable behaviors that can be seen and judged objectively by any interested stakeholder of a project. It is those behaviors that I refer to as the Essence of Agility:</p>
<ul>
<li>Learning and adaptation</li>
<li>Collaboration</li>
<li>Customer focus</li>
<li>Small self-directed teams</li>
<li>Lean principles</li>
<li>Progressive requirements elaboration</li>
<li>Incremental delivery</li>
<li>Iterative planning and adaptation</li>
</ul>
<p>In this first article of a three-part series, we will discuss the first two of those behaviors. As we discuss them, it will be useful to refer to the Agile Lifecycle. </p>
<img width="510" height="366" alt="The Agile Lifecycle" src="http://www.projectconnections.com/articles/images/022108-akoch_510x366.gif" style="margin: 10px auto; display: block;" />
<h2 class="subheading">Learning and Adaptation</h2>
<p>At its heart, Agility is based on the admission that we don't know everything at the start of a project. Even the things we <em>think</em> we know are subject to revision as the project moves forward and the world changes around us. And we most certainly don't know what surprises we will encounter.</p>
<p>Because there is so much uncertainty, we treat each project as a learning experience. In fact, we structure the project to <em>accelerate</em> the rate at which we will learn. Technical issues? Explore them early. Customer uncertainty? Get their feedback on early product increments. Quality questions? Test early and often. Integration difficulties? Build daily, if not continuously. The sooner we answer questions, address issues, and attack difficulties, the sooner we can adapt to what we learn, and the sooner we will smooth out the road for the project.</p>
<p>Adaptation is the reason we want to learn, and learn quickly. We start each project with our best projection about how things will turn out. But as we learn, we invariably discover that some of our projections were off the mark. Where we expected a smooth road, we discover a cliff! Will we keep marching forward like lemmings? Of course we won't. We will adapt by reassessing the situation based on our new knowledge and mapping a new path to our destination. Applying what we learn is the only way to success on our project. Blindly following the old plan would be absurd!</p>
<p>Agile project teams don't just learn about uncertainties. They also learn about themselves and their methods. At the end of each iteration they perform a mini-retrospective. "What worked well? What caused difficulty? How good were our estimates? Did we produce customer value? Are we progressing toward success?" Then they adapt their methods and plans for the next iteration. "What should we do differently <em>this</em> time?" And at the end of the <em>next</em> iteration they ask, "How did that change work? Should we keep it?"</p>
<p>Through a constant cycle of learning and adaptation, the Agile team produces real value for their customers, and learns to do so more and more effectively.</p>
<h2 class="subheading">Collaboration</h2>
<p>Learning is a natural human activity, and it happens most effectively in an environment of human contact. Collaboration takes many forms on an Agile team, and each of them is critical to the team's ability to be successful in building a valuable product for their customer.</p>
<p>The first type of collaboration happens within the Agile team itself. An Agile team consists of all of the technical disciplines that are required on the project: architects and designers, programmers, database analysts, testers, technical writers, and so on. And rather than hiding in their cubes and working on their own little corners of the project, these people are collaborating with each other constantly throughout the project. </p>
<p>This supports learning (discussed above), as each team member learns about what the others do and learns to appreciate and respect his or her peers. (Yes, even the testers!) This not only builds a healthier project environment, but it also strengthens the team as each member becomes more knowledgeable and effective. Cross-discipline collaboration also allows the team to explore and answer technical questions and discover technical surprises much more quickly. This provides the foundation for learning early and adapting to what is learned in order to bring about project success.</p>
<p>But the team does not collaborate only with each other. They are also fully engaged with management, their customers, and any other stakeholders in the project. Open communication and transparent disclosure of information allows for quick learning and more effective adaptation. In addition, it engenders trust and defuses the all-too-common "us vs. them" mindset. When all who are associated with the project are collaborating with each other and learning along side each other, the project will progress much more smoothly and be much more likely to produce what is needed. And when the inevitable problems arise, instead of pointing fingers and attempting to evade blame, they will be ready to join together to meet the problems head on.</p>
<h2 class="subheading">Becoming More Agile</h2>
<p>We will discuss the other behaviors of the Essence of Agility in parts two and three of this series. But becoming truly Agile can begin today.</p>
<p>We can accept the principle that we begin each project with many unknowns, and that learning about those things is <em>good</em>! We can look for ways to learn more effectively, and to incorporate what we learn into the project as it moves forward. And we can reward learning, instead of punishing "change."</p>
<p>To make this happen, we can establish a cooperative environment where all of the stakeholders of the project (customer, management, and each technical discipline) collaborate together for the project's success. Free and open flow of information will foster the attitude that we are all in this together, and promote collaboration.</p>
<p>This will get us started on becoming a bit more agile. But these behaviors will be difficult to achieve without the other parts of the Essence of Agility. So stay tuned!</p>
<br /><br />
<hr />
<p><script language="JavaScript" src="http://www.projectconnections.com/articles/scripts/akoch-copyright-2008.js" /></p>
<!--Contents:End--></div>
</content>


    <feedburner:origLink>http://blog.projectconnections.com/alan_koch/2008/04/what-makes-a-pr.html</feedburner:origLink></entry>
 
</feed>
