<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>From the Editor of Methods &#38; Tools &#187; Quotes</title>
	<atom:link href="http://blog.martinig.ch/category/quotes/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.martinig.ch</link>
	<description></description>
	<lastBuildDate>Fri, 25 Jun 2010 13:16:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Agile Software Development Adoption Obstacles</title>
		<link>http://blog.martinig.ch/quotes/agile-software-development-adoption-obstacles/</link>
		<comments>http://blog.martinig.ch/quotes/agile-software-development-adoption-obstacles/#comments</comments>
		<pubDate>Mon, 31 May 2010 12:46:43 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=554</guid>
		<description><![CDATA[I have just started reading the book &#8220;Succeeding with Agile&#8221; by Mike Cohn. Here are some quotes from the initial pages that deal with the difficulties of transitioning to Agile.
&#8220;I&#8217;ve personally witnessed several failed agile adoptions that could have been prevented. The first was in a company that had spent more than a million dollars [...]]]></description>
			<content:encoded><![CDATA[<p>I have just started reading the book &#8220;Succeeding with Agile&#8221; by Mike Cohn. Here are some quotes from the initial pages that deal with the difficulties of transitioning to Agile.</p>
<p>&#8220;I&#8217;ve personally witnessed several failed agile adoptions that could have been prevented. The first was in a company that had spent more than a million dollars on its transition effort. Executives brought in outside trainers and coaches and hired five people into an &#8220;Agile Office&#8221; to which new Scrum teams could turn for advice. The company&#8217;s failure was the result of thinking that the implications of adopting Scrum would be restricted to only the development organization. The executives who initiated this transition thought that educating and supporting developers would be sufficient. They failed to consider how Scrum would touch the work of salespeople, the marketing group, and even the finance department. Without changes to these areas, organizational gravity pulled the company back where it had started.&#8221;<span id="more-554"></span></p>
<p>&#8220;Perhaps you&#8217;ve read a book, on Extreme Programming and have decided that is the right approach for your company. Or maybe you attended a Certified ScrumMaster training course and think Scrum sounds good. Or maybe you read a book on a different agile process, and it sounds perfect for your organization.<br />
In all likelihood, you&#8217;re wrong.<br />
None of these processes as described by their originators is perfect for your organization. Any may be a good starting point, but you will need to tailor the process to more precisely fit the unique circumstances of your organization, individuals, and industry.&#8221;</p>
<p>&#8220;With most organizational change, after someone figures out the right or best way to do something, that way of doing it is captured as a &#8221; best practice&#8221; and shared with everyone else. For some types of work, collecting and reusing best practices is a tremendous aid to the change effort. An organization that is selling a product to a new type of customer may, for example, capture best practices for overcoming objections from potential customers. When transitioning to Scrum, however, collecting best practices can be dangerous.&#8221;</p>
<p>What is interesting for me in these quotes is the emphasis on Agile being a process and not a technique. You can&#8217;t just apply existing recipes to your organization and think that you are &#8220;done&#8221;. You have to think on how you can spread the spirit of Agile in your organization and, when you think you are &#8220;done&#8221;, continue to try to improve your process every day. The same message is conveyed in a Karl Scotland article about Kanban that I am just reviewing and that will be included in the Summer 2010 issue of Methods &amp; Tools. Another very interesting article by Yves Yves Hanoulle on Core Protocols will give you tools to support the improvement process.</p>
<p>Reference: &#8220;Succeeding With Agile&#8221;, Mike Cohn, Addison-Wesley, 463 pages, IBSN 978-0-321-57936-3</p>
<p>Methods &amp; Tools articles on Agile adoption</p>
<p><a href="http://www.methodsandtools.com/archive/archive.php?id=41">Adopting an Agile Method</a></p>
<p><a href="http://www.methodsandtools.com/archive/archive.php?id=43">Agile Delivery at British Telecom</a></p>
<p><a href="http://www.methodsandtools.com/archive/archive.php?id=70">Creating an Agile Environment</a></p>
<p><a href="http://www.methodsandtools.com/archive/archive.php?id=96">Agile Coaching Tips</a></p>
<p><a href="http://www.methodsandtools.com/archive/archive.php?id=101">Five Symptoms of Mechanical Agile</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/agile-software-development-adoption-obstacles/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lean: Results are not the Point</title>
		<link>http://blog.martinig.ch/quotes/lean-results-are-not-the-point/</link>
		<comments>http://blog.martinig.ch/quotes/lean-results-are-not-the-point/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 09:43:55 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[lean]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=500</guid>
		<description><![CDATA[I have just finished reading the great book &#8220;Leading Lean Software Development&#8221; by Mary and Tom Poppendieck and I wanted to share with you two quotes excerpted from it.
[...] I started a conversation with the question that had been bothering me: &#8220;How do you reconcile the lean view that tests are waste with the need [...]]]></description>
			<content:encoded><![CDATA[<p>I have just finished reading the great book &#8220;Leading Lean Software Development&#8221; by Mary and Tom Poppendieck and I wanted to share with you two quotes excerpted from it.</p>
<p>[...] I started a conversation with the question that had been bothering me: &#8220;How do you reconcile the lean view that tests are waste with the need for tests in software development?&#8221; Mary&#8217;s immediate response: &#8220;Unit tests are what let you stop the line.&#8221; (quoted from the Foreword by Dottie Acton)</p>
<p>In our experience, the most common causes of policy-driven waste in software development are:<br />
1. Complexity<br />
2. Economies of scale<br />
3. Separating decision making from work<br />
4. Wishful thinking<br />
5. Technical debt</p>
<p>The strategy of designing the effort to fit the constraints, rather than computing the constraints form the design, is absolutely the most effective way to achieve reliable delivery.</p>
<p>Reference: &#8220;Leading Lean Software Development &#8211; Results are not the Point&#8221;, Mary and Tom Poppendieck, Addison-Wesley, 278 pages, IBSN 978-0-321-62070-5</p>
<p>It could seem very provocative to propose an approach based on the slogan &#8221; Results are not the Point&#8221;. In their book, the Poppendieck defend the idea that there are many good managers around that could foster the adoption of lean practices. From my personal experience, most of the managers thinking &#8220;results are not the point&#8221; do this because they think &#8220;costs are the most important point&#8221;. This is why I think that companies that adopt agile or lean approaches want results&#8230;. and quickly! We could all wish that more managers and developers take the time to read book like this one, but even if it was the case, I am very dubious that many companies will really abandon their &#8220;command and control&#8221; and &#8220;short term vision&#8221; culture.</p>
<p><a href="http://www.amazon.com/exec/obidos/ASIN/0321620704/methotools-20">Get more details on this book or buy it on amazon.com</a><br />
<a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321620704/methotools-21">Get more details on this book or buy it on amazon.co.uk</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/lean-results-are-not-the-point/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How Do You Refactor Untested Code?</title>
		<link>http://blog.martinig.ch/quotes/how-do-you-refactor-untested-code/</link>
		<comments>http://blog.martinig.ch/quotes/how-do-you-refactor-untested-code/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 17:32:52 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[refactoring]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=481</guid>
		<description><![CDATA[I am currently reading the excellent &#8220;Debug It!&#8221; book written by Paul Butcher and I wanted to share with you some of the little gems that I have found in it.
&#8220;Bug fixing often uncovers opportunities for refactoring. The very fact that you&#8217;re working with code that contains a bug indicates that there is a chance [...]]]></description>
			<content:encoded><![CDATA[<p>I am currently reading the excellent &#8220;Debug It!&#8221; book written by Paul Butcher and I wanted to share with you some of the little gems that I have found in it.</p>
<p>&#8220;Bug fixing often uncovers opportunities for refactoring. The very fact that you&#8217;re working with code that contains a bug indicates that there is a chance that it could be clearer or better structured.&#8221;</p>
<p>&#8220;As a rule of thumb, for every user who tells you about a problem, there will be between 10 and 100 other users who experienced the same problem and didn&#8217;t think to get in touch.&#8221;</p>
<p>&#8220;Once you start to get on top of your quality issues, you&#8217;re going to want to start refactoring the old, crufty, untested code. And you should &#8211; the point of exercise is to clean up problems, and refactoring is a key element of that process. Remember, however, that refactoring crucially depends upon the support of an extensive suite of automated tests. Without tests, you&#8217;re not refactoring. You&#8217;re hacking. So, how do you refactor untested code? You don&#8217;t. The first thing you do is to write the tests.&#8221;</p>
<p>Source: &#8220;Debug It!&#8221;, Paul Butcher, Pragmatic Bookshelf, 214 pages</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/how-do-you-refactor-untested-code/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Changing Perspectives</title>
		<link>http://blog.martinig.ch/quotes/changing-perspectives/</link>
		<comments>http://blog.martinig.ch/quotes/changing-perspectives/#comments</comments>
		<pubDate>Tue, 26 Jan 2010 08:41:52 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=470</guid>
		<description><![CDATA[&#8220;In the early days of our industry, programmers wrote in assembly code, selecting registers in which to place variables and managing memory explicitly. If we had magically provided these programmers with a Smalltalk compiler, they might have asked, &#8220;How does this help us select registers? How do we allocate memory?&#8221; They might have concluded, &#8220;&#8221;We [...]]]></description>
			<content:encoded><![CDATA[<p>&#8220;In the early days of our industry, programmers wrote in assembly code, selecting registers in which to place variables and managing memory explicitly. If we had magically provided these programmers with a Smalltalk compiler, they might have asked, &#8220;How does this help us select registers? How do we allocate memory?&#8221; They might have concluded, &#8220;&#8221;We don&#8217;t want no stinkin&#8217; Smalltalk!&#8221;</p>
<p>Old and new programmers are still writing programs, but the technology to achieve the goal has changed. When a new technology is sufficiently different, you can&#8217;t evaluate it in terms of the old technology.&#8221;</p>
<p>Source: Stephen J. Mellor, Letters section, IEEE Software, March/April 2004</p>
<p>Sometimes new ways of doing things come in our life and it might be difficult to adapt. If you are used to drive a car and you take a train, you don&#8217;t ask how you are going to &#8220;turn left&#8221;: the train just follows the tracks. However, you have now to go to a station, buy a ticket, look at timetable, etc&#8230;  This could be the same thing with some of the software development approaches that have recently become popular. </p>
<p>Functional programming, domain driven design or frameworks that favors convention over configuration like Ruby on Rails can offer a new perspective about what you have to do to develop software. If you have the time (and the energy) I would like to strongly encourage you inform you about these approaches or even better to try them. Ironically, the above quotation was in reply of a letter about UML and Model Driven Architecture. Six years after, there is not a lot of people still caring about this way of developing software, as it is for Smalltalk or assembly languages.</p>
<p><strong>Resources</strong></p>
<p>* Wikipedia. </p>
<p><a href="http://en.wikipedia.org/wiki/Functional_programming">Functional Programming</a></p>
<p><a href="http://en.wikipedia.org/wiki/Domain-driven_design">Domain Driven Design</a> </p>
<p><a href="http://en.wikipedia.org/wiki/Convention_over_Configuration">Convention over configuration</a></p>
<p>* Articles</p>
<p><a href="http://www.haskell.org/haskellwiki/Functional_programming">Functional programming &#8211; HaskellWiki</a></p>
<p><a href="http://www.defmacro.org/ramblings/fp.html">Functional Programming For The Rest of Us</a></p>
<p><a href="http://guides.rubyonrails.org/">Ruby on Rails guides</a></p>
<p><a href="http://www.methodsandtools.com/archive/archive.php?id=47">An Introduction to Web Development Using the Ruby on Rails Framework</a></p>
<p><a href="http://msdn.microsoft.com/en-us/magazine/dd419654.aspx">An Introduction To Domain-Driven Design</a></p>
<p><a href="http://www.methodsandtools.com/archive/archive.php?id=97">An Introduction to Domain Driven Design</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/changing-perspectives/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>You Are the Raw Material of Software Development. Are You Good Enough?</title>
		<link>http://blog.martinig.ch/quotes/you-are-the-raw-material-are-you-good-enough/</link>
		<comments>http://blog.martinig.ch/quotes/you-are-the-raw-material-are-you-good-enough/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 09:52:20 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=453</guid>
		<description><![CDATA[The end of the year is a time where you do some cleaning. During this activity, I found an old issue of IEEE Software where I had noticed an article as a source of interesting software development quotes about people issue. As New Year is also the time to take good resolutions, this should help [...]]]></description>
			<content:encoded><![CDATA[<p>The end of the year is a time where you do some cleaning. During this activity, I found an old issue of IEEE Software where I had noticed an article as a source of interesting software development quotes about people issue. As New Year is also the time to take good resolutions, this should help us to deal with average people that we mostly are&#8230; and with the below average developers that normally will not read this ;o)</p>
<p>&#8220;Any construction project begins with raw material, and as Confucius suggests, the nature of the raw material is critical to success &#8211; so much that you shouldn&#8217;t even begin if the &#8220;wood&#8221; is poor. Even if you have sharp, finely honed tools, your project will still fail if the raw material isn&#8217;t sound. And what, might you ask, is the raw material of software development? Us. People. We are the only raw material of consequences in software development.</p>
<p>[....] So how do we prepare this material? Obviously, we don&#8217;t want it to be &#8220;rotten&#8221;, but how can we tell? How can we tell if hidden voids lurk beneath the surface, just waiting to ruin the project once we start carving? When you lack the right material, you&#8217;ll keenly feel its absence. For example, warning signs might include:<br />
* The developer who only uses one favorite solution for every problem<br />
* Folks who don&#8217;t learn from mistakes &#8211; or worse, are too afraid to make any<br />
* The developer who can&#8217;t be bothered to tell anyone what he&#8217;s doing and why</p>
<p>[...] Painful as it is to admit it, for most people, most of the time, the problems that come up are our own fault &#8211; not the compiler&#8217;s, not the OS&#8217;s, not the database vendor&#8217;s, not our bosses&#8217;, and not our coworkers&#8217;. Yet many people and team, when facing a disastrous problem, first embark on a search (aka witch-hunt) to fix the blame. It goes somewhat against human nature, but you should always try to fix the problem, not the blame. Remember we all write software in our heads, so it makes sense to go ahead and take responsibility for it. &#8220;The cat ate my source code&#8221; just doesn&#8217;t cut it anymore &#8211; when problem come up, we need to invent options, not excuses.</p>
<p>[...] The isolated, lone developer huddled over a terminal with a can of highly caffeinated cola offers not only an inaccurate and misleading stereotype, but a dangerous one as well. Isolated developers can inadvertently duplicate other teammates&#8217; work, use outdated or inappropriate methods, and even build the wrong product &#8211; at least, not the product the sponsor wanted. Instead of taking more Java and UML courses, we should work on our technical writing, public speaking, and group facilitation. A CPU with no I/O isn&#8217;t very useful. Neither is a developer who can&#8217;t communicate.&#8221;</p>
<p>Source: Andy Hunt and Dave Thomas, &#8220;Preparing the Raw Material&#8221;, IEEE Software, September/October 2003</p>
<p>My only disagreement with the authors is that I think that the end users are also essential raw material in software development, but I fully agree with the idea that we should take responsibility for our own limits. Fresh out of the University, one of the first important modification that I did created a big trouble, because I didn&#8217;t tested it with the right files, even if my supervisor suggested this to me ;o( This taught me that being confident with my work could be good&#8230; but thoroughly testing it was even better ,o)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/you-are-the-raw-material-are-you-good-enough/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Agile Project Management Insights</title>
		<link>http://blog.martinig.ch/quotes/agile-project-management-insights/</link>
		<comments>http://blog.martinig.ch/quotes/agile-project-management-insights/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 08:39:34 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[Project Management]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=436</guid>
		<description><![CDATA[I am currently reading the book &#8220;Agile Project Management&#8221; from Jim Highsmith. I will publish a review later on this blog, but in the meantime I would like to share some of the interesting quotes that I have found in the book. I am sure they will make sense to software project managers&#8230; and developers [...]]]></description>
			<content:encoded><![CDATA[<p>I am currently reading the book &#8220;Agile Project Management&#8221; from Jim Highsmith. I will publish a review later on this blog, but in the meantime I would like to share some of the interesting quotes that I have found in the book. I am sure they will make sense to software project managers&#8230; and developers ;o)</p>
<p><strong>About adding value</strong></p>
<p>&#8220;When Ward asked Toyota&#8217;s American engineering and managers how much time they spend adding value (i.e., actually doing engineering work), their response averages 80%. The same question asked of engineers and managers at American automobile companies averages 20%. How can you compete with companies that are getting four times as much value-adding work from their development engineers.&#8221; (referenced from &#8220;Product Development for the Lean Enterprise&#8221;, Michael Kennedy, the Oaklea Press, 2003)</p>
<p><strong>About technical knowledge</strong></p>
<p>&#8220;As a software development consultant, I&#8217;ve never encountered a successful software company (although my sample size is limited) in which the team and project leaders were not technically savvy. [...] Championing technical excellence requires that the project leader, and team members in general, understand what technical excellence means &#8211; in the product, the technology, and in the skills of the people doing the work.&#8221;</p>
<p><strong>About leading or managing</strong></p>
<p>&#8220;Agile leaders lead teams, non-agile ones manage tasks. How many project managers spend hours detailing tasks into Microsoft Project and then spend more hours ticking off task completions? Unfortunately, many project managers like this task oriented-approach because it is concrete, definable, and completion seems finite. Leading teams, on the other hand, seems fuzzy, messy, un-definable, and never complete. So naturally some people gravitate to the easier &#8211; managing tasks.&#8221;</p>
<p><strong>About self-organization and anarchy</strong></p>
<p>&#8220;Self-organizing teams are at the core of the agile management, but the concepts have become corrupted &#8211; and counterproductive &#8211; in parts of the agile community. Although self-organizing is a good term, it has, unfortunately, contingent within the agile community who encourage an anarchistic management style and have latched onto the term self-organizing because it sounds better than anarchy. As larger and larger organizations are implementing agile methods and practices, the core of what it means to be agile &#8211; an empowering organizational culture &#8211; may be lost because large organizations will reject the cultural piece of agile.&#8221;</p>
<p><strong>About the value of a plan</strong></p>
<p>&#8220;When we &#8220;plan&#8221;, we expect the actual project result to conform to that plan, and then deviations become team mistakes or sign of the team&#8217;s failure to work enough. When we &#8220;speculate&#8221;, we take the opposite perspective &#8211; it&#8217;s the plan we suspect was wrong. The plan, or speculation, is a piece of information, but it is only one piece that we will examine to determine our course of action in the next iteration.&#8221;</p>
<p><strong>About software malleability</strong></p>
<p>&#8220;Software is the most malleable product. Companies need to use this characteristics to their competitive advantage, and sticking to traditional waterfall development negates this advantage.&#8221;</p>
<p>Reference: &#8220;Agile Project Management&#8221;, Jim Highsmith, Addison-Wesley, Second Edition</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/agile-project-management-insights/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Finding a Good Agile Coach</title>
		<link>http://blog.martinig.ch/quotes/finding-a-good-agile-coach/</link>
		<comments>http://blog.martinig.ch/quotes/finding-a-good-agile-coach/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 12:46:41 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=368</guid>
		<description><![CDATA[&#8220;Agile is all about teams working together to produce great software. As an Agile coach, you can help your team go from first steps to running with Agile to unleashing their full Agile potential.&#8221;
&#8220;The art of Agile coaching is understanding the situation, the values underlying Agile software development, and how the two can combine. As [...]]]></description>
			<content:encoded><![CDATA[<p>&#8220;Agile is all about teams working together to produce great software. As an Agile coach, you can help your team go from first steps to running with Agile to unleashing their full Agile potential.&#8221;</p>
<p>&#8220;The art of Agile coaching is understanding the situation, the values underlying Agile software development, and how the two can combine. As an Agile coach, you don’t need to have all the answers; it takes time and a few experiments to hit on the right approach. We’ve worked with teams who’ve come up with great solutions, and we learn from every team we work with.&#8221;</p>
<p>&#8220;Don’t expect to get recognition for your work as an Agile coach. It’s a supporting role rather than one that delivers direct benefits. A good coach gives credit to the team. When you work on an idea with Frank, it’s Frank’s idea if it succeeds, and if it doesn’t, then commiserate together.&#8221;</p>
<p>Some good points to keep in mind the next time you will be looking for some help to transition to Agile.</p>
<p>Source: “Agile Coaching”, Rachel Davies and Liz Sedley, Pragmatic Bookshelf, 250 pages</p>
<p><a href="http://www.amazon.com/exec/obidos/ASIN/1934356433/methotools-20">Get  more details on this book or buy it on amazon.com</a><br />
<a href="http://www.amazon.co.uk/exec/obidos/ASIN/1934356433/methotools-21">Get  more details on this book or buy it on amazon.co.uk</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/finding-a-good-agile-coach/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why Tester Won&#8217;t Like Agile</title>
		<link>http://blog.martinig.ch/quotes/why-tester-wont-like-agile/</link>
		<comments>http://blog.martinig.ch/quotes/why-tester-wont-like-agile/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 08:54:10 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[software testing]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=350</guid>
		<description><![CDATA[Following my thinking about the fact that functional testing was the dividing barrier between specialized developer and tester roles, I found in the book &#8220;Agile Testing&#8221; by Lisa Crispin and Janet Gregory an excellent list of fears that QA teams could express against agile adoption:
&#8220;Testers cling to the concept of an independent QA team for [...]]]></description>
			<content:encoded><![CDATA[<p>Following my<a href="http://blog.martinig.ch/numbers/no-functional-testing-for-the-dumb-developer/"> thinking about the fact that functional testing was the dividing barrier between specialized developer and tester roles</a>, I found in the book &#8220;Agile Testing&#8221; by Lisa Crispin and Janet Gregory an excellent list of fears that QA teams could express against agile adoption:</p>
<p>&#8220;Testers cling to the concept of an independent QA team for many reasons, but the main reason is fear, specifically:</p>
<p>* Fear that they will lose their QA identity</p>
<p>* Fear that if they report to a development manager, they will loose support and programmers will get priority</p>
<p>* Fear that they lack the skills to work in an agile team and will lose their jobs</p>
<p>* Fear that when they&#8217;re dispersed into development teams they won&#8217;t get the support they need</p>
<p>* Fear that they, and their managers, will get lost in the new organizations</p>
<p>We often hear of QA managers asking questions such as &#8220;My company is implementing agile development. How does my role fit in?&#8221;. This is directly related to the &#8220;loss of identity&#8221; fears.&#8221;</p>
<p><a href="http://www.amazon.com/exec/obidos/ASIN/0321534468/methotools-20">Source: &#8220;Agile Testing&#8221;, Lisa Crispin and Janet Gregory, Addison-Wesley, 2009</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/why-tester-wont-like-agile/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>What is an Agile Tester?</title>
		<link>http://blog.martinig.ch/quotes/what-is-an-agile-tester/</link>
		<comments>http://blog.martinig.ch/quotes/what-is-an-agile-tester/#comments</comments>
		<pubDate>Thu, 02 Apr 2009 19:58:45 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[software testing]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=262</guid>
		<description><![CDATA[Here is a good definition of the Agile Tester, from the book &#8220;Agile Testing&#8221; of Lisa Crispin and Janet Gregory:  &#8220;We define an agile tester this way: a professional tester who embraces change, collaborates well with both technical and business people, and understands the concept of using tests to document requirements and drive development. Agile [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="EN">Here is a good definition of the Agile Tester, from the book &#8220;Agile Testing&#8221; of Lisa Crispin and Janet Gregory:  &#8220;We define an agile tester this way: a professional tester who embraces change, collaborates well with both technical and business people, and understands the concept of using tests to document requirements and drive development. Agile testers tend to have good technical skills, know how to collaborate with others to automate tests, and are also experienced exploratory testers. They&#8217;re willing to learn what customers do so that they can better understand the customers&#8217; software requirements.&#8221;</p>
<p>Source: &#8220;Agile Testing&#8221;, Lisa Crispin and Janet Gregory, Addison-Wesley, 2009</p>
<p></span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/quotes/what-is-an-agile-tester/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Three Thinking Gems for Software Development Projects</title>
		<link>http://blog.martinig.ch/software-development/three-thinking-gems-for-software-development-projects/</link>
		<comments>http://blog.martinig.ch/software-development/three-thinking-gems-for-software-development-projects/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 08:32:13 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[scrum]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=226</guid>
		<description><![CDATA[I have just started reading the book &#8220;Scaling Lean &#38; Agile Development &#8211; Thinking and Organizational Tools for Large-Scale Scrum&#8221; from Craig Larman and Bas Vodde. You will read the complete review later on this blog, but as the book is full of interesting wisdom from the beginning, I couldn&#8217;t resist to share some of [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="EN">I have just started reading the book &#8220;Scaling Lean &amp; Agile Development &#8211; Thinking and Organizational Tools for Large-Scale Scrum&#8221; from Craig Larman and Bas Vodde. You will read the complete review later on this blog, but as the book is full of interesting wisdom from the beginning, I couldn&#8217;t resist to share some of them with you that you could apply quickly in you next project planning meeting.</p>
<p>&#8220;After working for some years in the domains of <em>large</em>, <em>multisite</em>, and <em>offshore</em> development, we have distilled our experience and advice down to the following: <em>Don&#8217;t&#8217; do it</em>.&#8221;</p>
<p>&#8220;We regularly coach groups that ask, &#8220;How can we calculate how many people we will need?&#8221; Our suggestion is, &#8220;Start with a small group of great people, and only grow when it really starts to hurt.&#8221; That rarely happens.&#8221;</p>
<p>The last is taken from <em>The Fifth Discipline</em>: &#8220;Dividing an elephant in half does not produce two small elephants&#8221;</p>
<p><strong>Sources:</strong></p>
<p>&#8220;Scaling Lean &amp; Agile Development &#8211; Thinking and Organizational Tools for Large-Scale Scrum&#8221;, Craig Larman &amp; Bas Vodde, Addison -Wesley</p>
<p>&#8220;The Fifth Discipline&#8221;, Peter Senge, DoubleDay Business</p>
<p></span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/software-development/three-thinking-gems-for-software-development-projects/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Wise Iteration</title>
		<link>http://blog.martinig.ch/software-development/wise-iteration/</link>
		<comments>http://blog.martinig.ch/software-development/wise-iteration/#comments</comments>
		<pubDate>Thu, 20 Mar 2008 12:20:00 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=94</guid>
		<description><![CDATA[A you move ahead, keep in mind the following:
* Never confuse the map with the journey &#8211; The project plan is only an outline (and a guess at that), so you should believe the team&#8217;s results and not the plans. Remember, it is the achievement of the objectives that is important, not the production of [...]]]></description>
			<content:encoded><![CDATA[<p>A you move ahead, keep in mind the following:<br />
* Never confuse the map with the journey &#8211; The project plan is only an outline (and a guess at that), so you should believe the team&#8217;s results and not the plans. Remember, it is the achievement of the objectives that is important, not the production of artifacts or the completion of activities. Be careful not to confuse the ends (objectives) with the means (artifacts and activities).<br />
* Adopt the attitude that continuous planning is a good thing &#8211; In every iteration, expect your plans to change (albeit in small ways if your planning is effective). Don&#8217;t fall into the trap of thinking that the plan is infallible.<br />
* Mature your process alongside your team &#8211; Tune the working practices alongside the plans, adapt your team&#8217;s skills as necessary to improve over time.<br />
* Be prepared to cut your losses &#8211; Canceling bad projects early is success because you save time, money and resources that can be applied to better opportunities.<br />
* Be honest &#8211; Without objectivity and honesty, the project team is set up for failure, even if developing iteratively.</p>
<p><a href="http://www.amazon.com/exec/obidos/ASIN/032126889X/methotools-20">Source: &#8220;Managing Iterative Software Development Projects&#8221;, Kurt Bittner, Ian Spence, Addisson Wesley.</a></p>
<p>Transitioning from a traditional approach to iterative software development is more a change of mind than a schedule adjustment. So try to be honest&#8230; or at least as honest as you can be ;o)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/software-development/wise-iteration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Three Rules of Test Driven Development</title>
		<link>http://blog.martinig.ch/software-development/the-three-rules-of-test-driven-development/</link>
		<comments>http://blog.martinig.ch/software-development/the-three-rules-of-test-driven-development/#comments</comments>
		<pubDate>Mon, 03 Mar 2008 14:45:53 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[software testing]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=93</guid>
		<description><![CDATA[Over the years I have come to describe Test Driven Development in terms of three simple rules. They are:
1. You are not allowed to write any production code unless it is to make a failing unit test pass.
2. You are not allowed to write any more of a unit test than is sufficient to fail; [...]]]></description>
			<content:encoded><![CDATA[<p>Over the years I have come to describe Test Driven Development in terms of three simple rules. They are:<br />
1. You are not allowed to write any production code unless it is to make a failing unit test pass.<br />
2. You are not allowed to write any more of a unit test than is sufficient to fail; and compilation failures are failures.<br />
3. You are not allowed to write any more production code than is sufficient to pass the one failing unit test.</p>
<p>You must begin by writing a unit test for the functionality that you intend to write. But by rule 2, you can&#8217;t write very much of that unit test. As soon as the unit test code fails to compile, or fails an assertion, you must stop and write production code. But by rule 3 you can only write the production code that makes the test compile or pass, and no more.</p>
<p>If you think about this you will realize that you simply cannot write very much code at all without compiling and executing something. Indeed, this is really the point. In everything we do, whether writing tests, writing production code, or refactoring, we keep the system executing at all times. The time between running tests is on the order of seconds, or minutes. Even 10 minutes is too long.</p>
<p>Robert  Martin</p>
<p><a href="http://butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTdd">http://butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTdd</a></p>
<p>Besides these rules and independently of an agile approach, I always like as a developer being able to verify quickly my code, because it makes much more easier to find all the errors I do ;o)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/software-development/the-three-rules-of-test-driven-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sharing Trough Implementation Patterns</title>
		<link>http://blog.martinig.ch/software-development/sharing-trough-implementation-patterns/</link>
		<comments>http://blog.martinig.ch/software-development/sharing-trough-implementation-patterns/#comments</comments>
		<pubDate>Thu, 31 Jan 2008 16:09:43 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[extreme programming]]></category>
		<category><![CDATA[kent beck]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=85</guid>
		<description><![CDATA[The thing I like about the pattern form is that it gives you a way to talk about the motivation for what you are doing. So there is a lot of Java style books, and good ones, out there people with lots of experience, people who&#8217;ve thought carefully about how to program, but when I [...]]]></description>
			<content:encoded><![CDATA[<p>The thing I like about the pattern form is that it gives you a way to talk about the motivation for what you are doing. So there is a lot of Java style books, and good ones, out there people with lots of experience, people who&#8217;ve thought carefully about how to program, but when I read them what I hear is a set of commandments, &#8220;Name variables like this, arrange your code like that, etc&#8221; and all those are good things to do in certain circumstances, but what doesn&#8217;t ever come true for me is why? What&#8217;s the context, what stage needs to be set before that&#8217;s the right thing to do, and what are the consequences? If I do that what other thing should I do so that the whole system works well together? So there are different personal styles.</p>
<p>People come to those styles because there are a bunch of decisions that work well together. Taking one bit of that out and using it isn&#8217;t necessarily working well. So by writing a pattern kind of format I get a chance to say: &#8220;How do you name fields?&#8221; Well, let&#8217;s see. What are all the things that you might want to communicate? What things might a reader be interested in if they are reading a name of a variable? What are all the constraints on naming, both in terms of like cognitive constraints. Abbreviations don&#8217;t work well for a variety of reasons, but why? Really long names don&#8217;t work well, but why? By writing in terms of patterns I get an opportunity to think about all of those. Here is my rule for naming variables, to use simple names that describe the role of the variable in the computation, but if I just said that as a commandment, someone could copy that, but they don&#8217;t really get it in the same sense that I care about, and more importantly when that is not the right rule, they don&#8217;t get any sense of what thinking was behind that rule, so they don&#8217;t know when to break it.</p>
<p><a href="http://www.infoq.com/interviews/beck-implementation-patterns">Source: &#8220;Kent Beck on Implementation Patterns&#8221; on infoq.com</a></p>
<p>The main point in Kent Beck&#8217;s words is that you cannot use software development methods and tools without knowing the context in which you should use them. Every time you find something interesting and new, you should ask yourself why and when you could use it, and why and when you should not use it.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/software-development/sharing-trough-implementation-patterns/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile Software Development. Cooler Heads Must Prevail</title>
		<link>http://blog.martinig.ch/software-development/cooler-heads-must-prevail/</link>
		<comments>http://blog.martinig.ch/software-development/cooler-heads-must-prevail/#comments</comments>
		<pubDate>Fri, 11 Jan 2008 09:46:00 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=78</guid>
		<description><![CDATA[I have been distraught at the level of dogmatism, bigotry, contempt, or just plain ignorance that I witness in the agile world. I am not blaming the topnotch agilistas, though they sometimes, and just for effect in writings and presentations, reduce their messages to their essential bones, to the slogan level, and they omit the [...]]]></description>
			<content:encoded><![CDATA[<p>I have been distraught at the level of dogmatism, bigotry, contempt, or just plain ignorance that I witness in the agile world. I am not blaming the topnotch agilistas, though they sometimes, and just for effect in writings and presentations, reduce their messages to their essential bones, to the slogan level, and they omit the context—both source and applicability.</p>
<p>As agility is crossing the chasm, however—as you can see if you attend any big software synod such as SD East or West or OOPSLA (Object-Oriented Programming, Systems, Languages, and Applications)—many more people say (or repeat) rather uninformed messages with a strong conviction and little background, scoffing at anybody who dares to question their claims, even if it’s just a clarification about scope or context.</p>
<p>For writing these words, I’ll be shot dead as a traitor to the agilism cause, a defender of the waterfall church, a dinosaur, the über-curmudgeon, though I do value agility or agile practices in the proper context, and with the tainted glasses of my own 33-plus years of experience. But I would like my friends and colleagues to keep cooler heads, to question assumptions, not assume too much of a common, shared mental model, and contextualize what they hear, read, say, or write.</p>
<p>Source: <a href="http://delivery.acm.org/10.1145/1290000/1281893/p38-kruchten.htm?key1=1281893&#038;key2=7972259811&#038;coll=ACM&#038;dl=ACM&#038;CFID=15151515&#038;CFTOKEN=6184618">Philippe Kruchten, Voyage in the Agile Memeplex</a></p>
<p>These are word of experience from Philippe Kruchten. It should be repeated that there is no silver bullet in software development and that many approaches will fail in specific contexts when their essence is not understood, but rather people are just trying to apply some recipes without intelligence and common sense. Every new approach will have its share of zealots that will apply them as strict religious rules. I am a strong believer that the success of software development depends more on adapting existing tools and processes to specific situations and not the contrary.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/software-development/cooler-heads-must-prevail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Limits of Cost Cutting</title>
		<link>http://blog.martinig.ch/humour/the-limits-of-cost-cutting/</link>
		<comments>http://blog.martinig.ch/humour/the-limits-of-cost-cutting/#comments</comments>
		<pubDate>Wed, 07 Feb 2007 08:34:11 +0000</pubDate>
		<dc:creator>The Editor</dc:creator>
				<category><![CDATA[Humour]]></category>
		<category><![CDATA[Quotes]]></category>

		<guid isPermaLink="false">http://blog.martinig.ch/?p=16</guid>
		<description><![CDATA[Excerpt from: Stanley Bing, &#8220;The 0% Solution&#8221;, Fortune, Europe Edition, December 18, 2006
News comes from the Department of Labor that productivity growth in nonfarm business in the U.S. hit a critical number in the third quarter. That number was zero, as in naught, as in nothing, no growth at all, not even something you could [...]]]></description>
			<content:encoded><![CDATA[<p>Excerpt from: Stanley Bing, &#8220;The 0% Solution&#8221;, Fortune, Europe Edition, December 18, 2006</p>
<p>News comes from the Department of Labor that productivity growth in nonfarm business in the U.S. hit a critical number in the third quarter. That number was zero, as in naught, as in nothing, no growth at all, not even something you could round up to a minuscule decimal of some kind. [...]</p>
<p>Let&#8217;s look at what forces are coming together to suppress productivity growth, to see if we can augment them in some way. [...]</p>
<p>Second, I&#8217;m thinking that the reason we kept being more productive in the first place wasn&#8217;t so good. When I started out, my department had 20 people rushing around working very hard. Then the corporation, under pressure from Wall Street to grow our stock price every day, decided to do what analysts, investment bankers, and business reporters all agree is the most terrific thing a successful enterprise can do: fire a bunch of people and make those who remain do the work that used to be done by others. Before long, we had ten people doing the work of 20. This naturally produced impressive gains in individual productivity. Of course it did! But at what cost, I ask you. Actually, I&#8217;m not asking you, I&#8217;m telling you. A big one.</p>
<p>The things that&#8217;s happened now is that corporate America is just about done firing people, because if management wants to fire any more people, it&#8217;s going to have to start firing itself. That&#8217;s expensive. Firing an executive is often more expensive than retaining him.[...]</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.martinig.ch/humour/the-limits-of-cost-cutting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
