<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" 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:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Scrum</title>
        <link>http://agilior.pt/blogs/bruno.camara/category/4.aspx</link>
        <description>Scrum</description>
        <language>en-US</language>
        <copyright>BFC</copyright>
        <managingEditor>bruno.camara@agilior.pt</managingEditor>
        <generator>Subtext Version 1.9.0.27</generator>
        <item>
            <title>Scrum and Kaizen</title>
            <link>http://agilior.pt/blogs/bruno.camara/archive/2007/04/17/578.aspx</link>
            <description>&lt;p&gt;&lt;/p&gt; &lt;p&gt;One of my favourite interests is to understand the field of software development. Since my degree that I try to understand why software development process is so difficult and why the IT industry is so immature. I, and most of my best college friends, decided to graduate in Engineer, but I was the only guy who decided to degree in Computer Science and Software Engineering (in fact all of us were studying in the "A area", which was the Health Area, however none of us pretended to be a physician). All the other guys decided by Mechanical and Civil Engineering. Thirteen years later we are still seeing each other (true friends are for life). Sometimes our conversations are reflections about our experiences, and we discuss problems about the development process in each area. &lt;/p&gt; &lt;p&gt;&lt;br /&gt;One of this guys talked to me a few weeks ago about &lt;a href="http://en.wikipedia.org/wiki/Kaizen"&gt;Kaizen&lt;/a&gt; and the adoption of Kaizen in the organization he works. Kaizen is a japanese word and means "continuous improvement". He told me that Toyota is known to have implemented Kaizen. Since these day I began my investigation on Kaizen and looking for implementations in software companies. I've bought from Amazon the book &lt;a href="http://www.amazon.com/Toyota-Way-Jeffrey-Liker/dp/0071392319/ref=pd_bbs_sr_1/103-7740387-9147800?ie=UTF8&amp;amp;s=books&amp;amp;qid=1176849440&amp;amp;sr=8-1"&gt;"The Toyota Way"&lt;/a&gt;. It says:&lt;br /&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;"The Japanese term for continuous improvement is Kaizen and is the process of making incremental improvements, no matter how small, and achieving the lean goal of eliminating all waste that adds cost without adding to value. Kaizen teaches individual skills to work effectively in small groups, solving problems, documenting and improving processes, collecting and analyzing data and self-managing within a peer group. It pushes the decision making (or proposal making) down to the workers and require open discussions and a group consensus before implementing any decisions."&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;br /&gt;So, using this definition, do I remember of any software methodology that follows the Kaizen definition? Yes, I remember. I think, in general Agile Methodologies follow Kaizen, but in particular there are two methodologies/frameworks that fit perfectly in Kaizen philosophy: &lt;a href="http://www.controlchaos.com"&gt;Scrum&lt;/a&gt; and LSD (no, it is not the drug, but &lt;a href="http://www.poppendieck.com/"&gt;Lean Software Development&lt;/a&gt;).&lt;br /&gt;&lt;/p&gt; &lt;p&gt;Let's follow the Kaizen definition&lt;br /&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;em&gt;"...is the process of making incremental improvements..."&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;In Scrum framework, the Sprint finish with the Sprint Retrospective Meeting, in which everybody enumerate what wents well and identify improvements to be made. &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;br /&gt;&lt;em&gt;"...and achieving the lean goal of eliminating all waste that adds cost without adding values..."&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Agile methodologies conducted to the &lt;a href="http://agilemanifesto.org/"&gt;Agile Manifesto&lt;/a&gt;. One of the mantras of this agile manifesto is &lt;em&gt;"Working software over comprehensive documentation"&lt;/em&gt;. In my opinion every Agile mind has the goal of eliminating waste and not include anything that will not be used by our customers (excessive documentation is waste). LSD principles are based on Lean Manufacturing and in LSD, the statement Eliminate Waste is a rule.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;br /&gt;&lt;em&gt;"...teaches individual skill to work effectively in small groups..."&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Agile Methodologies are only possible with skilled people. Again, Scrum defines small teams (7 elements) and every element in the team must be skilled.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;br /&gt;&lt;em&gt;"...collecting and analyzing data..."&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;In Scrum, we collect and analyze date every single day. With Sprint Backlog and The Sprint Burndown Chart we have a a really sense of the project state&lt;br /&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;em&gt;"...self managing within a peer group. It pushes the decision making down to the workers..."&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;In Scrum, the Team make the decisions and is self-organized and self-managed.&lt;br /&gt;&lt;/p&gt; &lt;p&gt;As you can see, there are very similarities with Scrum and Kaizen philosophy. Right now I am studying Kaizen and trying to understand how can we implement it in a software company. I know that the development process of a car is different from software development. The software does not follow the Newton Laws and there is no fixed gravity in software. However, there is an Inertia in software, and this inertia is the Organizational Inertia made by People. Do you think the Portuguese culture follow this Continuous Improvement philosophy: in my opinion only a minority try this approach of Continuous Improvement....NO NO NO...sorry I'm wrong. In fact it is the majority of Portuguese people: &lt;strong&gt;better&lt;/strong&gt; car, &lt;strong&gt;better&lt;/strong&gt; house, &lt;strong&gt;better&lt;/strong&gt; status, etc. &lt;/p&gt;&lt;img src="http://agilior.pt/blogs/bruno.camara/aggbug/578.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>BFC</dc:creator>
            <guid>http://agilior.pt/blogs/bruno.camara/archive/2007/04/17/578.aspx</guid>
            <pubDate>Tue, 17 Apr 2007 20:48:13 GMT</pubDate>
            <wfw:comment>http://agilior.pt/blogs/bruno.camara/comments/578.aspx</wfw:comment>
            <comments>http://agilior.pt/blogs/bruno.camara/archive/2007/04/17/578.aspx#feedback</comments>
            <slash:comments>257</slash:comments>
            <wfw:commentRss>http://agilior.pt/blogs/bruno.camara/comments/commentRss/578.aspx</wfw:commentRss>
        </item>
        <item>
            <title>A retrospective of using Scrum in the last 8 months</title>
            <link>http://agilior.pt/blogs/bruno.camara/archive/2006/11/23/37.aspx</link>
            <description>&lt;p&gt;In one of our projects we are using &lt;a href="http://www.controlchaos.com/"&gt;Scrum&lt;/a&gt; and today we finished the 8th Sprint. The team has 8 elements, 6 of them in full-time. In the beginning, at Sprint 1, we started with 3 developers. No one had experience using Scrum, but we all believed that Scrum could help us manage our project. Our customer also had the receptivity to new ideas and promptly accepted to use Scrum. Since then, it has been a great journey of learning Scrum in the field, where the "battle" happens. &lt;/p&gt;
&lt;p&gt;First of all, let me say that this project is quite complex because it consists of developing a platform that must replace an existent one. Due to the dimension of the problem, we couldn't do a Big Bang approach, which means every design decision must coexist with the existent platform. I will make a retrospective in some aspects of Scrum and try to figure out what has been good and bad. Let's begin. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Daily Scrums&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;In Scrum theory the daily scrum must be the first activity of the day, everyday at the same hour, at the same place. The first change we had to made was to shift the daily scrum to the middle of the day, as opposed to first thing in the morning. Basically, it was impossible to have all the elements of the team at 9:00 AM or 10:00 AM.  Currently, the bell rings at 12:00 and we start our stand-up meeting in a small room. &lt;/p&gt;
&lt;p&gt;The duration of the meeting must be 15 minutes. We must answer to 3 questions: What did I do yesterday, What I'll do today, and what are my impediments. When the team grew, we had some difficulty not exceeding the 15 minutes. In fact, we exceeded that time in many occasions because there was a great temptation of starting discussions in the daily scrum. We are better now and, if we feel that there is something to discuss, we wait until the end of the meeting and the guys that want to discuss stay in the room. &lt;/p&gt;
&lt;p&gt;The daily scrum is something religious for us. We all know the state of the project. We all know what each team member is doing. We all know the problems we are facing. The daily scrum is absolutely essential. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The Sprint Planing Meeting&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;Every sprint begins with the Sprint Planning Meeting. First, we and the product owner choose the items we want to include in the sprint. Then, we start to plan our sprint identifying the Sprint Backlog Items to be made. In the Scrum theory it's said that the tasks must be estimated to have the granularity of 4-16 hours. We found difficult to do that in some features. To achieve that estimation precision we have to do in-depth analysis, which can't be made in half a day. What we do is estimate the feature in days, and the preliminary tasks in hours. Later, during the sprint, when we have more information, we split the feature in smaller tasks. &lt;/p&gt;
&lt;p&gt;Sometimes we wonder the time wasted if in the beginning of the project we elaborate an in-depth planning, with tasks, dependencies, resources, etc. Wow, it certainly seems scary :-) &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The Sprint Backlog Items&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;In my opinion the Sprint Backlog Item is the most important artifact in Scrum. However, this is only true if the Sprint Backlog is up-to-date and reflects the reality. There is some impedance in some guys to update the Sprint Backlog daily. I had to point the finger sometimes, but we are getting better. We're using Visual Studio Team System with the &lt;a href="http://www.scrumforteamsystem.com/"&gt;Conchango plugin&lt;/a&gt; to manage the work items. My first activity in the day is to watch the Sprint Burndown Chart to evaluate the state of the project. This way is quite simple to spot the guys that aren't updating the sprint Backlog. &lt;/p&gt;
&lt;p&gt;By the way, the plug-in from Conchango is certainly useful but it could be better. For instance, I would like to have the global vision per day, and per work item, in one sheet. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sprint Review&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We finish our sprints making a demo to the product owner of the features included in the sprint. In the firsts sprints we didn't use powerpoint. Now, before the demo begins, we present a powerpoint with a few slides to remember all attendees in the room the objectives of the sprint, what we can accomplish and what we can't. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The Retrospective Meeting&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;We all love this meeting. We are absolutely honest with each other. There are no ceremonies. If I have to say "in this Sprint you were a chicken", I'll say it. Total transparency is our motto. &lt;/p&gt;
&lt;p&gt;As a conclusion I must say that I am a big fan of Scrum. However, don't be eluded: there are no perfect methodology. By the way, we are late in the project (which can't be attributed to Scrum use), but I think that there is a big difference in this lateness: everyone knows that we are late, &lt;font face="Arial"&gt;and everyone knows it when the lateness shows, not only when the project is halfway or almost finished. &lt;/font&gt;Scrum is transparency!&lt;/p&gt;&lt;img src="http://agilior.pt/blogs/bruno.camara/aggbug/37.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>BFC</dc:creator>
            <guid>http://agilior.pt/blogs/bruno.camara/archive/2006/11/23/37.aspx</guid>
            <pubDate>Thu, 23 Nov 2006 21:03:52 GMT</pubDate>
            <wfw:comment>http://agilior.pt/blogs/bruno.camara/comments/37.aspx</wfw:comment>
            <comments>http://agilior.pt/blogs/bruno.camara/archive/2006/11/23/37.aspx#feedback</comments>
            <slash:comments>95</slash:comments>
            <wfw:commentRss>http://agilior.pt/blogs/bruno.camara/comments/commentRss/37.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>