<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>kevin Mocha - Design | Scrum</title>
    <link>http://blog.ilovedoudou.com/</link>
    <description>Bookmarks collected from web.</description>
    <language>en-us</language>
    <copyright>Kevin Mocha</copyright>
    <lastBuildDate>Fri, 26 Mar 2010 20:11:39 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 1.9.6264.0</generator>
    <managingEditor>lulustock@gmail.com</managingEditor>
    <webMaster>lulustock@gmail.com</webMaster>
    <item>
      <trackback:ping>http://blog.ilovedoudou.com/Trackback.aspx?guid=e82f1378-6d12-4ca3-85a8-8cc5d106e3c3</trackback:ping>
      <pingback:server>http://blog.ilovedoudou.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.ilovedoudou.com/PermaLink,guid,e82f1378-6d12-4ca3-85a8-8cc5d106e3c3.aspx</pingback:target>
      <dc:creator>Kevin Mocha</dc:creator>
      <wfw:comment>http://blog.ilovedoudou.com/CommentView,guid,e82f1378-6d12-4ca3-85a8-8cc5d106e3c3.aspx</wfw:comment>
      <wfw:commentRss>http://blog.ilovedoudou.com/SyndicationService.asmx/GetEntryCommentsRss?guid=e82f1378-6d12-4ca3-85a8-8cc5d106e3c3</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_2.png">
            <img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_thumb.png" width="490" height="277" />
          </a>
          <br />
          <br />
          <a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_4.png">
            <img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_thumb_1.png" width="487" height="183" />
          </a>
        </p>
        <p>
        </p>
        <p>
          <a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_6.png">
            <img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_thumb_2.png" width="491" height="135" />
          </a>
        </p>
        <p>
          <a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_8.png">
            <img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_thumb_3.png" width="519" height="91" />
          </a>
        </p>
        <img width="0" height="0" src="http://blog.ilovedoudou.com/aggbug.ashx?id=e82f1378-6d12-4ca3-85a8-8cc5d106e3c3" />
      </body>
      <title>Scrum and XP from the Tranches</title>
      <guid isPermaLink="false">http://blog.ilovedoudou.com/PermaLink,guid,e82f1378-6d12-4ca3-85a8-8cc5d106e3c3.aspx</guid>
      <link>http://blog.ilovedoudou.com/PermaLink,guid,e82f1378-6d12-4ca3-85a8-8cc5d106e3c3.aspx</link>
      <pubDate>Fri, 26 Mar 2010 20:11:39 GMT</pubDate>
      <description>&lt;p&gt;
&lt;a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_thumb.png" width="490" height="277"&gt;&lt;/a&gt; 
&lt;br&gt;
&lt;br&gt;
&lt;a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_4.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_thumb_1.png" width="487" height="183"&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_6.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_thumb_2.png" width="491" height="135"&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_8.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/ScrumandXPfromtheTranches_E422/image_thumb_3.png" width="519" height="91"&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.ilovedoudou.com/aggbug.ashx?id=e82f1378-6d12-4ca3-85a8-8cc5d106e3c3" /&gt;</description>
      <comments>http://blog.ilovedoudou.com/CommentView,guid,e82f1378-6d12-4ca3-85a8-8cc5d106e3c3.aspx</comments>
      <category>Design / Scrum</category>
    </item>
    <item>
      <trackback:ping>http://blog.ilovedoudou.com/Trackback.aspx?guid=dff1dbfd-42df-47b5-875f-e308fa945828</trackback:ping>
      <pingback:server>http://blog.ilovedoudou.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.ilovedoudou.com/PermaLink,guid,dff1dbfd-42df-47b5-875f-e308fa945828.aspx</pingback:target>
      <dc:creator>Kevin Mocha</dc:creator>
      <wfw:comment>http://blog.ilovedoudou.com/CommentView,guid,dff1dbfd-42df-47b5-875f-e308fa945828.aspx</wfw:comment>
      <wfw:commentRss>http://blog.ilovedoudou.com/SyndicationService.asmx/GetEntryCommentsRss?guid=dff1dbfd-42df-47b5-875f-e308fa945828</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a title="http://agilemanifesto.org/principles.html" href="http://agilemanifesto.org/principles.html">http://agilemanifesto.org/principles.html</a>
        </p>
        <h3>Principles behind the Agile Manifesto
</h3>
        <p>
          <i>We follow these principles:</i>
        </p>
        <ol>
          <li>
            <font size="2">Our highest priority is to satisfy the customer through <strong>early
and continuous delivery</strong> of valuable software. </font>
          </li>
          <li>
            <font size="2">
              <strong>Welcome changing requirements</strong>, even late in development.
Agile processes harness change for the customer's competitive advantage. </font>
          </li>
          <li>
            <font size="2">
              <strong>Deliver working software frequently</strong>, from a couple
of weeks to a couple of months, with a preference to the shorter timescale. </font>
          </li>
          <li>
            <font size="2">Business people and developers must <strong>work together</strong> daily
throughout the project. </font>
          </li>
          <li>
            <font size="2">Build projects around motivated individuals. Give them the environment
and support they need, and trust them to get the job done. </font>
          </li>
          <li>
            <font size="2">The most efficient and effective method of conveying information to
and within a development team is <strong>face-to-face conversation</strong>. </font>
          </li>
          <li>
            <font size="2">
              <strong>Working software</strong> is the primary measure of progress. </font>
          </li>
          <li>
            <font size="2">Agile processes promote sustainable development. The sponsors, developers,
and users should be able to maintain <strong>a constant pace</strong> indefinitely. </font>
          </li>
          <li>
            <font size="2">Continuous attention to technical excellence and good design enhances
agility. </font>
          </li>
          <li>
            <font size="2">Simplicity--the art of maximizing the amount of work not done--is essential. </font>
          </li>
          <li>
            <font size="2">The best architectures, requirements, and designs emerge from self-organizing
teams. </font>
          </li>
          <li>
            <font size="2">At regular intervals, the team reflects on how to become more effective,
then tunes and adjusts its behavior accordingly. </font>
          </li>
        </ol>
        <p>
          <a title="http://www.mountaingoatsoftware.com/topics/scrum" href="http://www.mountaingoatsoftware.com/topics/scrum">http://www.mountaingoatsoftware.com/topics/scrum</a>
        </p>
        <h5>
          <font size="3">What is Scrum?</font>
        </h5>
        <p>
          <font size="2">Scrum is an <strong>agile approach</strong> to software development. <strong>Rather
than a full process or methodology, it is a framework</strong>. So instead of providing
complete, detailed descriptions of how everything is to be done on the project, <strong>much
is left up to the team</strong>. This is done because the team will know best how
to solve its problem. This is why, for example, a sprint planning meeting is described
in terms of the desired outcome (a commitment to set of features to be developed in
the next sprint) instead of a set of Entry criteria, Task definitions, Validation
criteria, and Exit criteria (ETVX) as would be provided in most methodologies.<br /></font>
        </p>
        <p>
          <font size="2">Scrum relies on a self-organizing, cross-functional team. The </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/team">
            <font size="2">scrum
team</font>
          </a>
          <font size="2"> is self-organizing in that <strong>there is no overall
team</strong> leader who decides which person will do which task or how a problem
will be solved. <strong>Those are issues that are decided by the team as a whole</strong>.
The team is cross-functional so that everyone necessary to take a feature from idea
to implementation is involved. These teams are supported by two specific individuals:
a </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/scrummaster">
            <strong>
              <font size="2">ScrumMaster</font>
            </strong>
          </a>
          <font size="2"> and
a </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/product-owner">
            <strong>
              <font size="2">product
owner</font>
            </strong>
          </a>
          <font size="2">. The ScrumMaster can be thought of as a coach
for the team, helping team members use the Scrum framework to perform at their highest
level. The product owner represents the business, customers or users and guides the
team toward building the right product.<br /></font>
        </p>
        <p>
          <font size="2">Scrum projects make progress in a series of <strong>sprints</strong>,
which are timeboxed iterations no more than a month long. At the start of a sprint,
team members commit to delivering some number of features that were listed on the
project’s </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/product-backlog">
            <font size="2">
              <strong>product
backlog</strong>
            </font>
          </a>
          <font size="2">. At the end of the sprint, these features
are <em>done</em>--they are coded, tested, and integrated into the evolving product
or system. At the end of the sprint a </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/sprint-review-meeting">
            <font size="2">
              <strong>sprint
review</strong> is conducted</font>
          </a>
          <font size="2"> during which the team demonstrates
the new functionality to the product owner and other interested stakeholders who provide
feedback that could influence the next sprint.</font>
        </p>
        <p>
          <br />
 
</p>
        <h5>What are the main activities in Scrum?
</h5>
        <p>
          <font size="2">The sprint itself is the main activity of a Scrum project. Scrum is
an iterative and incremental process and so the project is split into a series of
consecutive sprints. Each is timeboxed, usually to between one week and a calendar
month. A recent survey found that the most common sprint length is two weeks. During
this time the team does everything to take a small set of features from idea to coded
and tested functionality. 
<br /></font>
        </p>
        <p>
          <font size="2">The first activity of each sprint is a </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/sprint-planning-meeting">
            <font size="2">sprint
planning meeting</font>
          </a>
          <font size="2">. During this meeting the product owner
and team talk about the highest-priority items on the </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/product-owner">
            <font size="2">product
backlog</font>
          </a>
          <font size="2">. Team members figure out how many items they can
commit to and then create a </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/sprint-backlog">
            <font size="2">sprint
backlog</font>
          </a>
          <font size="2">, which is a list of the tasks to perform during
the sprint.<br /></font>
        </p>
        <p>
          <font size="2">On each day of the sprint, a </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/daily-scrum">
            <font size="2">daily
scrum meeting</font>
          </a>
          <font size="2"> is attended by all team members, including
the ScrumMaster and the product owner. This meeting is timeboxed to no more than fifteen
minutes. During that time, team members share what they worked on the prior day, will
work on today, and identify any impediments to progress. Daily scrums serve to synchronize
the work of team members as they discuss the work of the sprint.<br /></font>
        </p>
        <p>
          <font size="2">At the end of a sprint, the teams conducts a </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/sprint-review-meeting">
            <font size="2">sprint
review</font>
          </a>
          <font size="2">. During the sprint review, the team demonstrates
the functionality added during the sprint. The goal of this meeting is to get feedback
from the product owner or any users or other stakeholders who have been invited to
the review. This feedback may result in changes to the freshly delivered functionality.
But it may just as likely result in revising or adding items to the product backlog.<br /></font>
        </p>
        <p>
          <font size="2">Another activity performed at the end of each sprint is the </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/sprint-retrospective">
            <font size="2">sprint
retrospective</font>
          </a>
          <font size="2">. The whole team participates in this meeting,
including the ScrumMaster and product owner. The meeting is an opportunity to reflect
on the sprint that is ending and identify opportunities to improve in the new sprint.</font>
        </p>
        <p>
 
</p>
        <h5>What are the main artifacts of a Scrum project?
</h5>
        <p>
          <font size="2">The primary artifact of a Scrum project is, of course,<strong> the
product itself</strong>. The team is expected to bring the product or system to a
potentially shippable state at the end of each sprint.<br /></font>
        </p>
        <p>
          <font size="2">The </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/product-backlog">
            <font size="2">product
backlog</font>
          </a>
          <font size="2"> is a complete list of the functionality that remains
to be added to the product. The product backlog is prioritized by the </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/product-owner">
            <font size="2">product
owner</font>
          </a>
          <font size="2"> so that the team always works on the most valuable
features first. The most popular and successful way to create a product backlog is
to populate it with </font>
          <a href="http://www.mountaingoatsoftware.com/topics/user-stories">
            <font size="2">user
stories</font>
          </a>
          <font size="2">, which are short descriptions of functionality described
from the perspective of a user or customer. 
<br /></font>
        </p>
        <p>
          <font size="2">On the first day of a sprint and during the </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/sprint-planning-meeting">
            <font size="2">sprint
planning meeting</font>
          </a>
          <font size="2">, team members create the </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/sprint-backlog">
            <font size="2">sprint
backlog</font>
          </a>
          <font size="2">. The sprint backlog can be thought of as the team’s
to-do list for the sprint. Whereas a product backlog is a list of features to be built
(often written in the form of user stories), the sprint backlog is the list of tasks
the team needs to perform in order to deliver the functionality they committed to
deliver during the sprint.<br /></font>
        </p>
        <p>
          <font size="2">Two other primary artifacts are the sprint <strong>burndown chart and </strong></font>
          <a href="http://www.mountaingoatsoftware.com/scrum/release-burndown">
            <font size="2">
              <strong>release
burndown chart</strong>
            </font>
          </a>
          <font size="2">. Burndown charts show the amount
of work remaining either in a sprint or a release. They are a very effective tool
for determining at a glance whether a sprint or release is on schedule to have all
planned work finished by the desired date.</font>
        </p>
        <p>
          <font size="2">
          </font>  
</p>
        <h5>What are the main roles on a Scrum team?
</h5>
        <p>
          <font size="2">Even if you are new to Scrum, you may have heard of a role called </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/scrummaster">
            <font size="2">
              <strong>ScrumMaster</strong>
            </font>
          </a>
          <font size="2">
            <strong>.</strong> The
ScrumMaster is the team’s coach and helps team members achieve their highest level
of performance. A ScrumMaster differs from a project manager in many key ways, including
that the ScrumMaster does not provide day-to-day direction to the team and does not
assign tasks to individuals. A good ScrumMaster shelters the team from outside distractions,
allowing team members to focus maniacally during the sprint on the goal they have
selected.<br /></font>
        </p>
        <p>
          <font size="2">While the ScrumMaster focuses on helping the team be the best that
it can be, the </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/product-owner">
            <font size="2">
              <strong>product
owner</strong>
            </font>
          </a>
          <font size="2"> works to direct the team at the right goal.
The product owner does this by creating a compelling vision of the product and then
conveying that vision to the team through the </font>
          <a href="http://www.mountaingoatsoftware.com/scrum/product-backlog">
            <font size="2">product
backlog</font>
          </a>
          <font size="2">.<br /></font>
        </p>
        <p>
          <font size="2">The product owner is responsible for ensuring that the product backlog
remains prioritized as more is learned about the system being built, its users, the
team, and so on.<br /></font>
        </p>
        <p>
          <font size="2">The third and final role on a <strong>Scrum project</strong> is the
team itself. Although individuals on a Scrum team may come to that team with various
job titles, while on the team those titles are insignificant. Each person contributes
in whatever ways they best can to complete the work of each sprint. This does not
mean that a tester will be expected to rearchitect the system; individuals will spend
most (and sometimes all) of their time working in whatever discipline they worked
before adopting Scrum. But on a Scrum team, individuals are expected to work beyond
their preferred disciplines whenever doing so would be for the good of the team.<br /></font>
        </p>
        <p>
          <font color="#008000" size="2">One convenient way to think of the interlocking nature
of these three roles is as a race car. The team is the car itself, ready to speed
along in whatever direction it is pointed. The product owner is the driver, making
sure that the car is always going in the right direction. The ScrumMaster is the chief
mechanic, keeping the car well-tuned and performing at its best.</font>
        </p>
        <p>
          <br />
 
</p>
        <p>
          <a title="http://xprogramming.com/xpmag/whatisxp" href="http://xprogramming.com/xpmag/whatisxp">http://xprogramming.com/xpmag/whatisxp</a>
        </p>
        <p>
          <a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/AgileXPScrum_9230/image_2.png">
            <img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/AgileXPScrum_9230/image_thumb.png" width="539" height="403" />
          </a>
        </p>
        <p>
          <font size="2">Extreme Programming is a discipline of software development based on
values of simplicity, communication, feedback, and courage. It works by bringing the
whole team together in the presence of simple practices, with enough feedback to enable
the team to see where they are and to tune the practices to their unique situation.</font>
        </p>
        <p>
          <font size="2">
            <br />
In Extreme Programming, every contributor to the project is an integral part of the
“</font>
          <a href="http://xprogramming.com/xpmag/whatisxp.htm#whole">
            <font size="2">Whole
Team</font>
          </a>
          <font size="2">“. The team forms around a business representative called
“the Customer”, who sits with the team and works with them daily.</font>
        </p>
        <ul>
          <li>
            <font size="2">Core Practices: </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#whole">
              <font size="2">Whole
Team</font>
            </a>
          </li>
        </ul>
        <p>
          <font size="2">Extreme Programming teams use a simple form of planning and tracking
to decide what should be done next and to predict when the project will be done. Focused
on business value, the team produces the software in a series of small fully-integrated
releases that pass all the tests the Customer has defined.</font>
        </p>
        <ul>
          <li>
            <font size="2">Core Practices: </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#planning">
              <font size="2">Planning
Game</font>
            </a>
            <font size="2">, </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#small">
              <font size="2">Small
Releases</font>
            </a>
            <font size="2">, </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#customer">
              <font size="2">Customer
Tests</font>
            </a>
          </li>
        </ul>
        <p>
          <font size="2">Extreme Programmers work together in pairs and as a group, with simple
design and obsessively tested code, improving the design continually to keep it always
just right for the current needs.</font>
        </p>
        <ul>
          <li>
            <font size="2">Core Practices: </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#simple">
              <font size="2">Simple
Design</font>
            </a>
            <font size="2">, </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#pair">
              <font size="2">Pair
Programming</font>
            </a>
            <font size="2">, </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#test">
              <font size="2">Test-Driven
Development</font>
            </a>
            <font size="2">, </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#design">
              <font size="2">Design
Improvement</font>
            </a>
          </li>
        </ul>
        <p>
          <font size="2">The Extreme Programming team keeps the system integrated and running
all the time. The programmers write all production code in pairs, and all work together
all the time. They code in a consistent style so that everyone can understand and
improve all the code as needed.</font>
        </p>
        <ul>
          <li>
            <font size="2">Core Practices: </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#continuous">
              <font size="2">Continuous
Integration</font>
            </a>
            <font size="2">, </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#collective">
              <font size="2">Collective
Code Ownership</font>
            </a>
            <font size="2">, </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#coding">
              <font size="2">Coding
Standard</font>
            </a>
          </li>
        </ul>
        <p>
          <font size="2">The Extreme Programming team shares a common and simple picture of
what the system looks like. Everyone works at a pace that can be sustained indefinitely.</font>
        </p>
        <ul>
          <li>
            <font size="2">Core Practices: </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#metaphor">
              <font size="2">Metaphor</font>
            </a>
            <font size="2">, </font>
            <a href="http://xprogramming.com/xpmag/whatisxp.htm#sustainable">
              <font size="2">Sustainable
Pace</font>
            </a>
          </li>
        </ul>
        <img width="0" height="0" src="http://blog.ilovedoudou.com/aggbug.ashx?id=dff1dbfd-42df-47b5-875f-e308fa945828" />
      </body>
      <title>Agile, XP, Scrum</title>
      <guid isPermaLink="false">http://blog.ilovedoudou.com/PermaLink,guid,dff1dbfd-42df-47b5-875f-e308fa945828.aspx</guid>
      <link>http://blog.ilovedoudou.com/PermaLink,guid,dff1dbfd-42df-47b5-875f-e308fa945828.aspx</link>
      <pubDate>Fri, 26 Mar 2010 14:21:53 GMT</pubDate>
      <description>&lt;p&gt;
&lt;a title="http://agilemanifesto.org/principles.html" href="http://agilemanifesto.org/principles.html"&gt;http://agilemanifesto.org/principles.html&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;Principles behind the Agile Manifesto
&lt;/h3&gt;
&lt;p&gt;
&lt;i&gt;We follow these principles:&lt;/i&gt; 
&lt;ol&gt;
&lt;li&gt;
&lt;font size="2"&gt;Our highest priority is to satisfy the customer through &lt;strong&gt;early
and continuous delivery&lt;/strong&gt; of valuable software. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;&lt;strong&gt;Welcome changing requirements&lt;/strong&gt;, even late in development.
Agile processes harness change for the customer's competitive advantage. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;&lt;strong&gt;Deliver working software frequently&lt;/strong&gt;, from a couple
of weeks to a couple of months, with a preference to the shorter timescale. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;Business people and developers must &lt;strong&gt;work together&lt;/strong&gt; daily
throughout the project. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;Build projects around motivated individuals. Give them the environment
and support they need, and trust them to get the job done. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;The most efficient and effective method of conveying information to
and within a development team is &lt;strong&gt;face-to-face conversation&lt;/strong&gt;. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;&lt;strong&gt;Working software&lt;/strong&gt; is the primary measure of progress. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;Agile processes promote sustainable development. The sponsors, developers,
and users should be able to maintain &lt;strong&gt;a constant pace&lt;/strong&gt; indefinitely. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;Continuous attention to technical excellence and good design enhances
agility. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;Simplicity--the art of maximizing the amount of work not done--is essential. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;The best architectures, requirements, and designs emerge from self-organizing
teams. &lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;font size="2"&gt;At regular intervals, the team reflects on how to become more effective,
then tunes and adjusts its behavior accordingly. &lt;/font&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
&lt;a title="http://www.mountaingoatsoftware.com/topics/scrum" href="http://www.mountaingoatsoftware.com/topics/scrum"&gt;http://www.mountaingoatsoftware.com/topics/scrum&lt;/a&gt; 
&lt;h5&gt;&lt;font size="3"&gt;What is Scrum?&lt;/font&gt;
&lt;/h5&gt;
&lt;p&gt;
&lt;font size="2"&gt;Scrum is an &lt;strong&gt;agile approach&lt;/strong&gt; to software development. &lt;strong&gt;Rather
than a full process or methodology, it is a framework&lt;/strong&gt;. So instead of providing
complete, detailed descriptions of how everything is to be done on the project, &lt;strong&gt;much
is left up to the team&lt;/strong&gt;. This is done because the team will know best how
to solve its problem. This is why, for example, a sprint planning meeting is described
in terms of the desired outcome (a commitment to set of features to be developed in
the next sprint) instead of a set of Entry criteria, Task definitions, Validation
criteria, and Exit criteria (ETVX) as would be provided in most methodologies.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;Scrum relies on a self-organizing, cross-functional team. The &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/team"&gt;&lt;font size="2"&gt;scrum
team&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; is self-organizing in that &lt;strong&gt;there is no overall
team&lt;/strong&gt; leader who decides which person will do which task or how a problem
will be solved. &lt;strong&gt;Those are issues that are decided by the team as a whole&lt;/strong&gt;.
The team is cross-functional so that everyone necessary to take a feature from idea
to implementation is involved. These teams are supported by two specific individuals:
a &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/scrummaster"&gt;&lt;strong&gt;&lt;font size="2"&gt;ScrumMaster&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;&lt;font size="2"&gt; and
a &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/product-owner"&gt;&lt;strong&gt;&lt;font size="2"&gt;product
owner&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;&lt;font size="2"&gt;. The ScrumMaster can be thought of as a coach
for the team, helping team members use the Scrum framework to perform at their highest
level. The product owner represents the business, customers or users and guides the
team toward building the right product.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;Scrum projects make progress in a series of &lt;strong&gt;sprints&lt;/strong&gt;,
which are timeboxed iterations no more than a month long. At the start of a sprint,
team members commit to delivering some number of features that were listed on the
project’s &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/product-backlog"&gt;&lt;font size="2"&gt;&lt;strong&gt;product
backlog&lt;/strong&gt;&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;. At the end of the sprint, these features
are &lt;em&gt;done&lt;/em&gt;--they are coded, tested, and integrated into the evolving product
or system. At the end of the sprint a &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/sprint-review-meeting"&gt;&lt;font size="2"&gt;&lt;strong&gt;sprint
review&lt;/strong&gt; is conducted&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; during which the team demonstrates
the new functionality to the product owner and other interested stakeholders who provide
feedback that could influence the next sprint.&lt;/font&gt; 
&lt;p&gt;
&lt;br&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h5&gt;What are the main activities in Scrum?
&lt;/h5&gt;
&lt;p&gt;
&lt;font size="2"&gt;The sprint itself is the main activity of a Scrum project. Scrum is
an iterative and incremental process and so the project is split into a series of
consecutive sprints. Each is timeboxed, usually to between one week and a calendar
month. A recent survey found that the most common sprint length is two weeks. During
this time the team does everything to take a small set of features from idea to coded
and tested functionality. 
&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;The first activity of each sprint is a &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/sprint-planning-meeting"&gt;&lt;font size="2"&gt;sprint
planning meeting&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;. During this meeting the product owner
and team talk about the highest-priority items on the &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/product-owner"&gt;&lt;font size="2"&gt;product
backlog&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;. Team members figure out how many items they can
commit to and then create a &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/sprint-backlog"&gt;&lt;font size="2"&gt;sprint
backlog&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, which is a list of the tasks to perform during
the sprint.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;On each day of the sprint, a &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/daily-scrum"&gt;&lt;font size="2"&gt;daily
scrum meeting&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; is attended by all team members, including
the ScrumMaster and the product owner. This meeting is timeboxed to no more than fifteen
minutes. During that time, team members share what they worked on the prior day, will
work on today, and identify any impediments to progress. Daily scrums serve to synchronize
the work of team members as they discuss the work of the sprint.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;At the end of a sprint, the teams conducts a &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/sprint-review-meeting"&gt;&lt;font size="2"&gt;sprint
review&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;. During the sprint review, the team demonstrates
the functionality added during the sprint. The goal of this meeting is to get feedback
from the product owner or any users or other stakeholders who have been invited to
the review. This feedback may result in changes to the freshly delivered functionality.
But it may just as likely result in revising or adding items to the product backlog.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;Another activity performed at the end of each sprint is the &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/sprint-retrospective"&gt;&lt;font size="2"&gt;sprint
retrospective&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;. The whole team participates in this meeting,
including the ScrumMaster and product owner. The meeting is an opportunity to reflect
on the sprint that is ending and identify opportunities to improve in the new sprint.&lt;/font&gt; 
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h5&gt;What are the main artifacts of a Scrum project?
&lt;/h5&gt;
&lt;p&gt;
&lt;font size="2"&gt;The primary artifact of a Scrum project is, of course,&lt;strong&gt; the
product itself&lt;/strong&gt;. The team is expected to bring the product or system to a
potentially shippable state at the end of each sprint.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;The &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/product-backlog"&gt;&lt;font size="2"&gt;product
backlog&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; is a complete list of the functionality that remains
to be added to the product. The product backlog is prioritized by the &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/product-owner"&gt;&lt;font size="2"&gt;product
owner&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; so that the team always works on the most valuable
features first. The most popular and successful way to create a product backlog is
to populate it with &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/topics/user-stories"&gt;&lt;font size="2"&gt;user
stories&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, which are short descriptions of functionality described
from the perspective of a user or customer. 
&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;On the first day of a sprint and during the &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/sprint-planning-meeting"&gt;&lt;font size="2"&gt;sprint
planning meeting&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, team members create the &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/sprint-backlog"&gt;&lt;font size="2"&gt;sprint
backlog&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;. The sprint backlog can be thought of as the team’s
to-do list for the sprint. Whereas a product backlog is a list of features to be built
(often written in the form of user stories), the sprint backlog is the list of tasks
the team needs to perform in order to deliver the functionality they committed to
deliver during the sprint.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;Two other primary artifacts are the sprint &lt;strong&gt;burndown chart and &lt;/strong&gt;&lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/release-burndown"&gt;&lt;font size="2"&gt;&lt;strong&gt;release
burndown chart&lt;/strong&gt;&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;. Burndown charts show the amount
of work remaining either in a sprint or a release. They are a very effective tool
for determining at a glance whether a sprint or release is on schedule to have all
planned work finished by the desired date.&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;&lt;/font&gt;&amp;nbsp; 
&lt;h5&gt;What are the main roles on a Scrum team?
&lt;/h5&gt;
&lt;p&gt;
&lt;font size="2"&gt;Even if you are new to Scrum, you may have heard of a role called &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/scrummaster"&gt;&lt;font size="2"&gt;&lt;strong&gt;ScrumMaster&lt;/strong&gt;&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;&lt;strong&gt;.&lt;/strong&gt; The
ScrumMaster is the team’s coach and helps team members achieve their highest level
of performance. A ScrumMaster differs from a project manager in many key ways, including
that the ScrumMaster does not provide day-to-day direction to the team and does not
assign tasks to individuals. A good ScrumMaster shelters the team from outside distractions,
allowing team members to focus maniacally during the sprint on the goal they have
selected.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;While the ScrumMaster focuses on helping the team be the best that
it can be, the &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/product-owner"&gt;&lt;font size="2"&gt;&lt;strong&gt;product
owner&lt;/strong&gt;&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; works to direct the team at the right goal.
The product owner does this by creating a compelling vision of the product and then
conveying that vision to the team through the &lt;/font&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/product-backlog"&gt;&lt;font size="2"&gt;product
backlog&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;The product owner is responsible for ensuring that the product backlog
remains prioritized as more is learned about the system being built, its users, the
team, and so on.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;The third and final role on a &lt;strong&gt;Scrum project&lt;/strong&gt; is the
team itself. Although individuals on a Scrum team may come to that team with various
job titles, while on the team those titles are insignificant. Each person contributes
in whatever ways they best can to complete the work of each sprint. This does not
mean that a tester will be expected to rearchitect the system; individuals will spend
most (and sometimes all) of their time working in whatever discipline they worked
before adopting Scrum. But on a Scrum team, individuals are expected to work beyond
their preferred disciplines whenever doing so would be for the good of the team.&lt;br&gt;
&lt;/font&gt; 
&lt;p&gt;
&lt;font color="#008000" size="2"&gt;One convenient way to think of the interlocking nature
of these three roles is as a race car. The team is the car itself, ready to speed
along in whatever direction it is pointed. The product owner is the driver, making
sure that the car is always going in the right direction. The ScrumMaster is the chief
mechanic, keeping the car well-tuned and performing at its best.&lt;/font&gt; 
&lt;p&gt;
&lt;br&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&lt;a title="http://xprogramming.com/xpmag/whatisxp" href="http://xprogramming.com/xpmag/whatisxp"&gt;http://xprogramming.com/xpmag/whatisxp&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/AgileXPScrum_9230/image_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blog.ilovedoudou.com/content/binary/WindowsLiveWriter/AgileXPScrum_9230/image_thumb.png" width="539" height="403"&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;font size="2"&gt;Extreme Programming is a discipline of software development based on
values of simplicity, communication, feedback, and courage. It works by bringing the
whole team together in the presence of simple practices, with enough feedback to enable
the team to see where they are and to tune the practices to their unique situation.&lt;/font&gt; 
&lt;p&gt;
&lt;font size="2"&gt;
&lt;br&gt;
In Extreme Programming, every contributor to the project is an integral part of the
“&lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#whole"&gt;&lt;font size="2"&gt;Whole
Team&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;“. The team forms around a business representative called
“the Customer”, who sits with the team and works with them daily.&lt;/font&gt; 
&lt;ul&gt;
&lt;li&gt;
&lt;font size="2"&gt;Core Practices: &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#whole"&gt;&lt;font size="2"&gt;Whole
Team&lt;/font&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;font size="2"&gt;Extreme Programming teams use a simple form of planning and tracking
to decide what should be done next and to predict when the project will be done. Focused
on business value, the team produces the software in a series of small fully-integrated
releases that pass all the tests the Customer has defined.&lt;/font&gt; 
&lt;ul&gt;
&lt;li&gt;
&lt;font size="2"&gt;Core Practices: &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#planning"&gt;&lt;font size="2"&gt;Planning
Game&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#small"&gt;&lt;font size="2"&gt;Small
Releases&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#customer"&gt;&lt;font size="2"&gt;Customer
Tests&lt;/font&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;font size="2"&gt;Extreme Programmers work together in pairs and as a group, with simple
design and obsessively tested code, improving the design continually to keep it always
just right for the current needs.&lt;/font&gt; 
&lt;ul&gt;
&lt;li&gt;
&lt;font size="2"&gt;Core Practices: &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#simple"&gt;&lt;font size="2"&gt;Simple
Design&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#pair"&gt;&lt;font size="2"&gt;Pair
Programming&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#test"&gt;&lt;font size="2"&gt;Test-Driven
Development&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#design"&gt;&lt;font size="2"&gt;Design
Improvement&lt;/font&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;font size="2"&gt;The Extreme Programming team keeps the system integrated and running
all the time. The programmers write all production code in pairs, and all work together
all the time. They code in a consistent style so that everyone can understand and
improve all the code as needed.&lt;/font&gt; 
&lt;ul&gt;
&lt;li&gt;
&lt;font size="2"&gt;Core Practices: &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#continuous"&gt;&lt;font size="2"&gt;Continuous
Integration&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#collective"&gt;&lt;font size="2"&gt;Collective
Code Ownership&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#coding"&gt;&lt;font size="2"&gt;Coding
Standard&lt;/font&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;font size="2"&gt;The Extreme Programming team shares a common and simple picture of
what the system looks like. Everyone works at a pace that can be sustained indefinitely.&lt;/font&gt; 
&lt;ul&gt;
&lt;li&gt;
&lt;font size="2"&gt;Core Practices: &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#metaphor"&gt;&lt;font size="2"&gt;Metaphor&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;a href="http://xprogramming.com/xpmag/whatisxp.htm#sustainable"&gt;&lt;font size="2"&gt;Sustainable
Pace&lt;/font&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;img width="0" height="0" src="http://blog.ilovedoudou.com/aggbug.ashx?id=dff1dbfd-42df-47b5-875f-e308fa945828" /&gt;</description>
      <comments>http://blog.ilovedoudou.com/CommentView,guid,dff1dbfd-42df-47b5-875f-e308fa945828.aspx</comments>
      <category>Design / Scrum</category>
    </item>
    <item>
      <trackback:ping>http://blog.ilovedoudou.com/Trackback.aspx?guid=bbc59254-c496-48dd-9d71-7fb3a41eb78e</trackback:ping>
      <pingback:server>http://blog.ilovedoudou.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.ilovedoudou.com/PermaLink,guid,bbc59254-c496-48dd-9d71-7fb3a41eb78e.aspx</pingback:target>
      <dc:creator>Kevin Mocha</dc:creator>
      <wfw:comment>http://blog.ilovedoudou.com/CommentView,guid,bbc59254-c496-48dd-9d71-7fb3a41eb78e.aspx</wfw:comment>
      <wfw:commentRss>http://blog.ilovedoudou.com/SyndicationService.asmx/GetEntryCommentsRss?guid=bbc59254-c496-48dd-9d71-7fb3a41eb78e</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <h2>Chapter2 New Management Responsibilities
</h2>
        <h3>ScrumMaster
</h3>
        <p>
The <strong>ScrumMaster</strong> fills the position normally occupied by the project
manager. I’ve taken the liberty of redefining this role. While the traditional project
manager is responsible for defining and managing the work, the ScrumMaster is responsible
for managing the Scrum process. To put it simply, ScrumMasters make Scrum work. 
</p>
        <p>
The Scrum process defines practices, meetings, artifacts, and terminology. The ScrumMaster
is responsible for knowing these and knowing how to apply them correctly. Scrum can
be applied incorrectly, as we will see. But because the ScrumMaster has a clear understanding
of how Scrum works and has experience applying Scrum, the ScrumMaster knows how to
guide a Scrum project through the shoals of complexity. 
</p>
        <p>
Like sheep in an open field, individuals in a project tend to stray. The ScrumMaster’s
job is to keep the flock together. In fact, I often compare a ScrumMaster to a sheepdog,
responsible for keeping the flock together and the wolves away. 
</p>
        <p>
  
</p>
        <h3>Product Owner
</h3>
        <p>
The Product Owner’s focus is return on investment (ROI). The Product Backlog provides
the Product Owner with a powerful tool for directing the project, Sprint by Sprint,
to provide the greatest value and ROI to the organization. The Product Owner uses
the Product Backlog to give the highest priority to the requirements that are of highest
value to the business, to insert nonfunctional requirements that lead to opportunistic
releases and implementations of functionality, and to constantly adjust the product
in response to changing business conditions, including new competitive offerings. 
</p>
        <p>
  
</p>
        <h3>Team
</h3>
        <p>
In a huge reversal of ordinary management practices, Scrum makes the team responsible
for managing development activities. Traditionally, the project manager tells the
team what to do and manages its work. In Scrum, however, the team selects the work
that it will do during each Sprint. After that initial selection is made, it is up
to the team to figure out how to do the work at hand. The team decides how to turn
the selected requirements into an increment of potentially shippable product functionality.
The team devises its own tasks and figures out who will do them. 
</p>
        <p>
The pressure inherent in a 30-day Sprint, the commitment the team members make to
each other to accomplish something, and the principles of self- organization and cross-functional
responsibilities all help the team successfully fulfill this responsibility. The team
unfailingly rises to the occasion and manages itself. When anyone outside the team
tries to tell the team what to do, more damage than good usually results. I don’t
know why Scrum’s self-organization works so well, but that hardly matters. After all,
I know of hundreds of successful Scrum projects encompassing thousands of successful
Sprints. <img width="0" height="0" src="http://blog.ilovedoudou.com/aggbug.ashx?id=bbc59254-c496-48dd-9d71-7fb3a41eb78e" /></p>
      </body>
      <title>Chapter2: Reading Notes of &amp;lt;&amp;lt;Agile Project Management with Scrum&amp;gt;&amp;gt;</title>
      <guid isPermaLink="false">http://blog.ilovedoudou.com/PermaLink,guid,bbc59254-c496-48dd-9d71-7fb3a41eb78e.aspx</guid>
      <link>http://blog.ilovedoudou.com/PermaLink,guid,bbc59254-c496-48dd-9d71-7fb3a41eb78e.aspx</link>
      <pubDate>Wed, 17 Oct 2007 13:55:08 GMT</pubDate>
      <description>&lt;h2&gt;Chapter2 New Management Responsibilities
&lt;/h2&gt;
&lt;h3&gt;ScrumMaster
&lt;/h3&gt;
&lt;p&gt;
The &lt;strong&gt;ScrumMaster&lt;/strong&gt; fills the position normally occupied by the project
manager. I’ve taken the liberty of redefining this role. While the traditional project
manager is responsible for defining and managing the work, the ScrumMaster is responsible
for managing the Scrum process. To put it simply, ScrumMasters make Scrum work. 
&lt;p&gt;
The Scrum process defines practices, meetings, artifacts, and terminology. The ScrumMaster
is responsible for knowing these and knowing how to apply them correctly. Scrum can
be applied incorrectly, as we will see. But because the ScrumMaster has a clear understanding
of how Scrum works and has experience applying Scrum, the ScrumMaster knows how to
guide a Scrum project through the shoals of complexity. 
&lt;p&gt;
Like sheep in an open field, individuals in a project tend to stray. The ScrumMaster’s
job is to keep the flock together. In fact, I often compare a ScrumMaster to a sheepdog,
responsible for keeping the flock together and the wolves away. 
&lt;p&gt;
&amp;nbsp; 
&lt;h3&gt;Product Owner
&lt;/h3&gt;
&lt;p&gt;
The Product Owner’s focus is return on investment (ROI). The Product Backlog provides
the Product Owner with a powerful tool for directing the project, Sprint by Sprint,
to provide the greatest value and ROI to the organization. The Product Owner uses
the Product Backlog to give the highest priority to the requirements that are of highest
value to the business, to insert nonfunctional requirements that lead to opportunistic
releases and implementations of functionality, and to constantly adjust the product
in response to changing business conditions, including new competitive offerings. 
&lt;p&gt;
&amp;nbsp; 
&lt;h3&gt;Team
&lt;/h3&gt;
&lt;p&gt;
In a huge reversal of ordinary management practices, Scrum makes the team responsible
for managing development activities. Traditionally, the project manager tells the
team what to do and manages its work. In Scrum, however, the team selects the work
that it will do during each Sprint. After that initial selection is made, it is up
to the team to figure out how to do the work at hand. The team decides how to turn
the selected requirements into an increment of potentially shippable product functionality.
The team devises its own tasks and figures out who will do them. 
&lt;p&gt;
The pressure inherent in a 30-day Sprint, the commitment the team members make to
each other to accomplish something, and the principles of self- organization and cross-functional
responsibilities all help the team successfully fulfill this responsibility. The team
unfailingly rises to the occasion and manages itself. When anyone outside the team
tries to tell the team what to do, more damage than good usually results. I don’t
know why Scrum’s self-organization works so well, but that hardly matters. After all,
I know of hundreds of successful Scrum projects encompassing thousands of successful
Sprints. &lt;img width="0" height="0" src="http://blog.ilovedoudou.com/aggbug.ashx?id=bbc59254-c496-48dd-9d71-7fb3a41eb78e" /&gt;</description>
      <comments>http://blog.ilovedoudou.com/CommentView,guid,bbc59254-c496-48dd-9d71-7fb3a41eb78e.aspx</comments>
      <category>Design / Scrum</category>
    </item>
    <item>
      <trackback:ping>http://blog.ilovedoudou.com/Trackback.aspx?guid=15e1fecd-0352-4268-9cf9-a31e1cf035e4</trackback:ping>
      <pingback:server>http://blog.ilovedoudou.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.ilovedoudou.com/PermaLink,guid,15e1fecd-0352-4268-9cf9-a31e1cf035e4.aspx</pingback:target>
      <dc:creator>Kevin Mocha</dc:creator>
      <wfw:comment>http://blog.ilovedoudou.com/CommentView,guid,15e1fecd-0352-4268-9cf9-a31e1cf035e4.aspx</wfw:comment>
      <wfw:commentRss>http://blog.ilovedoudou.com/SyndicationService.asmx/GetEntryCommentsRss?guid=15e1fecd-0352-4268-9cf9-a31e1cf035e4</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <h2>
          <u>Chapter 1:</u>
        </h2>
        <p>
There are three legs that hold up every implementation of empirical process control: <strong><i>visibility</i>, <i>inspection</i>,
and <i>adaptation</i>.</strong></p>
        <p>
I've limited my enumeration of complexity in software development to the three most
significant dimensions: <strong>requirements, technology, and people.</strong></p>
        <p>
          <a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_2.png" atomicselection="true">
            <img height="311" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_2.png" width="508" />
          </a>
        </p>
        <p>
The skeleton operates this way: At the start of an iteration, the team reviews what
it must do. It then selects what it believes it can turn into an increment of potentially
shippable functionality by the end of the iteration. The team is then left alone to
make its best effort for the rest of the iteration. At the end of the iteration, the
team presents the increment of functionality it built so that the stakeholders can
inspect the functionality and timely adaptations to the project can be made. 
</p>
        <p>
The heart of Scrum lies in the iteration. The team takes a look at the requirements,
considers the available technology, and evaluates its own skills and capabilities.
It then collectively determines how to build the functionality, modifying its approach
daily as it encounters new complexities, difficulties, and surprises. The team figures
out what needs to be done and selects the best way to do it. This creative process
is the heart of the Scrum's productivity. 
</p>
        <p>
There are only three Scrum roles: <strong>the Product Owner, the Team, and the ScrumMaster.           </strong><strong>"Ham
and Eggs!"</strong></p>
        <p>
 
</p>
        <strong>
        </strong>
        <p>
          <a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_1.png" atomicselection="true">
            <img height="623" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_1.png" width="815" />
          </a>
        </p>
        <ol>
          <li>
            <strong>Monthly Sprint planning meeting</strong>
          </li>
          <li>
            <strong>Daily Scrum meeting </strong>
          </li>
          <li>
            <strong>monthly Sprint review meeting</strong>
          </li>
          <li>
            <strong>Sprint retrospective meeting</strong>
          </li>
        </ol>
        <p>
          <strong>
            <a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_3.png" atomicselection="true">
              <img height="676" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_3.png" width="765" />
            </a>
          </strong>
        </p>
        <p>
          <strong>
          </strong> 
</p>
        <p>
          <a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_4.png" atomicselection="true">
            <img height="399" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_4.png" width="547" />
          </a>
        </p>
        <p>
          <strong>
            <a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_5.png" atomicselection="true">
              <img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="813" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_5.png" width="767" border="0" />
            </a>
          </strong>
        </p>
        <p>
Tasks should be divided so that each takes roughly 4 to 16 hours to finish. Tasks
longer than 4 to 16 hours are considered mere placeholders for tasks that haven't
yet been appropriately defined.
</p>
        <img width="0" height="0" src="http://blog.ilovedoudou.com/aggbug.ashx?id=15e1fecd-0352-4268-9cf9-a31e1cf035e4" />
      </body>
      <title>Chapter1: Reading Notes of &amp;lt;&amp;lt;Agile Project Management with Scrum &amp;gt;&amp;gt;</title>
      <guid isPermaLink="false">http://blog.ilovedoudou.com/PermaLink,guid,15e1fecd-0352-4268-9cf9-a31e1cf035e4.aspx</guid>
      <link>http://blog.ilovedoudou.com/PermaLink,guid,15e1fecd-0352-4268-9cf9-a31e1cf035e4.aspx</link>
      <pubDate>Mon, 15 Oct 2007 22:20:32 GMT</pubDate>
      <description>&lt;h2&gt;&lt;u&gt;Chapter 1:&lt;/u&gt;
&lt;/h2&gt;
&lt;p&gt;
There are three legs that hold up every implementation of empirical process control: &lt;strong&gt;&lt;i&gt;visibility&lt;/i&gt;, &lt;i&gt;inspection&lt;/i&gt;,
and &lt;i&gt;adaptation&lt;/i&gt;.&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
I've limited my enumeration of complexity in software development to the three most
significant dimensions: &lt;strong&gt;requirements, technology, and people.&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_2.png" atomicselection="true"&gt;&lt;img height="311" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_2.png" width="508"&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
The skeleton operates this way: At the start of an iteration, the team reviews what
it must do. It then selects what it believes it can turn into an increment of potentially
shippable functionality by the end of the iteration. The team is then left alone to
make its best effort for the rest of the iteration. At the end of the iteration, the
team presents the increment of functionality it built so that the stakeholders can
inspect the functionality and timely adaptations to the project can be made. 
&lt;p&gt;
The heart of Scrum lies in the iteration. The team takes a look at the requirements,
considers the available technology, and evaluates its own skills and capabilities.
It then collectively determines how to build the functionality, modifying its approach
daily as it encounters new complexities, difficulties, and surprises. The team figures
out what needs to be done and selects the best way to do it. This creative process
is the heart of the Scrum's productivity. 
&lt;p&gt;
There are only three Scrum roles: &lt;strong&gt;the Product Owner, the Team, and the ScrumMaster.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/strong&gt;&lt;strong&gt;"Ham
and Eggs!"&lt;/strong&gt; 
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;strong&gt;&lt;/strong&gt; 
&lt;p&gt;
&lt;a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_1.png" atomicselection="true"&gt;&lt;img height="623" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_1.png" width="815"&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Monthly Sprint planning meeting&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Daily Scrum meeting &lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;monthly Sprint review meeting&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sprint retrospective meeting&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
&lt;strong&gt;&lt;a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_3.png" atomicselection="true"&gt;&lt;img height="676" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_3.png" width="765"&gt;&lt;/a&gt; &lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;/strong&gt;&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_4.png" atomicselection="true"&gt;&lt;img height="399" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_4.png" width="547"&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;a href="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_5.png" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="813" alt="image" src="http://blog.lulutech.com/content/binary/WindowsLiveWriter/ReadingNotesofAgileProjectManagementwith_1013C/image_thumb_5.png" width="767" border="0"&gt;&lt;/a&gt; &lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Tasks should be divided so that each takes roughly 4 to 16 hours to finish. Tasks
longer than 4 to 16 hours are considered mere placeholders for tasks that haven't
yet been appropriately defined.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.ilovedoudou.com/aggbug.ashx?id=15e1fecd-0352-4268-9cf9-a31e1cf035e4" /&gt;</description>
      <comments>http://blog.ilovedoudou.com/CommentView,guid,15e1fecd-0352-4268-9cf9-a31e1cf035e4.aspx</comments>
      <category>Design;Design / Scrum</category>
    </item>
  </channel>
</rss>