<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3975468251456726557</id><updated>2012-02-09T13:03:13.138+01:00</updated><category term='People'/><category term='Lean'/><category term='Opinion'/><category term='Agile'/><category term='Distributed'/><category term='Article'/><category term='Scrum'/><category term='Tools'/><category term='Presentation'/><category term='Process'/><category term='Improvement'/><category term='Management'/><category term='Test'/><category term='Dutch'/><title type='text'>Agile Software Development</title><subtitle type='html'>A blog about my experiences with Agile Software Development.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>45</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7709156313467900237</id><published>2011-11-17T15:36:00.001+01:00</published><updated>2011-11-17T15:55:22.288+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>What is your definition of a Scrum Master?</title><content type='html'>We organize every month a Scrum Master guild meeting. This is a meeting where all the scrum master meet and discuss topics related to being a Scrum Master, agile, lean, etc. The topic of our last guild meeting was "What is our definition of a Scrum Master?".&lt;br /&gt;&lt;br /&gt;I did some research (=read googled) on the internet to find out what the common definition of a Scrum Master is.&lt;br /&gt;&lt;br /&gt;I found the following scrum master definitions:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Scrum_(development)" target="_blank"&gt;Wikipedia&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;The person responsible for the Scrum process, making sure it is used correctly and maximizing its benefits.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://www.scrumalliance.org/articles/39-glossary-of-scrum-terms#1121" target="_blank"&gt;Scrum Alliance&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;The ScrumMaster is a facilitator for the team and product owner.&amp;nbsp;Rather than manage the team, the ScrumMaster works to assist both the team and product owner in the following ways:&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Remove the barriers between the development and the product owner so that the product owner directly drives development.&lt;/li&gt;&lt;li&gt;Teach the product owner how to maximize return on investment (ROI), and meet his/her objectives through Scrum.&lt;/li&gt;&lt;li&gt;Improve the lives of the development team by facilitating creativity and empowerment.&lt;/li&gt;&lt;li&gt;Improve the productivity of the development team in any way possible.&lt;/li&gt;&lt;li&gt;Improve the engineering practices and tools so that each increment of functionality is potentially shippable&lt;/li&gt;&lt;li&gt;Keep information about the team's progress up to date and visible to all parties.&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://www.agileforall.com/2009/09/23/new-to-agile-what-does-the-scrummaster-do-anyway/" target="_blank"&gt;AgileForAll&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;A ScrumMaster removes impediments for the team.&amp;nbsp;A ScrumMaster is a servant leader helping the team be accountable to themselves for the commitments they make.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://whatis.techtarget.com/definition/scrum-master.html" target="_blank"&gt;TechTarget&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;A scrum master is the facilitator for a product development team that uses scrum.&amp;nbsp;The scrum master manages the process for how information is exchanged.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://www.brighthub.com/office/project-management/articles/32496.aspx" target="_blank"&gt;BrightHub&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;The ScrumMaster is responsible for empowering the team to control over how they will perform their work.&amp;nbsp;The team looks up to the ScrumMaster as a top athlete would look up to a sports coach.&amp;nbsp;It is not only about knowing the SCRUM process, but also motivation and understanding the team’s psychology.&amp;nbsp;The ScrumMaster's role requires more than basic project management skills.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://www.techopedia.com/definition/14013/scrum-master" target="_blank"&gt;Techopedia&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Scrum masters serve to facilitate both product owners and the team. They neither have management authority, nor can they commit to work on the team's behalf.&amp;nbsp;A scrum master may also be referred to as a servant leader.&amp;nbsp;The scrum master is accountable for removing disorders so as to produce sprint deliverables.&amp;nbsp;The scrum master acts as a buffer between the product owner and team, ensuring that the scrum process is used as intended.&amp;nbsp;Scrum masters also enforce scrum rules within the scrum.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://www.mountaingoatsoftware.com/scrum/scrummaster" target="_blank"&gt;Mountain Goat Software&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;The ScrumMaster is responsible for making sure a Scrum team lives by the values and practices of Scrum.&amp;nbsp;The ScrumMaster protects the team by making sure they do not over-commit themselves to what they can achieve during a sprint.The ScrumMaster facilitates the daily scrum and becomes responsible for removing any obstacles that are brought up by the team during those meetings.&amp;nbsp;The ScrumMaster role is typically filled by a project manager or a technical team leader but can be anyone.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://scrumcrazy.wordpress.com/2011/08/12/scrum-master-vs-scrum-coach-whats-the-difference/" target="_blank"&gt;ScrumCrazy&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Acts as a servant leader to the Scrum Team and Organization, helping them to adopt and get better at Scrum.&lt;/li&gt;&lt;li&gt;Ensures impediments to Scrum Team delivery of high value software are removed.&lt;/li&gt;&lt;li&gt;Ensures that the Scrum Team adheres to the Scrum principles, values, roles, rules, and practices.&lt;/li&gt;&lt;li&gt;Helps Product Owners and Development Team members play their Scrum role, but otherwise does not in any way control or strongly influence how the software is developed and delivered.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://scrummethodology.com/" target="_blank"&gt;ScrumMethodology&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;The ScrumMaster acts as a liaison between the Product Owner and the team. The ScrumMaster does not manage the team. Instead, he or she works to remove any impediments that are obstructing the team from achieving its sprint goals. In short, this role helps the team remain creative and productive, while making sure its successes are visible to the Product Owner. The ScrumMaster also works to advise the Product Owner about how to maximize ROI for the team&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;div&gt;And the list continues... I read different kind of descriptions. Is the Scrum Alliance right or is ScrumCrazy right? Some definitions are even conflicting in my opinion. For example "the scrum master acts as a buffer between the product owner and team" and "Remove the barriers between the development and the product owner so that the product owner directly drives development.". You could argue Techopedia has no knowledge of Scrum Masters. I believe they have a very good knowledge of Scrum Masters (I never met Mr. Techopedia). Their description of Scrum Master is perfect for &lt;b&gt;their &lt;/b&gt;organisation.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;After reading all the&amp;nbsp;definitions, discussing the&amp;nbsp;definitions&amp;nbsp;in our Scrum Guild Meeting, we came to the conclusion that the&amp;nbsp;definition&amp;nbsp;of Scrum Master depends on the&amp;nbsp;organisation&amp;nbsp;where the Scrum Master operates.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In our case, RES Software, a Scrum Master is someone who:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;creates awareness of the progress of the team in the team&lt;/li&gt;&lt;li&gt;makes sure the team is removing their own impediments&lt;/li&gt;&lt;li&gt;makes sure the team lives up by our Scrum values&lt;/li&gt;&lt;li&gt;guards the scrum/kanban/etc. process&lt;/li&gt;&lt;li&gt;facilitates the team in managing their own project&lt;/li&gt;&lt;li&gt;focuses on the process, not the tools or engineering/testing/requiment/technical writer practices&lt;/li&gt;&lt;li&gt;is an example to the team, be on time, follow the process&lt;/li&gt;&lt;li&gt;has as goal to make the team self steering.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;What is your&amp;nbsp;definition&amp;nbsp;of a Scrum Master or do you believe the ScrumAlliance is always right?&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7709156313467900237?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7709156313467900237/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/11/what-is-your-definition-of-scrum-master.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7709156313467900237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7709156313467900237'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/11/what-is-your-definition-of-scrum-master.html' title='What is your definition of a Scrum Master?'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-3555902990297228063</id><published>2011-11-09T08:56:00.001+01:00</published><updated>2011-11-09T08:56:06.897+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Tools'/><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Pen and Sticky Notes</title><content type='html'>Are you familiar with the concept of &lt;a href="http://en.wikipedia.org/wiki/Getting_Things_Done" target="_blank"&gt;GTD&lt;/a&gt;? GTD is abbreviation of Getting Things Done. A famous book about GTD is the &lt;a href="https://secure.davidco.com/store/catalog/GETTING-THINGS-DONE-HARDCOVER--p-16182.php" target="_blank"&gt;book "Getting Things Done"&lt;/a&gt; of &lt;a href="http://www.davidco.com/" target="_blank"&gt;David Allen&lt;/a&gt;. If you search the internet for GTD you will find a lot of information and tools you can use to realize GTD. Software that I use to realize GTD is &lt;a href="http://www.evernote.com/" target="_blank"&gt;Evernote &lt;/a&gt;and &lt;a href="http://www.rememberthemilk.com/" target="_blank"&gt;Remember The Milk&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-EvptjODoW54/TroxzZOgRPI/AAAAAAAAErM/LqdpXbAawPE/s1600/disc-2gb-pen.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="131" src="http://3.bp.blogspot.com/-EvptjODoW54/TroxzZOgRPI/AAAAAAAAErM/LqdpXbAawPE/s200/disc-2gb-pen.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;One of the things David Allen describes in his book is always ask yourself &lt;a href="http://zenhabits.net/why-whats-the-next-action-is-the-most-important-question/" target="_blank"&gt;"What's the next action?"&lt;/a&gt;. I believe you should apply this concept also to meetings. Always&lt;span style="background-color: transparent;"&gt;&amp;nbsp;identify a next action when you leave a meeting. If &amp;nbsp;you have a meeting that lasts one, two or even three hours and you leave the meeting without any actions, you should feel&amp;nbsp;uncomfortable...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Whenever I'm the chairman or facilitator of a meeting, I try to identify next action. In the worst case scenario a next action could be plan a meeting to&amp;nbsp;identify&amp;nbsp;the next action. I also try to delegate actions to other people, also one of the concept of GTD.&lt;br /&gt;&lt;br /&gt;The following&amp;nbsp;scenario&amp;nbsp;happened to me already several times:&lt;br /&gt;We had a meeting, identified several actions and we assigned the actions to the attendees. We left the meeting and nothing happened....&amp;nbsp;&lt;span style="background-color: transparent;"&gt;Where did it go wrong?&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-hZfFB9kWsDg/Troxz957SaI/AAAAAAAAErQ/m1nUpi5QJWY/s1600/sticky-note-recycling.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="200" src="http://4.bp.blogspot.com/-hZfFB9kWsDg/Troxz957SaI/AAAAAAAAErQ/m1nUpi5QJWY/s200/sticky-note-recycling.jpg" width="200" /&gt;&lt;/a&gt;&lt;span style="background-color: transparent;"&gt;Not everyone has a GTD system implemented and I notice some people don't write down their actions. They left the meeting and most of the time they met someone or dived back into their complex software/test problem.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent;"&gt;My solution is to help those people to set up a simple GTD system. As chairman or facilitator I take a pen and sticky notes with me. For every action we identify and assign to someone, I write down a stick note and hand the sticky note over to the person. He walks back to his desk with the note, it doesn't matter how many&amp;nbsp;conversation&amp;nbsp;he has on the way to his desk or how complex his current assignment is, he has a sticky note to remember him of the action.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This gives doesn't&amp;nbsp;guarantee&amp;nbsp;100%&amp;nbsp;success. However, it will help you in making sure actions are done.&lt;br /&gt;&lt;br /&gt;Do you have any other ideas to make sure actions are done?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-3555902990297228063?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/3555902990297228063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/11/pen-and-sticky-notes.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3555902990297228063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3555902990297228063'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/11/pen-and-sticky-notes.html' title='Pen and Sticky Notes'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-EvptjODoW54/TroxzZOgRPI/AAAAAAAAErM/LqdpXbAawPE/s72-c/disc-2gb-pen.jpg' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-331481828791815413</id><published>2011-10-06T10:08:00.000+02:00</published><updated>2011-10-06T10:08:52.934+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>Some of my notes of the leader's workshop with Mary and Tom Poppendieck</title><content type='html'>I attended the &lt;a class="vt-p" href="http://www.xebia.com/poppendieck"&gt;Leader's workshop&lt;/a&gt; of&lt;a class="vt-p" href="http://www.poppendieck.com/"&gt; Mary and Tom Poppendieck&lt;/a&gt;. I already read their books. However, I thought it would be very useful to attend a two days workshop covering lean management. I was right, it was very&amp;nbsp;useful&amp;nbsp;and gave me new energy to start working to implement lean thinking at &lt;a class="vt-p" href="http://www.ressoftware.com/"&gt;RES Software&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I made some notes for myself, thinks to think about, etc. I would like to share them with you instead of keeping them only to myself (I could also share my &lt;a class="vt-p" href="http://www.evernote.com/"&gt;Evernote&lt;/a&gt; Note with your...), maybe it triggers you to think about things. To be clear, all credits go to Mary and Tom Poppendieck! There is no real structure in this blog entry, just a mind dump of my thoughts that could be useful to trigger something in you.&lt;br /&gt;&lt;br /&gt;In the book &lt;a class="vt-p" href="http://www.amazon.com/Outliers-Story-Success-Malcolm-Gladwell/dp/0316017930"&gt;Outliers&lt;/a&gt;, author Malcolm Gladwell says that it takes roughly ten thousand hours of practice to achieve mastery in a field. Did you ever met a developer or tester who worked in IT for five years and called himself a principal?&amp;nbsp;Let's assume, a developer or tester is able to work 5 hours per day on software development of testing. 52 weeks a year, 52*5=260 potential working days, 25 days holiday (Yes, I know, we should not complain in the Netherlands), results in 235 potential working days, training, illness, and may public holidays, results in 230 working days. 230*5 = 1150 working hours per year. 10.000 / 1150 = 8,6 years... it will take at least 8,6 years for someone to become a master in his profession. Next time you meet someone who calls himself a principal with 5 experience in IT, you know he can't be a principal.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As we all know, you learn when you make mistake. What will happen when you work in an organization where you not allowed to make mistakes? Indeed, you will hide your mistake and&amp;nbsp;definitively not spend much attention on the mistake. As a result, you will not take all&amp;nbsp;opportunities&amp;nbsp;to learn from the mistakes.&amp;nbsp;As Lean manager you should create a culture where making mistakes is seen as an&amp;nbsp;opportunity&amp;nbsp;to learn. A mistake will give you a reason to spend time on improving the process/product. Make sure you take this change. Implementing this will require trust and courage, trust that you will learn and courage to make mistakes.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One of the attendees in the workshop said he asked his team members regularly how much happy time they had during the day. That's a question that could trigger some interesting answers... I would expect that when a developer has to answer this question he will count all programming hours as happy time. A tester all hours spent on improving the product as happy time. I'm sure a lot of meetings during the day, will bring the happy time down.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/-Da3upCscLHE/ToxT8AJfuHI/AAAAAAAAEZw/syhVOOfY9KA/s1600/graphknowledgeloss.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;The &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Chinese_whispers"&gt;Chinese wishers games&lt;/a&gt; proves (I know, not&amp;nbsp;scientifically) that handovers cause loss of information. To prevent this, make you sure have all the required disciplines in your team or at least close to your team. The more handovers, the more loss of knowledge. Something like the graph below.&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/-Da3upCscLHE/ToxT8AJfuHI/AAAAAAAAEZw/syhVOOfY9KA/s1600/graphknowledgeloss.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="192" src="http://4.bp.blogspot.com/-Da3upCscLHE/ToxT8AJfuHI/AAAAAAAAEZw/syhVOOfY9KA/s320/graphknowledgeloss.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Independent_software_vendor"&gt;independent software vendor&lt;/a&gt; (ISV) knowledge is your greatest asset, knowledge of the domain, knowledge of our software, knowledge of our processes. This knowledge in the heads of your employees. Therefore, knowledge == employees.&amp;nbsp;We should make sure people like working at RES Software, and fortunately they do :). When employees leave, knowledge leaves. When knowledge leave, real important asset is leaving.&lt;br /&gt;&lt;br /&gt;Some nice one-liners, or interesting statement to make you think:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Tom Poppedieck: "Source code is not for computers, it's for feature developers to change."...&lt;/li&gt;&lt;li&gt;All code that you write without an automated test harness is automatically legacy code...&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Conway's_Law"&gt;Conway's Law&lt;/a&gt;: "Structure of your organization is displayed in your code"...&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Did you hear about the three motivators according to Danial Pink? Watch this video, very interesting and you could use it to convince your management that giving extra awards based on production targets is not helping.&lt;/div&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://3.gvt0.com/vi/u6XAPnuFjJc/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/u6XAPnuFjJc&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/u6XAPnuFjJc&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://1.bp.blogspot.com/-TK1jF5vIz2Y/To1d63we2GI/AAAAAAAAEZ0/kQzrYtaYBHU/s1600/tshirtshaped.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="200" src="http://1.bp.blogspot.com/-TK1jF5vIz2Y/To1d63we2GI/AAAAAAAAEZ0/kQzrYtaYBHU/s200/tshirtshaped.png" width="180" /&gt;&lt;/a&gt;&lt;/div&gt;You should try to find T-Shirt shaped people for your people. T-Shirt shaped people? A person who is above average in for example testing, but is also capable of doing some basic programming and (because he is a native speaker of another language) he can do translations. This person is able to help also other disciplines in the team.&lt;br /&gt;&lt;br /&gt;If you are interested in how to organize a large project with Kanban and Lean ideas, read this great &lt;a class="vt-p" href="http://www.crisp.se/henrik.kniberg/lean-from-the-trenches.pdf"&gt;paper&lt;/a&gt; of &lt;a class="vt-p" href="http://www.crisp.se/henrik.kniberg"&gt;Henrik Kniberg&lt;/a&gt;. It's similar to &lt;a class="vt-p" href="http://www.crisp.se/henrik.kniberg/ScrumAndXpFromTheTrenches.pdf"&gt;Scrum From The Trenches&lt;/a&gt;, but this time about Lean.&lt;br /&gt;&lt;br /&gt;Did you ever happen to be in a project that missed it's deadlines? That is turns out nobody believed in the deadline, but no one spoke out his opinion? &amp;nbsp;A nice idea to prevent this comes from Henrik Kniberg. Vote how realistic the goal/deadline is every (two) week(s). Ask all team members to raise the number fingers they believe the goal can be met, 5 is absolute, 1 is totally not realistic. Write down the score and discuss the score, why does a person don't believe the goal is not realistic? Did you forgot about something, do you need extra capacity, redefine the scope, etc. One of the important things of lean is to make things visualize, this action&amp;nbsp;visualizes&amp;nbsp;the trust in of the team members in your project. It would be strange if you have a goal and no one of the team believes this goal is realistic...&lt;br /&gt;&lt;br /&gt;I often try to explain to people why projects based software development is different than product development software. Mary and Tom Poppendieck gave me some new arguments to explain the difference. The key, in my opinion is, that product based companies go for increasing market share in the long term. A product based company is not interested in short term strategies, your goal should to be in the business for the 47 years. For a project based company success is most of the times defined as keeping cost/schedule/scope under control. It's not about a long strategy. The project ends but when the project ends the software doesn't end...&lt;br /&gt;&lt;br /&gt;So far my public notes... if you have the&amp;nbsp;opportunity&amp;nbsp;to attend this workshop in the future I would advise you to do so. If you have any questions or you disagree with me, please comment. This gives me a opportunity to learn!&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-331481828791815413?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/331481828791815413/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/10/some-of-my-notes-of-leaders-workshop.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/331481828791815413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/331481828791815413'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/10/some-of-my-notes-of-leaders-workshop.html' title='Some of my notes of the leader&apos;s workshop with Mary and Tom Poppendieck'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-Da3upCscLHE/ToxT8AJfuHI/AAAAAAAAEZw/syhVOOfY9KA/s72-c/graphknowledgeloss.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7045483575513187903</id><published>2011-08-29T10:30:00.000+02:00</published><updated>2011-08-29T16:12:48.639+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Meet your team members</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://www.praxis.nl/uploadedImages/13335.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="200" src="http://www.praxis.nl/uploadedImages/13335.jpg" width="193" /&gt;&lt;/a&gt;&lt;/div&gt;Imagine, you start as project manager on a new project. There are some issues with the project, that is also of course the reason why they hired you. You have a tool box full of agile experiences to get the project going again. Is individual meetings with your team members one of those tools?&lt;br /&gt;&lt;br /&gt;If not, you really have to add the tool to your toolbox! As project manager or manager or any one who is leading a group of people, you should have regular peer to peer (P2P) or one to one(1-2-1) meetings with your team members. Plan 30 minutes, in room where you can discuss things&amp;nbsp;privately. Make sure you have some room in your agenda in case the meeting takes more time. It would be a shame when you have to stop a good conversation about something personal or emotional because you have another meeting. No meeting can be more important than a 1-2-1 meeting! You don't have to create a formal agenda or minutes, it should be a free meeting to discuss anything you would like to discuss. Of course, are you allowed to think about the meeting before the meeting starts...&lt;br /&gt;&lt;br /&gt;I hear some of you thinking, why should I plan a meeting? If we need to discuss something in our project, we will plan a meeting we already have so many meetings. In that case two remarks. Firstly, if you already have to many meetings, cancel all meetings and find out which one you really need. Secondly, in most cases you are too late... if one your team members would like to discuss with you that (s)he has an issue with a colleague, it's already too late. You should have prevented this to become an issue... Plan regular meetings, every 4 weeks for example. If you don't have anything to discuss your done within 5 minutes, otherwise take the time or even more time if necessary.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://www.p2p-weblog.com/wp-content/uploads/p2p.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://www.p2p-weblog.com/wp-content/uploads/p2p.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Why do you need to have P2P? Do you know what kind of project management style your team members like? Do they like freedom, just a global description of a task, or do they like to have small steps predefined? How are you able to facilitate/help/manage them if you don't know what they like?&lt;br /&gt;&lt;br /&gt;Do you know what the core motivation is of your team members? Why do they come to the office? Most of them will say for the money. ok but what's there next driver. What are their personal drivers besides money? For example:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;John loves to work in a team and deliver a great results with the team;&lt;/li&gt;&lt;li&gt;Jane loves to help other people, act as a coach;&lt;/li&gt;&lt;li&gt;George would like to get the best out of him self, be a winner;&lt;/li&gt;&lt;li&gt;Betty loves to work with new technologies, new concepts;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;If you know the personal drivers of people, you also know which people to ask (not assign!) for which tasks. For example, who would you ask for team with several new team members? Betty is maybe not a good choice... I think Jane would be a better choice. There is a small project, to prove a new concept, who would you ask?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Of course, it's not always possible to ask everyone for his or her ideal task. However, when you have know what drivers are of people, you are able to motivate people.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As project manager you should regular ask feedback about your self. What should you start doing as a project manager and what should you stop doing? I could imagine you feel afraid to ask these questions in a team room. The 1-2-1 meetings are a perfect moment to ask feedback about your self. Additionally, also to give feedback to the team members.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I hope this blog helps you and that you will add an extra tool to your agile toolbox.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Please leave your comments, when did you had a 1-2-1 with your manager or team members for the last time? Was it&amp;nbsp;useful?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7045483575513187903?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7045483575513187903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/08/meet-your-team-members.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7045483575513187903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7045483575513187903'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/08/meet-your-team-members.html' title='Meet your team members'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-3371974221323038906</id><published>2011-07-19T08:15:00.001+02:00</published><updated>2011-07-19T08:19:34.961+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>Inspected with Pride</title><content type='html'>&lt;br /&gt;I checked out my new laptop bag last week and found an interesting card my bag.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/-4ng4MJ3znio/TiQ_IfeapRI/AAAAAAAAERU/-FSgdbgcm7A/s1600/photo.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://2.bp.blogspot.com/-4ng4MJ3znio/TiQ_IfeapRI/AAAAAAAAERU/-FSgdbgcm7A/s320/photo.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This card raised a few questions...&lt;br /&gt;&lt;br /&gt;First of all, who is inspector 46... are there 82 inspectors working at the laptop bag factory, does every inspector has his own card, did inspector 46 really inspect my bag? I did some Googling... but inspector 46 is not very know on the internet.. he or she has a &lt;a class="vt-p" href="http://www.facebook.com/pages/Quality-Inspector-46/138401649559859"&gt;facebook &lt;/a&gt;page.&lt;br /&gt;&lt;br /&gt;Secondly, would (s)he sometimes inspect bags without pride...? Would&amp;nbsp;(s)he&amp;nbsp;still add this card or does&amp;nbsp;(s)he&amp;nbsp;also have other cards?&lt;br /&gt;&lt;br /&gt;Thirdly, what did&amp;nbsp;(s)he&amp;nbsp;inspect? Did only inspect the outside, the inside, did&amp;nbsp;(s)he&amp;nbsp;perform a stress test on my bag?&lt;br /&gt;&lt;br /&gt;And last, would this be something for testers and/or developers to add to their software...&lt;br /&gt;&lt;br /&gt;Imagine, the first time you open an application, it displays the message "This application has been tested with pride by tester 23", or when you open a menu item "This application has been tested and developed with pride by software development team Zulu".&lt;br /&gt;&lt;br /&gt;Why not? I believe most software development teams don't get the credits they deserve. They only get the complaints and issue/bug reports from customers. How often did you contacted the&amp;nbsp;help desk&amp;nbsp;to give them compliment about with a new feature (and asked explicit to also compliment the development team) or contacted the development team directly to give them some compliments? How often do you see a development team on stage to get the applause of customers?&lt;br /&gt;&lt;br /&gt;It's not in our nature to thank people. It's easy to complain. We, Dutch people certainly, are the masters in complaining.&lt;br /&gt;&lt;br /&gt;I would like to ask you: Next time you work with&amp;nbsp;software&amp;nbsp;that you really like, or does exactly what you would like to do it (=Quality), send a mail or contact the development team and thank them explicit!&lt;br /&gt;&lt;br /&gt;Or we could end up with all kind of messages in the application where development teams state how pride they are!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-3371974221323038906?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/3371974221323038906/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/07/inspected-with-pride.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3371974221323038906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3371974221323038906'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/07/inspected-with-pride.html' title='Inspected with Pride'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-4ng4MJ3znio/TiQ_IfeapRI/AAAAAAAAERU/-FSgdbgcm7A/s72-c/photo.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7963100875821383958</id><published>2011-05-03T13:31:00.157+02:00</published><updated>2011-06-17T16:46:28.909+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Tools'/><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Things a Tester can learn from a Programmer</title><content type='html'>&lt;i&gt;UPDATE: This blog was also published as an article in Testting Experience, read the article &lt;a class="vt-p" href="http://db.tt/JAZV2Cz"&gt;here&lt;/a&gt;.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;I sent a presentation with the topic Things a Tester can learn from a Programmer to the organization of &lt;a class="vt-p" href="http://www.agiletestingdays.com/"&gt;Agile Testing Days 2011&lt;/a&gt; in Berlin. Unfortunately, they did not select my session. However, I still would like to share the things a tester can learn from a programmer with you.&lt;br /&gt;&lt;br /&gt;There is often a healthy rivalry between testers and programmers. Programmers never read the specifications, never test their own software, it always works on their machines. Testers, always are nagging about details, act as if they are the customer, and bother programmers the whole day with their questions.&lt;br /&gt;&lt;br /&gt;I used to be a programmer and I'm currently responsible for test management in a development organization. (No Mr. Programmer, this is not a degradation ;) ) I discovered that it has some advantages as a tester when you were a programmer. I would like to share those advantages with you, maybe you&amp;nbsp;recognize&amp;nbsp;some of them or maybe it&amp;nbsp;inspires&amp;nbsp;you to think about some of the advantages and try to implement them in your organization.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Code Reviews&lt;/span&gt;&lt;br /&gt;Most programmers do code reviews on their code. It is a very good practice and I think almost required when you do no pair programming. Goal is to improve the quality of the code and increase the knowledge a certain area.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://www.viatechsoftware.com/Content/Images/code_review.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="212" src="http://www.viatechsoftware.com/Content/Images/code_review.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;As tester you should also implement reviews, review your test cases with programmers, customers and requirement engineers. Additionally, also automated test scripts should be reviewed.&lt;br /&gt;&lt;br /&gt;When you organize code reviews, don't focus only on what the code does. For example, one person is the scribe, one person looks if the code complies with the guide lines, one person looks if the code is&amp;nbsp;understandably, etc. The normal approach used by formal inspections.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Programming&lt;/span&gt;&lt;br /&gt;If there is one thing that programmers are good in, it is programming and organizing a software project. (Or at least most of the programmers). Depending on your background as tester, you have to admit that programmers have more knowledge about programming as you.&amp;nbsp;&lt;a class="vt-p" href="http://www.linkedin.com/in/bpettichord"&gt;Brett Pettichord&lt;/a&gt;&amp;nbsp;wrote several papers on&amp;nbsp;&lt;a class="vt-p" href="http://www.io.com/~wazmo/papers/"&gt;test automation&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Test Automation == programming!&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://3.bp.blogspot.com/_CfQsLbtlpHQ/TIznmrmmIKI/AAAAAAAAGVc/mAXQPUvhvPM/s1600/punched+card+reader.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="98" src="http://3.bp.blogspot.com/_CfQsLbtlpHQ/TIznmrmmIKI/AAAAAAAAGVc/mAXQPUvhvPM/s200/punched+card+reader.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Use the knowledge of your programmers when you start with test automation. Ask one or more programmers to become part of the team/project group who will start with the test automation. This has two advantages, first they become also committed to the project and secondly you are able to use their knowledge about software projects.&lt;br /&gt;&lt;br /&gt;When you set up test automation you should for example think about:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Version Control, where do you store your test scripts?&lt;/li&gt;&lt;li&gt;Labeling, do you label your scripts when you release software?&lt;/li&gt;&lt;li&gt;Project structure, do you create some kind of framework?&lt;/li&gt;&lt;li&gt;Project structure, are you able to work with multiple testers in the same project?&lt;/li&gt;&lt;li&gt;Language, how do you handle other language? Do your script support multi languages?&lt;/li&gt;&lt;li&gt;When do you update your test automation tool, at the start of a new release, during a release, one day before the end day of the project?&lt;/li&gt;&lt;/ol&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;If it looks good then it is good&lt;/span&gt;&lt;br /&gt;This section contains (some) prejudices, I already&amp;nbsp;apologize&amp;nbsp;on forehand.&lt;br /&gt;&lt;br /&gt;Programmers don't care too much about the details. They focus on the main requirements and don't spend too much time on all the exceptions. As a tester it your job to think about all the exceptions.&lt;br /&gt;&lt;br /&gt;Some times (I know I'm walking thin ice) a testers focus too much on the details and exceptions. Most software should be good enough, most software doesn't have to be perfect!&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://www.geraldmweinberg.com/Site/About_Jerry.html"&gt;Gerald Weinberg&lt;/a&gt; description of quality is: "value of a product", extended by &lt;a class="vt-p" href="http://www.satisfice.com/"&gt;James Bach&lt;/a&gt; and/or &lt;a class="vt-p" href="http://www.developsense.com/"&gt;Michael Bolton&lt;/a&gt; to&amp;nbsp;quality is: "value of a product to someone who matters". With this description, it is possible to deliver a product that contains bugs in exceptional cases/some areas. If the user never uses those areas, he is not interested in spending too much time on testing those areas.&lt;br /&gt;&lt;br /&gt;Be&amp;nbsp;careful&amp;nbsp;as tester to spend too much time on testing certain areas. Act as a programmer sometimes and don't spend too much time on testing in all cases.&lt;br /&gt;&lt;br /&gt;(Ok, start flaming me about all assumptions I made....)&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Pair Programming&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://rarevictorian.com/wp-content/uploads/2008/03/Meeks-Stanton-Hall-Armchairs-Pair-702760.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="150" src="http://rarevictorian.com/wp-content/uploads/2008/03/Meeks-Stanton-Hall-Armchairs-Pair-702760.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;One of the good practices of Extreme Programming is &lt;a class="vt-p" href="http://www.extremeprogramming.org/rules/pair.html"&gt;Pair Programming&lt;/a&gt;. Pair Programming is code created by two people working together at a single computer. Pair Programming has many advantages, and believe me, it's not inefficient.&lt;br /&gt;&lt;br /&gt;As tester you could work in pair in two areas,&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Pair Testing, read this &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2008/07/pair-testing.html"&gt;blog&lt;/a&gt; of me about pair testing;&lt;/li&gt;&lt;li&gt;Pair Programming. create test automation scripts with two testers working at a single computer;&lt;/li&gt;&lt;/ul&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Test Dojo's&lt;/span&gt;&lt;br /&gt;I'm already applying my next section, be lazy... ;) Everything about test dojo's is already &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/11/dojo-who-short-introduction-to-dojos.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Be lazy&lt;/span&gt;&lt;br /&gt;A good habit of a good programmer is, laziness. He hates repetitive tasks and always tries to automate boring and/or repetitive tasks with macros, scripts or (custom made) tools.&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/_1OFe6OW0NaI/TGGUsQ9zb2I/AAAAAAAACMA/f-0I--ugXys/s1600/lazy.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="138" src="http://4.bp.blogspot.com/_1OFe6OW0NaI/TGGUsQ9zb2I/AAAAAAAACMA/f-0I--ugXys/s200/lazy.jpg" width="200" /&gt;&lt;/a&gt;I often see testers who do a lot of&amp;nbsp;repetitive&amp;nbsp;tasks, for example install a new version of the software every morning, scan log files for errors, create complex reports with standard reports, etc. Why not start up your machine at 6.00am and start automatically an &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/10/automate-your-daily-test-work-with.html"&gt;AutoIT &lt;/a&gt;script to start the installation, create a &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/10/keep-eye-on-your-log.html"&gt;tool &lt;/a&gt;to scan your logs automatically or create some SQL statement to export the data to Excel?&lt;br /&gt;&lt;br /&gt;Be creative and ask support of your programmers to automate your boring daily routines.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Use Patterns&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;Every programmer know the Gang of Four and the book they wrote, &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Design_Patterns_(book)"&gt;Design Patterns&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://dezignus.com/wp-content/uploads/2009/01/jp-geometric-patterns.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="200" src="http://dezignus.com/wp-content/uploads/2009/01/jp-geometric-patterns.png" width="196" /&gt;&lt;/a&gt;A pattern is a formal way of documenting a solution to a design problem in a particular field of expertise. My&amp;nbsp;definition&amp;nbsp;of a pattern is: a predefined described solution for a problem that occurs often.&lt;br /&gt;&lt;br /&gt;Programmers use design patterns very often, a pattern that is often used is a&amp;nbsp;&lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Singleton_pattern"&gt;singleton&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Why not create test patterns for tests that you have to test frequently? It's not about features you have to test every release. It is about problems that you frequently face, and that can be solved by the same approach every time. Read some information on this &lt;a class="vt-p" href="http://www.testingreflections.com/node/view/9"&gt;blog&lt;/a&gt; about software test patterns.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;How to write good comments&lt;/span&gt;&lt;br /&gt;As programmer I wrote and read a lot of comments in the code. Some example of comments (in pseudo code) you often see are:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;//If a &amp;lt; 1 then calculate a new value for X&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;if a&amp;lt;1 then&amp;nbsp;calculateX;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;try&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;&amp;nbsp; CalculateNewDate;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;except&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;&amp;nbsp; //If an exception occurs during calculating of new date we raise an exception&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;&amp;nbsp; raise E.Msg("Calculation new date has failed");&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;end;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://michelemartin.typepad.com/thebambooprojectblog/images/2007/12/18/comments.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="123" src="http://michelemartin.typepad.com/thebambooprojectblog/images/2007/12/18/comments.jpg" width="200" /&gt;&lt;/a&gt;&lt;span id="goog_501465548"&gt;&lt;/span&gt;&lt;span id="goog_501465549"&gt;&lt;/span&gt;&lt;a class="vt-p" href="http://draft.blogger.com/"&gt;&lt;/a&gt;Tell me, what is the value of this kind of comments? This is the so called how-we-do-it comments, adding no value. Every programmer can read the statements above, it has no value to describe the statement again in the comments.&lt;br /&gt;&lt;br /&gt;A good programmer writes why-do-we-do-this comments. For example in the above code, he describes why a should be less than 1 and why he raises an exception.&lt;br /&gt;&lt;br /&gt;As tester always try to write why-do-we-do-this comments, in your test scripts and in your automated test scripts. How you test, that is clear, describe why you are testing the software.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Conclusion&lt;/span&gt;&lt;br /&gt;Let's end this blog with a conclusion...&lt;br /&gt;&lt;br /&gt;I know I used a lot of&amp;nbsp;prejudices and assumed also a lot.... but try to ignore the prejudices and all assumptions and see if there is something you can learn from the programmers.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;Did I miss anything, or did I exaggerate&amp;nbsp;too much... please leave a comment for me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7963100875821383958?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7963100875821383958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/05/things-tester-can-learn-from-programmer.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7963100875821383958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7963100875821383958'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/05/things-tester-can-learn-from-programmer.html' title='Things a Tester can learn from a Programmer'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_CfQsLbtlpHQ/TIznmrmmIKI/AAAAAAAAGVc/mAXQPUvhvPM/s72-c/punched+card+reader.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-3153154833698149930</id><published>2011-04-29T16:26:00.001+02:00</published><updated>2011-04-29T16:27:12.551+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tools'/><title type='text'>My Essential Tools</title><content type='html'>I have some tools installed on my machine that I use&amp;nbsp;regularly&amp;nbsp;and make my life easy. Maybe you already know some of those tools, maybe not... any way I write this blog to share them with you. Here are the tools, in random order:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.7-zip.org/"&gt;7-Zip&lt;/a&gt;, despite all the terra bytes available, I still need some times to archive files, the tool I use is 7-Zip. An open source tool, and also capable of opening java ear files for example;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.autoitscript.com/site/"&gt;AutoIt&lt;/a&gt;, essential for me to automate anything I would like to automate. Read this &lt;a href="http://softwaredevelopmentisfun.blogspot.com/2010/10/automate-your-daily-test-work-with.html"&gt;blog &lt;/a&gt;for more information;&lt;/li&gt;&lt;li&gt;&lt;a href="http://lifehacker.com/#!341950/belvedere-automates-your-self+cleaning-pc"&gt;Belvedere&lt;/a&gt;, keep your desktop or any other folder on your hard drive organized and under control with Belvedere, an automated Windows file management tool. Use Belvedere's friendly interface to create advanced rules to move, copy, delete, rename, or open files based on their name, extension, size, creation date, and more;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.debugmode.com/wink/"&gt;Wink&lt;/a&gt;,&amp;nbsp;wink is a tutorial and presentation creation software, primarily aimed at creating tutorials on how to use software (like a tutor for MS-Word/Excel etc). Using Wink you can capture screenshots, add explanations boxes, buttons, titles etc and generate a highly effective tutorial for your users. I&amp;nbsp;personally&amp;nbsp;use Wink to create movies to show programmers the reproduction steps for complex issues;&lt;/li&gt;&lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/cc817881"&gt;Desktops&lt;/a&gt;, Desktops allows you to organize your applications on up to four virtual desktops. Read email on one, browse the web on the second, and do work in your productivity software on the third, without the clutter of the windows you're not using. After you configure hotkeys for switching desktops, you can create and switch desktops either by clicking on the tray icon to open a desktop preview and switching window, or by using the hotkeys. Most Virtual Desktops applications on Windows have the disadvantage that some applications still show up on other desktops, no with this app!&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.voidtools.com/"&gt;Everything&lt;/a&gt;,&amp;nbsp;Everything is an tool that locates files and folders by filename instantly for Windows.&lt;br /&gt;Unlike Windows search Everything initially displays every file and folder on your computer.&amp;nbsp;You type in a search filter to limit what files and folders are displayed. Only one disadvantage, it only works on local NTFS volumes;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mediachance.com/free/multimon.htm"&gt;MultiMon&lt;/a&gt;, very&amp;nbsp;useful&amp;nbsp;application when you multiple monitors. It adds a second taskbar to your extended desktop on monitor 2 and only shows the application in the taskbar from that monitor;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.moo0.com/?top=http://www.moo0.com/software/XpDesktopHeap/"&gt;XpDesktopHeap&lt;/a&gt;, when you have memory issues with the app Desktop, use this application to increase your heap size;&lt;/li&gt;&lt;li&gt;&lt;a href="http://notepad-plus-plus.org/"&gt;Notepad++&lt;/a&gt;, a very very very&amp;nbsp;powerful&amp;nbsp;text editor. Don't use Windows Notepad, use this application!&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.paint.net/"&gt;Paint.net&lt;/a&gt;, I'm not very experienced with photo editing. A basic tool for me, is Paint.net. Paint.NET is free image and photo editing software;&lt;/li&gt;&lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896653"&gt;ProcessExplorer&lt;/a&gt;, a very very very&amp;nbsp;powerful&amp;nbsp;task manager. It is showing much more information then the Windows task manager. A must have for every professional Windows user, certainly for people working in software development;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bhelpuri.net/Snippy/"&gt;Snippy&lt;/a&gt;, sometimes less is more. With this application (only works on Windows XP) &amp;nbsp;you can easily create screenshots or copy parts from the screen to the clipboard;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.uderzo.it/main_products/space_sniffer/"&gt;SpaceSn&lt;/a&gt;&lt;a href="http://www.uderzo.it/main_products/space_sniffer/"&gt;iffer&lt;/a&gt;, SpaceSniffer is an application that lets you understand how folders and files are structured on your disks. By using a &lt;a href="http://www.cs.umd.edu/hcil/treemap-history/"&gt;Treemap&lt;/a&gt;&amp;nbsp;visualization layout, you have immediate perception of where big folders and files are placed on your devices;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html"&gt;Oracle SQL Developer&lt;/a&gt;, SQL Developer is a free and fully supported graphical tool for database development. With SQL Developer, you can browse database objects, run SQL statements and SQL scripts, and edit and debug PL/SQL statements. It not only supports Oracle, it also supports MySQL, SQL Server, MSAcces and partially Sybase;&lt;/li&gt;&lt;li&gt;&lt;a href="http://translateclient.com/"&gt;TranslateCli&lt;/a&gt;&lt;a href="http://translateclient.com/"&gt;ent&lt;/a&gt;, a free translator for Windows which enables the fast translation of text in the most applications, such as Web Browsers, Office apps, Messengers and etc. using the Google Translate service;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.xmind.net/"&gt;XMind&lt;/a&gt;, an open source to create Mindmaps. It looks nice and is very user friendly to use;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;That are the tools that I used, besides Skype, Office and Chrome. By the way, the order was not completely random...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If &amp;nbsp;you have any tips for me please leave a comment with the tool I really should use.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-3153154833698149930?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/3153154833698149930/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/04/my-essential-tools.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3153154833698149930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3153154833698149930'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/04/my-essential-tools.html' title='My Essential Tools'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-1914941122560130108</id><published>2011-04-08T15:47:00.000+02:00</published><updated>2011-04-08T15:47:20.113+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><title type='text'>Bug Hunt Sessions</title><content type='html'>In our development process we expect teams to do all testing necessary to deliver quality software. One of the disadvantages of our approach is that all product backlog&amp;nbsp;(PBL)&amp;nbsp;items are tested by testers (or if necessary and possible programmers or requirement engineers) from the&amp;nbsp;team who also builds the software. In most cases this is not a problem. However, sometimes it could really improve the quality when others testers (or programmers, requirement engineers and/or technical writers) from other teams test the software.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are some PBL items that don’t need to be tested by other teams, like business rules. However, PBL items:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;that could affect&amp;nbsp;client of server performance;&lt;/li&gt;&lt;li&gt;that could affect&amp;nbsp;user interface of for example a Web client (that can't be tested automatically);&lt;/li&gt;&lt;li&gt;are about usability;&lt;/li&gt;&lt;li&gt;that are high risk;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;are candidates to be tested also by other teams. However, in a Scrum environment every team has his own planning.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We introduced the Bug hunt sessions.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A regular meeting, every two weeks where everyone is free to step in and do some testing. Teams are able to report PBL items that can be tested in the bug hunt sessions. It is a regular meeting of one hour, the impact on the planning is low. Therefore, other team members are willing more easy to participate.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The approach of Bug Hunt Sessions is:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;We introduce the concept to all development employees and ask who is interested to participate in these sessions;&lt;/li&gt;&lt;li&gt;We plan a recurrent meeting, every two weeks on Friday from 11:30 – 12:30 CET (16:00 – 17:00 IST);&lt;/li&gt;&lt;li&gt;When a team has a subject for the bug hunt session, they inform all teams and publish a link to the information required for the participants;&lt;/li&gt;&lt;li&gt;One day for the session, everyone is reminded again;&lt;/li&gt;&lt;li&gt;The bug hunt session will be started with a short introduction (maximum ten minutes) by the team who send in the topic using for example &lt;a class="vt-p" href="http://www.gotomeeting.com/fec/"&gt;GotoMeeting&lt;/a&gt;. If a team needs more than ten minutes to explain the topic, it is too complex for the bug hunt session;&lt;/li&gt;&lt;li&gt;The session starts, maximum one hour. During the session the&amp;nbsp;organizing&amp;nbsp;team is available for support;&lt;/li&gt;&lt;li&gt;All findings are reported to the&amp;nbsp;organizing&amp;nbsp;team by email or Skype. The organizing team creates the calls and filters out any double reported calls;&lt;/li&gt;&lt;li&gt;The person who will find the most valuable call(s) will be Mr. or Mrs. Bug-Hunter until a new session is organized :)&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;We are organizing the first session the coming months, as soon as we have some experiences I will share them with you. And of course we will improve our approach after every iteration, bug hunt session.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Are you already familiar with such a concept? Do you you believe everything should always be tested by only the team who develops the software or should there always be an&amp;nbsp;independent&amp;nbsp;tester be involved? Please leave your comments.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-1914941122560130108?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/1914941122560130108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/04/bug-hunt-sessions.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/1914941122560130108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/1914941122560130108'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/04/bug-hunt-sessions.html' title='Bug Hunt Sessions'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-6039930006862343595</id><published>2011-03-24T11:09:00.000+01:00</published><updated>2011-03-24T11:09:09.935+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tools'/><title type='text'>Send Skype Messages Automatically to publish the Tip of the Day</title><content type='html'>I work in a project with testers located on different sites. Additionally, at one site they are also located in different rooms. I always prefer face-to-face communication, but be honest, sometimes a group chat is also very effective to quickly find the answer for your question. Questions are, which team worked in this module, why are all automated test suites failing, etc.&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://about.skype.com/media-library/logos/skype-logo-placeholder.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="128" src="http://about.skype.com/media-library/logos/skype-logo-placeholder.png" width="200" /&gt;&lt;/a&gt;We use &lt;a class="vt-p" href="http://www.skype.com/"&gt;Skype &lt;/a&gt;as communication tool and Skype has a feature to set up a &lt;a class="vt-p" href="https://support.skype.com/en/faq/FA1005/How-do-I-start-a-group-instant-message?frompage=search&amp;amp;q=group+chat&amp;amp;fromSearchFirstPage=false"&gt;group chat&lt;/a&gt;. We use this as a virtual test room, where testers can meet and ask questions. It is not intended for peer discussions.&lt;br /&gt;&lt;br /&gt;In our last&amp;nbsp;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2008/03/our-first-why-did-we-miss-that-session.html"&gt;How-Did-We-Miss-That-Sessions&lt;/a&gt; we identified some tips for testers. I could send those tips to the testers once a week, or publish them somewhere on our intranet. However, I don't believe testers will read a &lt;i&gt;tip document&lt;/i&gt; on the intranet and I will forget to send the tips every week.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://www.clipshopshare.com/wp-content/uploads/2011/03/tip-of-the-day.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://www.clipshopshare.com/wp-content/uploads/2011/03/tip-of-the-day.jpg" width="198" /&gt;&lt;/a&gt;&lt;/div&gt;The solution is to automatically send a chat with the tip of the day to the virtual test room, the Skype chat were all testers are present. I have created a small script with &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/10/automate-your-daily-test-work-with.html"&gt;AutoIT&lt;/a&gt;, using the &lt;a class="vt-p" href="http://developer.skype.com/accessories"&gt;Skype API&lt;/a&gt; to send a tip of the day every day to the group chat. I have scheduled this script automatically with Windows Task scheduler and it reads the tip of the day from a text file.&lt;br /&gt;&lt;br /&gt;I have included the script and text file I use in this &lt;a class="vt-p" href="http://dl.dropbox.com/u/834758/SendTipOfTheDayToGroupChat.zip"&gt;zip &lt;/a&gt;file. Feel free to use it and adapt it to your own specific situation. For more information on how to use AutoIT and the Skype API read this &lt;a class="vt-p" href="http://www.autoitscript.com/forum/topic/72869-skype-com-examples-skype4comlib/"&gt;thread&lt;/a&gt; on the &lt;a class="vt-p" href="http://www.autoitscript.com/forum/"&gt;AutoIT Forum&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you have any questions feel free to contact me!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-6039930006862343595?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/6039930006862343595/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/03/send-skype-messages-automatically-to.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6039930006862343595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6039930006862343595'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/03/send-skype-messages-automatically-to.html' title='Send Skype Messages Automatically to publish the Tip of the Day'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-5279547558178501936</id><published>2011-03-16T19:24:00.003+01:00</published><updated>2011-03-17T08:22:25.517+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>just a Development Department</title><content type='html'>&lt;div&gt;This blog describes my current vision, important values and the required focus of an agile software department. This text is not a silver bullet, it is my personal vision. It is a summary of my experiences, blogs, knowledge and ideas. It is based on visions of, for example, Jeff Sutherland, Mary Poppendieck, Micheal Bolton, Jurgen Appelo and others. &lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;What is the goal of a Software Department&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="https://lh5.googleusercontent.com/-vwa57f4ip_M/TYG2Q464GAI/AAAAAAAAD_c/e-c-5lFIicc/s1600/image02.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="150" src="https://lh5.googleusercontent.com/-vwa57f4ip_M/TYG2Q464GAI/AAAAAAAAD_c/e-c-5lFIicc/s200/image02.jpg" width="200" /&gt;&lt;/a&gt;The primary objective of a software development department is to deliver, on a regular basis, quality software using a light-weight process.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Regular&lt;/b&gt;: when a product is not released on a regular basis, there is no link with the business. In today’s markets, it is required for almost all organizations to be able to deliver new features on a frequent basis.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Quality&lt;/b&gt;: quality is the value of a product to someone who matters. A product that does not deliver value to a user is of low quality. A product could have several bugs and still have much value, the other way around is also possible.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Light-weight process&lt;/b&gt;: a development process should be based on a light-weight process framework. It should contain no or as little overhead as possible. There should be a process in place that teams can rely on; a process with clear and meaningful process steps. It could be Scrum. However, any light-weight process is possible. The process should empower teams to deliver software.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;What Kind of Process?&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Software development is a creative and empirical process. It is not possible to compare software development with, for example, construction work or an assembly line. It requires a different approach when you need to solve problems. In most cases, it is not possible to use common root-cause analyses. Problems in a software development process require, in most cases, systems thinking.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Trust in Employees&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="https://lh3.googleusercontent.com/-3L_6x-_AIu4/TYG2QKHFA2I/AAAAAAAAD_U/MD3AX8DjdTk/s1600/image00.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="156" src="https://lh3.googleusercontent.com/-3L_6x-_AIu4/TYG2QKHFA2I/AAAAAAAAD_U/MD3AX8DjdTk/s200/image00.jpg" width="200" /&gt;&lt;/a&gt;I believe you should trust your employees. You should trust employees that they deliver the best possible within the given constraints of the available processes and tooling. When teams, processes and tooling are stable, the output will be stable. There will be some variation in the output. However, this is statistic variation.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Measuring Productivity or Creating the Possibility to be Productive&lt;/span&gt;&lt;/div&gt;&lt;div&gt;In books and blogs, people talk about hyper-productive teams. When is a team hyper productive? I believe measuring the outcome of a team is not how you determine if a team is hyper productive. As management, you should create a hyper-productive environment for development teams. I wrote a &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2011/03/hyper-productive-dont-measure-outcome.html"&gt;blog&lt;/a&gt; about this topic. Below is a short summary.&lt;br /&gt;&lt;br /&gt;The most important environment variables are:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Constantly Improving;&lt;/li&gt;&lt;li&gt;Good Preparation;&lt;/li&gt;&lt;li&gt;No Dependencies;&lt;/li&gt;&lt;li&gt;Have Fun.&lt;/li&gt;&lt;/ol&gt;In the sections below you will find more information about the above values.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Constantly Improving, A team should constantly improve themselves, remove impediments constantly. A software development process is never stable, technique changes, requirements change, the organisation changes, knowledge of people changes, everything changes;&lt;br /&gt;&lt;br /&gt;Good Preparation, Agile or not, you need to prepare your work before you start working. I believe when product backlog (PBL) items are well prepared, the team is able to have a high velocity. Preparing PBL items for me is enough communication between team and product owner. The team should clearly know what the goals are of the PBL items, it should be clear what the product owner expects and there should be some rough ideas about the technical solutions.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;No Dependencies,&amp;nbsp;Dependencies between teams increase communication. Communication is difficult, there are a lot of blogs/books/articles about how difficult communication is.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Have Fun, when a team doesn't have &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Fun"&gt;fun&lt;/a&gt;, it will never become hyper productive. Are you motivated to do something that you don't enjoy?&amp;nbsp;Fun is not only telling jokes, fun is much more for example: good hardware, a comfortable&amp;nbsp;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office.html"&gt;Office&lt;/a&gt;, appreciated by colleagues or management.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When all the above is in place, I believe a team can become hyper productive. How do you know when your team becomes hyper productive... you will know trust me, trust your own gut feeling.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Transparency&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="https://lh5.googleusercontent.com/-frlSWQ6PogE/TYG2Qa0q6CI/AAAAAAAAD_Y/rMDQC0fwkys/s1600/image01.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="150" src="https://lh5.googleusercontent.com/-frlSWQ6PogE/TYG2Qa0q6CI/AAAAAAAAD_Y/rMDQC0fwkys/s200/image01.jpg" width="200" /&gt;&lt;/a&gt;Management should be as transparent as possible. It is dangerous to think employees are not able to handle certain information. When something is decided or not, and the information about the why is lacking, people will make assumptions. This will often lead to a lot of unrest. It also implies that you think your employees are not capable of handling certain information. Again, this is not showing that you trust your employees. There are of course situations when information is not ready to be shared with employees, such as some financial data, discussions about reorganizations or issues related to individuals.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Standard Process&lt;/span&gt;&lt;/div&gt;&lt;div&gt;As said before, a process is important. You should strive to have standard processes in place that are used, and therefore understood, by all teams. As soon as there is a standard process, an organization will always be able to rely on this process. It should always be possible to deviate from the standard process. However, when there is a standard process in place, it is possible to deviate. When there is no standard process, every deviation could be the standard.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Teams Versus Individuals&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="https://lh3.googleusercontent.com/-QR3SDalKkY4/TYG2RLX9w6I/AAAAAAAAD_g/wM1KAUuvo5U/s1600/image03.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="196" src="https://lh3.googleusercontent.com/-QR3SDalKkY4/TYG2RLX9w6I/AAAAAAAAD_g/wM1KAUuvo5U/s200/image03.jpg" width="200" /&gt;&lt;/a&gt;I speak about teams and not about individual programmers, testers or technical writers. This is with reason and not without. No individual is able to deliver software alone. Building and delivering complex software is something that needs to be done with a group of people, a team. Individuals are not able to deliver the same quality software as teams are. When you have a good team, 1+1 = 3 or even more.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Discuss or Just Start...&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Starting to use a new tool, process or building a new product is difficult. However, it will never be a success when you only talk about it. When something new comes in, discuss it shortly and start using it or build it. After the first days/weeks you will have gained new insights and you will be able to make better decisions. Additionally, you could use retrospectives to improve the team or process.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Scrum Evolution&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="https://lh3.googleusercontent.com/-fEtaqdMF51M/TYG2P0cG09I/AAAAAAAAD_Q/KQKpmRTn1ZQ/s1600/image04.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="https://lh3.googleusercontent.com/-fEtaqdMF51M/TYG2P0cG09I/AAAAAAAAD_Q/KQKpmRTn1ZQ/s200/image04.jpg" width="200" /&gt;&lt;/a&gt;Many teams start using Scrum or any agile method leaving sometime between the iterations. The time between the iterations is used to finish up the old iteration and to prepare the new iteration. When a team is able to finish and prepare the iteration during the iteration, the time between the iterations is no longer needed. A next step is to prepare every product backlog item when it is needed and to start working on the product backlog item when it is possible. In this last scrum variant, the team slowly moves to Kanban. A Kanban process delivers new features continuously. This requires a very high quality automated environment of for example test automation and build environments. It should be possible to deliver software at any moment in time.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Conclusion&lt;/span&gt;&lt;/div&gt;&lt;div&gt;This blog described several important aspects of software development. It is my current vision. However, this vision can change every day, week or month. I try to continuously improve myself by using the feedback from my environment. Is there currently an organization that has all of the above in place, probably not? Most important, however, is to realize that in most organizations, there is always room for improvement. The most important thing that an organization can achieve, is to realize that there is almost always room for improvement and that the organization is willing to improve.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-5279547558178501936?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/5279547558178501936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/03/just-development-department.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/5279547558178501936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/5279547558178501936'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/03/just-development-department.html' title='just a Development Department'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh5.googleusercontent.com/-vwa57f4ip_M/TYG2Q464GAI/AAAAAAAAD_c/e-c-5lFIicc/s72-c/image02.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-3093824069101598581</id><published>2011-03-04T13:07:00.000+01:00</published><updated>2011-03-04T13:07:16.348+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>Made a mistake: "I should not push the team"</title><content type='html'>I don't know why, but I would like to share my mistake (during work time) of the day/week with you. Maybe to prevent you for making the same mistake. On the other hand, I made the mistake already a few times in my career as scrum master. Maybe confessing this mistake to the world, and you, prevents me of making the mistake again. However, I'm afraid I will the mistake again somewhere in the future.&lt;br /&gt;&lt;br /&gt;You are probably wondering what did I do?&amp;nbsp;&amp;nbsp;I'm coaching a new team, they started two months ago and are all experienced with working in an agile environment.&amp;nbsp;I thought I'm a great scrum master, and I know how you should work together as a team.I know what is important for you....&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://www.nataliedee.com/050304/becauseisayso.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="138" src="http://www.nataliedee.com/050304/becauseisayso.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Hmmmmm, could be... &amp;nbsp;I tried to&amp;nbsp;(indirectly)&amp;nbsp;convince the team that they should work as I think it should be. No surprise, they disagreed... and they are absolutely right!Who am I to say how they should work/communicate... is there any issue in the team&amp;nbsp;currently? No, there isn't... why should the team than work as I think they should...&lt;br /&gt;&lt;br /&gt;It resulted in discussion, that absolutely had no value. After the discussion, with only losers, I took a cup of coffee and did a short retro on myself. The conclusion is in this blog.&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="https://lh4.googleusercontent.com/-u3gvtZ02GDw/TXDVwMEvVnI/AAAAAAAAD-0/2lQ_s04v6xM/s1600/white-don-t-push-give-space-2c-women-s-t-shirts_design.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="200" src="https://lh4.googleusercontent.com/-u3gvtZ02GDw/TXDVwMEvVnI/AAAAAAAAD-0/2lQ_s04v6xM/s200/white-don-t-push-give-space-2c-women-s-t-shirts_design.png" width="200" /&gt;&lt;/a&gt;And now? I will take a few steps back from the team, let them find their own way. And as soon as they encounter an issue, in the process, communication or something else I can share my experience with them. It is then up to the team to decide how to improve. And I think discussing the issue with the team is already enough for them, they probably don't need my experience. The only thing that I should do is facilitate the team to discuss the problem and find a solution. I should trust the team that they are capable of organizing them selves, and deliver quality software with a controlled process.&lt;br /&gt;&lt;br /&gt;I know how a scrum master should act, I know that telling people what to do doesn't work, I know I should have trust in people. Still, I make this mistake sometimes. Hopefully for the last time, if not I already&amp;nbsp;apologize&amp;nbsp;to you for the situation when you are part of a new team that I coach. Just remember me to this blog, "I should not push the team".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-3093824069101598581?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/3093824069101598581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/03/made-mistake-i-should-not-push-team.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3093824069101598581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3093824069101598581'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/03/made-mistake-i-should-not-push-team.html' title='Made a mistake: &quot;I should not push the team&quot;'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh4.googleusercontent.com/-u3gvtZ02GDw/TXDVwMEvVnI/AAAAAAAAD-0/2lQ_s04v6xM/s72-c/white-don-t-push-give-space-2c-women-s-t-shirts_design.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-2827521749977395077</id><published>2011-03-01T16:03:00.000+01:00</published><updated>2011-03-01T16:03:15.262+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>Hyper productive..., don't measure the outcome</title><content type='html'>&lt;a class="vt-p" href="http://www.scrumalliance.org/learn_about_scrum"&gt;Scrum&lt;/a&gt;&amp;nbsp;is great, when implemented&amp;nbsp;successfully&amp;nbsp;it gives you several &lt;a class="vt-p" href="http://www.scrumalliance.org/pages/benefits_of_scrum"&gt;benefits&lt;/a&gt;. One of the benefit that is also often mentioned is hyper productive output of your development teams.&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="https://lh6.googleusercontent.com/-G3HzZNW511w/TW0Il-WJFXI/AAAAAAAAD-w/H-k_EG_7c-8/s1600/HyperproductiveGraph.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="192" src="https://lh6.googleusercontent.com/-G3HzZNW511w/TW0Il-WJFXI/AAAAAAAAD-w/H-k_EG_7c-8/s320/HyperproductiveGraph.png" width="320" /&gt;&lt;/a&gt;I read several blogs about hyper productive and I could not find a real definition of hyper productivity. It is not defined as x % more output than current output. What if a team improves themselves and&amp;nbsp;only the quality is improved? Is the team become hyper productive? What if you have a team with&amp;nbsp;freshers&amp;nbsp;and one team with the most experienced team members of your organisation, can both teams become hyper productive? I believe that measuring the outcome of a team is possible but if this proves if a team is hyper productive... I don't believe so.&lt;br /&gt;&lt;br /&gt;After some discussions with companies/organisations like &lt;a class="vt-p" href="http://www.bol.com/"&gt;Bol.com&lt;/a&gt; and reading books/blogs about Lean (management) last months I came to conclusion: "You should not measure the outcome, but create the environment to become hyper productive". An organisation should do everything to set the team in position to score. If the team is able to score you should have trust they will score the goals.&lt;br /&gt;&lt;br /&gt;I believe a team needs the following to become hyper productive:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Constantly Improving;&lt;/li&gt;&lt;li&gt;Good Preparation;&lt;/li&gt;&lt;li&gt;No Dependencies;&lt;/li&gt;&lt;li&gt;Have Fun.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;In the sections below you will find more information about the above values.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Constantly Improving&lt;/span&gt;&lt;/div&gt;&lt;div&gt;A team should constantly improve themselves, remove impediments constantly. A software development process is never stable, technique changes, requirements change, the organisation changes, knowledge of people changes, everything changes. When a team does not improve themselves, by adapting themselves to the new environment they will not benefit from the new&amp;nbsp;opportunities&amp;nbsp;and even be slowed down when new impediments arise.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Good Preparation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Agile or not, you need to prepare your work before you start working. I believe when product backlog&amp;nbsp;&amp;nbsp;(PBL)&amp;nbsp;items are well prepared, the team is able to have a high velocity.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://image.made-in-china.com/2f0j00kfLaCcgITTto/Dual-Comparment-Picnic-Pack-Bags-Pb003-.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="197" src="http://image.made-in-china.com/2f0j00kfLaCcgITTto/Dual-Comparment-Picnic-Pack-Bags-Pb003-.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;I hear you thinking, what is well prepared? Do I need to write a complete functional and technical design of 42 pages? I would say it depends.... However, I tend to say no :)&lt;br /&gt;&lt;br /&gt;Preparing PBL items for me is enough communication between team and product owner. The team should &amp;nbsp;clearly know what the goal is of the PBL items, it should be clear what the product owner expects and there should be some rough ideas about the technical solutions. The team should be able to create a work breakdown structure that consists out of tasks of maximum eight hours.&lt;br /&gt;&lt;br /&gt;Of course, there will be situations where a team prepares a PBL item and something unexpected happens during&amp;nbsp;realization. That's life, you have to deal with it. That's why constantly improving is important, the team should perform a retrospective on the situation. What can they learn from it, how can they improve?&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;No Dependencies&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Dependencies between teams increase communication. Communication is difficult, there are a lot of blogs/books/articles about how difficult communication is. The search term &lt;i&gt;Communication&lt;/i&gt; results in 376.000.000 hits in Google, &lt;i&gt;Communication difficult&lt;/i&gt; results in 124.000.000 hits... it is allowed to say 32% of the page about communication is about how difficult communication is?&lt;br /&gt;&lt;br /&gt;When you have multiple teams that are dependent on each other, the team with the lowest velocity will partially determine the velocity of other teams. The &lt;i&gt;customer&lt;/i&gt; teams have to wait until the &lt;i&gt;supplier&lt;/i&gt; team delivers their PBL items. Additionally, when there is one&lt;i&gt; supplier&lt;/i&gt; team for multiple &lt;i&gt;customer&lt;/i&gt; teams, who comes first?&lt;br /&gt;&lt;br /&gt;Another dependency could be on the product owner who has the requirements not yet clear.A team could start working on the PBL item. However, when the product owner is not available, or needs to discuss the requirements first with the real customers, the team can't continue. When they continue there is a risk they have to do rework. They have to wait until the requirements are clear, this kind of dependencies will stop the team to become hyper productive. It is also in conflict with the previous precondition, preparation.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Have Fun&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://www.fitzfun.smartemail.co.uk/images/fun.gif" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="200" src="http://www.fitzfun.smartemail.co.uk/images/fun.gif" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;When a team doesn't have &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Fun"&gt;fun&lt;/a&gt;, it will never become hyper productive. Are you motivated to do something that you don't enjoy?&lt;br /&gt;&lt;br /&gt;Fun is not only telling jokes, fun is much more. To have fun you should have for example:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Good Hardware, fun is not waiting for a software build that takes 22 minutes;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office.html"&gt;Office&lt;/a&gt;, Windows in the office, air condition during a warm summer, a desk that is adjustable in height;&lt;/li&gt;&lt;li&gt;Appreciated by&amp;nbsp;colleagues&amp;nbsp;or management. When did you receive a compliment for the last time? Didn't it make you feel good? The power of giving and receiving compliments is ofter under estimated. However, giving and receiving compliments does often increase the fun in the team.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;When all the above is in place, I believe a team can become hyper productive. How do you know when your team becomes hyper productive... you will know trust me, trust your own&amp;nbsp;gut&amp;nbsp;feeling.&lt;br /&gt;&lt;br /&gt;During writing this blog I already changed partially my vision. Please leave your comments, I don't &amp;nbsp;mind changing my vision again when it becomes a better vision.&amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-2827521749977395077?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/2827521749977395077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/03/hyper-productive-dont-measure-outcome.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/2827521749977395077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/2827521749977395077'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/03/hyper-productive-dont-measure-outcome.html' title='Hyper productive..., don&apos;t measure the outcome'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh6.googleusercontent.com/-G3HzZNW511w/TW0Il-WJFXI/AAAAAAAAD-w/H-k_EG_7c-8/s72-c/HyperproductiveGraph.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-6221723491275819682</id><published>2011-02-22T13:20:00.001+01:00</published><updated>2011-02-22T13:24:38.504+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>Incremental development versus Iterative development... what is what?</title><content type='html'>There are a lot of blogs and articles about the differences between incremental and iterative development. In my opinion it does not add much value to write again about the differences :)&lt;br /&gt;&lt;br /&gt;However, I saw two pictures last week that clearly state the difference for me. The pictures are displayed below... (the pictures on this page are used with permission of &lt;a class="vt-p" href="http://www.agileproductdesign.com/jeff_patton.html"&gt;Jeff Patton&lt;/a&gt;).That's why I wrote this blog, to share the pictures with you and give you some links about the incremental and iterative development. If you are new to agile development, it could be interesting.&lt;br /&gt;&lt;br /&gt;Incremental development, every iteration you add a piece of the complete picture. The picture is ready when all iterations are done.&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://www.agileproductdesign.com/blog/images/incrementing.jpg"&gt;&lt;img border="0" height="108" src="http://www.agileproductdesign.com/blog/images/incrementing.jpg" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Iterative development, you deliver a picture and decide if you would like to continue to extend the picture.&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://www.agileproductdesign.com/blog/images/iterating.jpg"&gt;&lt;img border="0" height="107" src="http://www.agileproductdesign.com/blog/images/iterating.jpg" width="400" /&gt;&lt;/a&gt;&lt;a class="vt-p" href="http://www.agileproductdesign.com/blog/images/iterating.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a class="vt-p" href="http://www.agileproductdesign.com/blog/images/iterating.jpg"&gt;&lt;br /&gt;&lt;/a&gt;There are some interesting and good blogs about the incremental and iterative development:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Blog of Jeff Patton, &lt;a class="vt-p" href="http://www.agileproductdesign.com/blog/dont_know_what_i_want.html"&gt;http://www.agileproductdesign.com/blog/dont_know_what_i_want.html&lt;/a&gt; &lt;/li&gt;&lt;li&gt;Wikipage, &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Iterative_and_incremental_development"&gt;http://en.wikipedia.org/wiki/Iterative_and_incremental_development&lt;/a&gt; &lt;/li&gt;&lt;li&gt;Alistair Cockburn, &lt;a class="vt-p" href="http://alistair.cockburn.us/Incremental+versus+iterative+development"&gt;http://alistair.cockburn.us/Incremental+versus+iterative+development&lt;/a&gt;3&amp;nbsp;&lt;/li&gt;&lt;li&gt;Article of &lt;a class="vt-p" href="http://blog.nayima.be/"&gt;Pascal Cauwenberghe&lt;/a&gt; in &lt;a class="vt-p" href="http://www.methodsandtools.com/"&gt;Methods &amp;amp; Tools&lt;/a&gt;, &lt;a class="vt-p" href="http://www.methodsandtools.com/archive/archive.php?id=14"&gt;http://www.methodsandtools.com/archive/archive.php?id=14&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;When you have read the above pages, you should have a good understanding of what incremental and iterative development is.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-6221723491275819682?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/6221723491275819682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/02/incremental-development-versus.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6221723491275819682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6221723491275819682'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2011/02/incremental-development-versus.html' title='Incremental development versus Iterative development... what is what?'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7047824501657567470</id><published>2010-12-27T12:53:00.000+01:00</published><updated>2010-12-27T12:53:29.070+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>Share your vision with you employees to empower them</title><content type='html'>&lt;b&gt;When you would like steering teams and employees to make decisions that are in line with the vision of the organization, make sure they know the vision!&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;I had a short discussion with a colleague last week about if we should leave a decision over to a team or should come with a proposal our selves. I had to make a compromise with him in the end. You read my arguments to leave the decision to the team in this blog. &lt;br /&gt;&lt;br /&gt;I believe in self steering teams and empowering the knowledge of your employees. Assuming you have qualified people in your project, you should do everything to use their knowledge and experience. You as, manager or as management team have limited knowledge because you are alone or just with a small group of people. The more people think about an issue, the better the solution. You could make a decision or a proposal for an improvement and discuss this improvement with your employees to get feedback. However, it will be &lt;b&gt;your &lt;/b&gt;decision or proposal, it will never be completely owned by the employees. &lt;br /&gt;&lt;br /&gt;I believe you should be as transparent as possible in your vision or goals of your organization. When the employees know your vision or goal, they will come up with proposals to reach this vision or goal. Additionally, they will feel owner of the improvement and will do almost everything that is in their power to realize the improvement. If they disagree with the vision or goal, they could decide to leave the organization. However, I think you prevent this if possible because this could be waste of knowledge. &lt;br /&gt;&lt;br /&gt;When you are not transparent in your goal, it is almost impossible for your employees to come up with proposals for improvement. You can't empower people when you have a secret or hidden agenda. &lt;br /&gt;&lt;br /&gt;It is the partially same as with children. When they do something that is not allowed, for example playing with fireworks. You tell them they are not allowed to play with fireworks, but also why it is not allowed. Even better is to explain why they are not allowed to do something before they would do it. &lt;br /&gt;&lt;br /&gt;Please leave your comments…&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7047824501657567470?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7047824501657567470/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/12/share-your-vision-with-you-employees-to.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7047824501657567470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7047824501657567470'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/12/share-your-vision-with-you-employees-to.html' title='Share your vision with you employees to empower them'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7392432656295179023</id><published>2010-12-20T16:27:00.171+01:00</published><updated>2010-12-27T11:00:16.473+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Distributed'/><category scheme='http://www.blogger.com/atom/ns#' term='Tools'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>Distributed Agile Project Teams</title><content type='html'>&lt;a class="vt-p" href="http://nl.linkedin.com/in/nicolebelilos"&gt;Nicole Belilos&lt;/a&gt; and I gave a session called "&lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/sessions/My%20buddy%20is%20over%20the%20ocean.html"&gt;My Buddy Is Over The Ocean&lt;/a&gt;" on the &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/FrontPage.html"&gt;XP Days Benelux 2010&lt;/a&gt;. We had some good &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/feedback/My%20buddy%20is%20over%20the%20ocean.html"&gt;feedback &lt;/a&gt;on our session.&lt;br /&gt;&lt;br /&gt;&lt;iframe frameborder="0" height="342" src="https://docs.google.com/present/embed?id=dgbfx6nh_587ffnqhkf5" width="410"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;As we don’t like presentations with lots of text, the slides of the session don't contain much information. Therefore, we wrote this short summary to share our experiences. If have questions or remarks please contact us, we will always respond!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Distributed Approaches&lt;/span&gt;&lt;br /&gt;There are several distributed approaches possible. For example:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Most of the team members are located in one site, and one or maximum two individuals work from another location;&lt;/li&gt;&lt;li&gt;The team is completely distributed, with all team members working from different locations;&lt;/li&gt;&lt;li&gt;The team members work from two locations, for example Netherlands and India.&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size: large;"&gt;Why work in distributed teams?&lt;/span&gt;&lt;br /&gt;When you read books about agile software development, all books explain why it is important to work co-located. So why then would anyone choose not to work co-located?&lt;br /&gt;&lt;br /&gt;There are several reason to work distributed:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Expansion. When it is hard to find qualified employees in your local country, it could be argument to start working distributed. For example, every year millions Chinese students graduate from university. Therefore, it is relative easy to find well qualified employees over there;&lt;/li&gt;&lt;li&gt;Historical. More and more organisations are merging to combine their powers. As a result, these companies end up with employees working from different sites;&lt;/li&gt;&lt;li&gt;Support. When you need to support multinationals like Shell, Philips, etc. you need to have support 24/7. When you have multiple sites across the globe, it is easier to give 24/7 support, without need for one site to work 24 hours a day.&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size: large;"&gt;Distributed. Yes, but...&lt;/span&gt;&lt;br /&gt;Suppose you have been working in a distributed team and you have finished the first&amp;nbsp;couple of iterations. Chances are that you have had the following thoughts:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;They never say what they really think;&lt;/li&gt;&lt;li&gt;There are always so negative;&lt;/li&gt;&lt;li&gt;What is this English they speak?;&lt;/li&gt;&lt;li&gt;Oh no, the Internet connection is down again;&lt;/li&gt;&lt;li&gt;We never get what we asked for;&lt;/li&gt;&lt;li&gt;They really don't understand what is working with such a small bandwidth;&lt;/li&gt;&lt;li&gt;They don't&amp;nbsp;treat&amp;nbsp;us a equal;&lt;/li&gt;&lt;li&gt;I have to work in the middle of the night.&lt;/li&gt;&lt;/ul&gt;In our session we gave our experiences with the above problems and also some tips.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: x-large;"&gt;Building a Team&lt;/span&gt;&lt;br /&gt;We believe building software starts with building a good team. This is the same for co-located as well as for distributed teams. Building good software with seven individuals on your team is a problem, whether they are co-located or not. True team work is the basis for good software.&lt;br /&gt;&lt;br /&gt;However, building a true team in a distributed environment is difficult. There are several challenges you have to face.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Travel&lt;/span&gt;&lt;br /&gt;Distributed teams members must travel! When you are able to meet each other frequently, you will be able to build a better team. Even if it is possible to build a team via Skype, the best thing is to see each other in real life.&lt;br /&gt;&lt;br /&gt;Although travelling is important, you can't expect people to fly constantly between sites. Travelling costs a lot of energy, especially when it is across multiple time zones. Also, most people don't like to be away from their family or private life for longer periods of time.&lt;br /&gt;&lt;br /&gt;When you build a new team, try to co-locate all the team members for several weeks and have them work together. The primarily goal should not be to transfer knowledge, but to get to know each other. When new team members join an existing team, the same approach can be used to quickly integrate those new members.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Time Zones&lt;/span&gt;&lt;br /&gt;The greater the number of time zones involved, the more difficult it gets. How do you plan a meeting when you have people working in the USA, Europe and India? It is almost impossible to plan a meeting during everyone’s regular office hours.&lt;br /&gt;&lt;br /&gt;A common solution is to share the pain. Plan the meetings at different times, so that one day the USA people must get up early and India should stay in late, and the other day it’s the other way around.&lt;br /&gt;&lt;br /&gt;When you have an office in Norway and India, you will notice that the overlapping time slots are always filled with meetings. Therefore, it is important to always plan local meetings around those shared time slots.&lt;br /&gt;&lt;br /&gt;There is no real solution for working with multiple time zones. But make sure it is not always the same people who have to stay in late or come in early.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Cultural Differences&lt;/span&gt;&lt;br /&gt;There are thousands of books on cultural differences. It is a fact that many cultural differences exist, not only between different countries, but also within countries and even within companies! As a rule of thumb, accept cultural differences, respect each other and enjoy the differences! &lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: x-large;"&gt;Meetings&lt;/span&gt;&lt;br /&gt;Unfortunately&amp;nbsp;or fortunately :), it is not possible to develop software without communication. There are several meetings that are part, in some form, of every agile method:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Stand-up, a short informal meeting to inform each other in the team;&lt;/li&gt;&lt;li&gt;Planning, a meeting with the team to plan a new&amp;nbsp;iteration or user stories;&lt;/li&gt;&lt;li&gt;Demo, demonstrate the software with the (proxy) customer to generate new input for the next iterations;&lt;/li&gt;&lt;li&gt;Retrospective, a meeting to evaluate the last iteration or to discuss certain issues in the team;&lt;/li&gt;&lt;/ul&gt;Is it just a matter of&amp;nbsp;switching&amp;nbsp;on a web cam?&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Language&amp;nbsp;Barrier&lt;/span&gt;&lt;br /&gt;In most projects the common language is English. However, there are a&amp;nbsp; lot of different English accents...You probably are able to understand the English your&amp;nbsp;colleague&amp;nbsp;speaks. However, is someone from the&amp;nbsp;other&amp;nbsp;side of the world also able to understand your English, with your local Russian/Indian/Dutch/French/German/Kenyan&amp;nbsp;accent?&lt;br /&gt;&lt;br /&gt;When you use phone or software to&amp;nbsp;communicate, be aware that it could be even more difficult to understand your English.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Meeting Guidelines&lt;/span&gt;&lt;br /&gt;While all meetings benefit from good facilitation, distributed meetings need it even more. Make sure you have clear meeting rules. Below is a good example of a set of meeting guidelines.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Phone Conferences&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Allow time for connecting;&lt;/li&gt;&lt;li&gt;Strict time boxed and facilitated;&lt;/li&gt;&lt;li&gt;Use a good phone and head sets;&lt;/li&gt;&lt;li&gt;Let everyone announce himself;&lt;/li&gt;&lt;li&gt;&amp;nbsp;Start with 5 minute chitchat;&lt;/li&gt;&lt;li&gt;&amp;nbsp;Announce your name before you speak;&lt;/li&gt;&lt;li&gt;&amp;nbsp;Take turns when speaking. Don’t interrupt a speaker;&lt;/li&gt;&lt;li&gt;&amp;nbsp;Listen and don’t work on other things at the same time;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;div&gt;&amp;nbsp;Video conferences&lt;/div&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Allow time for setting up;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;Have a strict agenda;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;Use good web cams and audio;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;Spend 5 minutes to actively ‘see’ each other;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;Point the web cam to the person who is talking;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;Two rooms: have a facilitator in each room;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;One room and x remote people: Have a ‘web cam buddy’ in the main room;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;span style="font-size: large;"&gt;Stand-up &amp;amp; Planning Meeting&lt;/span&gt;&lt;br /&gt;The Daily Stand-up and the Planning Meeting have a lot in common. Make sure you have a good web cam and a good microphone. Make sure everyone is visible on the web cam. Try to always use the web cam; receiving visual feedback is very important. Does everyone understand what you are saying, is everyone paying attention and/ or are they making notes during the meeting? Is a planning meeting without making notes possible...&lt;br /&gt;&lt;br /&gt;When you have a planning meeting it is advisable to have a separate machine to share the desktop, documents, tools, etc. Make sure you have one dedicated machine for the communication tools and another machine for the project information.&lt;br /&gt;&lt;br /&gt;A site that could be&amp;nbsp;useful&amp;nbsp;is &lt;a class="vt-p" href="http://www.planningpoker.com/"&gt;http://www.planningpoker.com/&lt;/a&gt;,&amp;nbsp;especially&amp;nbsp;when you have all team members working from different locations.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Demo software&lt;/span&gt;&lt;br /&gt;The meeting to demo the software is a challenge. This depends on the number of teams in the project and the number of distributed locations.&lt;br /&gt;&lt;br /&gt;When there is just one team working on the project, and this team is located in just two locations, the demo is relatively easy. Make sure the customer knows you are working distributed and is able to speak English. When the every team member is located at another site, the demo meeting will be more challenging. How do you share your desktop with all team members and the customer? Are you able to use web cams with multiple locations?&lt;br /&gt;&lt;br /&gt;When you have multiple teams working on a project, how do you demonstrate the software to all teams and customers? How do you facilitate discussion? How can everyone hear the people who are together in one room? You could use a wireless microphone. Then make sure only the team member or customer holding the microphone is allowed to speak.&lt;br /&gt;&lt;br /&gt;When you want different team members to demonstrate parts of the software, you have to switch the presenter mode regular. How do you prevent this from becoming a bottleneck or annoying part of the meeting?&lt;br /&gt;&lt;br /&gt;There are a lot of issues that could occur during this meeting. Make sure you prepare it well, that includes the software and hardware for communication. Additionally, you should have a good chairman or facilitator for this meeting.&lt;br /&gt;&lt;br /&gt;Make sure the primary goal of the meeting is still there. Demonstrate (potentially) shippable software and discuss the software to generate insights for the new iterations.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Retrospective&lt;/span&gt;&lt;br /&gt;If you think the&amp;nbsp;demonstration&amp;nbsp;meeting is hard, the retrospective is even harder! We believe a good retrospective is all about doing things together and about communication. 55% of&amp;nbsp;communication&amp;nbsp;is done by &lt;a class="vt-p" href="http://www.bodylanguageexpert.co.uk/communication-what-percentage-body-language.html"&gt;body language&lt;/a&gt;. As a&amp;nbsp;facilitator&amp;nbsp;it is important to be able to&amp;nbsp;observe the people who attend the retrospective. This is very hard to via a web cam.&lt;br /&gt;&lt;br /&gt;A retrospective should be&amp;nbsp;very interactive if possible. But how are you going to have an interactive retrospective when the team is distributed? You find a nice example in this &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/distributed-retro.html"&gt;blog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The distributed retrospective is a real challenge, but when you, as a facilitator, prepare it well, it is still possible.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: x-large;"&gt;Tools&lt;/span&gt;&lt;br /&gt;Tools could be a great help or a burden when you use the wrong tools. Additionally, tools won't solve any problem in the process.&lt;br /&gt;&lt;br /&gt;In this section we share some of our experiences with tools. If you know some extra tools, just add them by entering a&amp;nbsp;comment.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Infrastructure &amp;amp; Development Tools&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="vt-p" href="http://cvs.nongnu.org/"&gt;CVS&lt;/a&gt; versus &lt;a class="vt-p" href="http://msdn.microsoft.com/en-us/library/ms950420.aspx"&gt;VSS&lt;/a&gt;, we used Microsoft Visual Source Safe 6.0 in the begin to store our documents. VSS is not build to be used in a relative slow network, make sure you use a source control system that is build or at least optimized to be used in a distributed environment. Take a look at the tools that are used by open source projects, they often use tooling that is build to work in distributed projects;&lt;/li&gt;&lt;li&gt;Sharepoint, use an&amp;nbsp;Intranet&amp;nbsp;system or content management system to maintain documents;&lt;/li&gt;&lt;li&gt;Web Enabled Bug Tracking System, using a fat client could not be a good idea when you a relative slow network;&lt;/li&gt;&lt;li&gt;Remote Desktop, take over a system in another location with RDP or for example VNC to only transfer screen information and not all data;&lt;/li&gt;&lt;li&gt;Citrix, all your&amp;nbsp;applications&amp;nbsp;in your own virtual desktop environment.&lt;/li&gt;&lt;/ul&gt;What else... your experiences...just add them by adding a comment.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Communication Tools&lt;/span&gt;&lt;br /&gt;We make a&amp;nbsp;distinction&amp;nbsp;between software and hardware:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Software&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Microsoft_Lync"&gt;Office Communicator&lt;/a&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.skype.com/intl/en/home"&gt;Skype&lt;/a&gt;&amp;nbsp;(Free), Skype 5 with multiple video streaming!;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.mikogo.com/"&gt;Mikogo &lt;/a&gt;for desktop sharing (Free);&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.gotomeeting.com/fec/"&gt;GotoMeeting &lt;/a&gt;(Not for free), on-line meetings;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="https://www.yammer.com/"&gt;Yammer&lt;/a&gt;, Twitter for inside a company, share information via an informal way;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.cisco.com/en/US/products/sw/ps5664/ps5669/index.html"&gt;MeetingPlace&lt;/a&gt;, on-line meetings;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Hardware&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.voiplink.com/Cisco_7936_Conference_Phone_p/cp-7936.htm"&gt;Conference phone&lt;/a&gt;, these phones are optimized to be used in hands-free mode;&lt;/li&gt;&lt;li&gt;web cam&amp;nbsp;(HD and&amp;nbsp;Wide Angle), don't save money on this... it is important to see all people in a meeting and to be able to see if they are happy or anger;&lt;/li&gt;&lt;li&gt;Headsets, it could happen you have to wear them for a few hours... make sure they are comfortable;&lt;/li&gt;&lt;li&gt;Wireless microphone for large meetings, to be able for everyone to join the discussion;&lt;/li&gt;&lt;li&gt;Dedicated communication corner in team room, a team should be able set up a meeting in a few meetings. When they have to walk to another room, it is to much effort and the team will not meet to discuss a topic;&lt;/li&gt;&lt;li&gt;Meeting rooms with fixed communication corner, it should be possible to meet easily with people from different teams or with the product owner and people from another site;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;span style="font-size: large;"&gt;Planning &amp;amp; Tracking Tools&lt;/span&gt; &lt;br /&gt;The number of planning and tracking tools is growing every year. A classic Scrum board that doesn't use a network cable should always prefer above any software tool if possible. &lt;br /&gt;&amp;nbsp; &lt;br /&gt;Possible tools are: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Excel / Google docs to keep track of progress;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.atlassian.com/software/jira/"&gt;Jira &lt;/a&gt;/ &lt;a class="vt-p" href="http://www.atlassian.com/software/greenhopper/"&gt;Greenhopper&lt;/a&gt; plugin;&lt;/li&gt;&lt;li&gt;Take photo's&amp;nbsp;of a&amp;nbsp;Scrum board, print them and sitck them to the wall;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.versionone.com/"&gt;VersionOne&lt;/a&gt;/ &lt;a class="vt-p" href="http://www.rallydev.com/"&gt;Rallydev&lt;/a&gt; /&lt;a class="vt-p" href="http://www.danube.com/scrumworks"&gt; Scrum works &lt;/a&gt;/ &lt;a class="vt-p" href="http://www.thoughtworks-studios.com/mingle-agile-project-management"&gt;Mingle&lt;/a&gt; / etc.&lt;/li&gt;&lt;/ul&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Conclusions&lt;/span&gt;&lt;br /&gt;Do you need to bring back your buddy? No really..... if possible yes. If is not possible,&lt;br /&gt;you should really invest in the team and make sure you use the most efficient tools for&lt;br /&gt;your organisation.&lt;br /&gt;&lt;br /&gt;Working in or with a distributed team is not easy. However, it is possible with hard&lt;br /&gt;labour!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7392432656295179023?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7392432656295179023/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/12/distributed-agile-project-teams-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7392432656295179023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7392432656295179023'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/12/distributed-agile-project-teams-2.html' title='Distributed Agile Project Teams'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-3787565056670264506</id><published>2010-11-29T16:46:00.003+01:00</published><updated>2010-12-21T08:22:03.440+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>XP Days Benelux 2010</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://1.bp.blogspot.com/_f1FQCqmW7c4/TPPLLL_rXlI/AAAAAAAAD8Y/tguCJAalX4k/s1600/logo-small.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_f1FQCqmW7c4/TPPLLL_rXlI/AAAAAAAAD8Y/tguCJAalX4k/s1600/logo-small.png" /&gt;&lt;/a&gt;&lt;/div&gt;Last week I visited the &lt;a class="vt-p" href="http://www.xpdays.net/"&gt;XP Days 2010 Benelux&lt;/a&gt;. a great conference! It is informal, everyone is open for discussion and real down-to-earth! A compliment for all attendees and the organisation.&amp;nbsp;It was held in&amp;nbsp;&lt;a class="vt-p" href="http://www.kapellerput.nl/Default.aspx?tabid=464&amp;amp;language=en-US"&gt;Conference Center Kapellerput&lt;/a&gt;, a very&amp;nbsp;inspiring&amp;nbsp;location in the lovely state Noord-Brabant, Netherlands.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This blog is a short summary of the sessions and my experiences on the conference.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The conference was opened at nine o'clock, and after some yoga and basic information the half-minutes-presentations (HMP) started.&amp;nbsp;The&amp;nbsp;presenter&amp;nbsp;or organizer of a session/workshop is given 30 seconds to do a short promo about his session. Some promo's are straight forward, but some are really nice to see. A good start of the conference day, and a concept that should be used on more conferences.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;After the plenary opening, &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/Nicole%20Belilos.html"&gt;Nicole Belilos&lt;/a&gt;&amp;nbsp;and I prepared our own session. Had some discussion about the content by using Skype, while we sitting next to each other :). At 11:00 our &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/sessions/My%20buddy%20is%20over%20the%20ocean.html"&gt;session&lt;/a&gt; started. We, Nicole and I, experienced it as a good session. Of course, there is always room for improvement. Read the feedback on &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/feedback/My%20buddy%20is%20over%20the%20ocean.html"&gt;this&lt;/a&gt; page, if you attended our session and have would like to give some (extra) feedback please send me an email.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The lunch was great, as always in the Kapellerput. I had some time to catch up with a friend of my during lunch.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a class="vt-p" href="http://www.aboriginemundi.com/wp-content/uploads/2010/04/IMG_6816.jpg" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="200" src="http://www.aboriginemundi.com/wp-content/uploads/2010/04/IMG_6816.jpg" width="191" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;(C) 2010 AbOrigineMundi&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;During the afternoon I attended the &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/sessions/The%20Frog%20Factory.html"&gt;kanban workshop&lt;/a&gt;. In our group we did not experience the real Kanban experience. However, I made some nice frogs and had a a good time during this weekend with my daugther, folding frogs. I liked the idea of the Kanban workshop, for more&amp;nbsp;information&amp;nbsp;look &lt;a class="vt-p" href="http://www.aboriginemundi.com/index.php/2010/04/the-frog-factory-a-kanban-experience-game"&gt;here&lt;/a&gt;. I think the reserved time, 1.5 hours, was too short for a good workshop.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My second workshop in the afternoon was about a &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/sessions/Agile%20Testing%20Journey.html"&gt;testing journey&lt;/a&gt;. I was hoping to see something new that we could use in our own test process. Unfortunately, this was not the case. However, I think the workshop gave a good overview to all people who were not familiar with a agile testing process. How do ET and Unit tests compare to each other&amp;nbsp;for example.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The next day started again with some yoga, basic information and HMP's. My first session was about an &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/sessions/Introduction%20to%20Value%20Stream%20Mapping.html"&gt;introduction to value stream mapping&lt;/a&gt; (VSM). I already read something about VSM in the books of Mary and Tom Poppendieck. Still, a good session of the guys of &lt;a class="vt-p" href="http://www.ilean.be/"&gt;iLean&lt;/a&gt;. I need to find some time to do some VSM at our organisation, trying to find some bottle necks in our process.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The second session I attended was about&amp;nbsp;&lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/sessions/Continuous%20improvement%20through%20retrospectives.html"&gt;retrospectives&lt;/a&gt;. The first part of the session was about how retrospectives fit in the&amp;nbsp;continuous&amp;nbsp;improvement&amp;nbsp;organisation of lean (I understood correctly..) and the second part was based on the book of Agile Retrospectives of Ester Derby and Diana Larsen. It was &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2008/09/how-to-improve-your-team-with.html"&gt;not really new for me&lt;/a&gt;, still a good session. Doing retrospectives is not easy, you need to facilitate and select different activities to prevent the retrospective to become a boring meeting with no value.If you would like to read something about distributed retrospectives, take a look &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/distributed-retro.html"&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;After another great lunch and catching up with &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/Peter%20Janssens.html"&gt;Peter &lt;/a&gt;from iLean the last workshops started.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My first workshop was about feedback, &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/sessions/Agile%20Feedback.html"&gt;Agile Feedback&lt;/a&gt;. Is Agile Feedback different from regular Feedback? No, only in an agile environment you are encouraged to give feedback. The session was about how to give and receive feedback. It was refreshing and remembered me to give active feedback to people. Feedback is a gift, and you should always be&amp;nbsp;grateful&amp;nbsp;when you receive feedback. It is an&amp;nbsp;opportunity&amp;nbsp;to improve yourself.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The last workshop of the conference was about &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/sessions/Team%20building%20using%20Theme%20Centered%20Interaction.html"&gt;team building using theme centered interaction&lt;/a&gt;.I really liked the part where you were able to learn about your team mates. However, I had some trouble to&amp;nbsp;imagine&amp;nbsp;how to use this approach in my daily work. I assume it was because it was already Friday afternoon and I had some problems concentrating. Some basic information about this topic can be found on the &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Ruth_Cohn"&gt;wikipedia&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;During the sessions I met some nice people to share experiences with. Additionally, gave some advise to people, or at least my idea about the problem. I'm not able to give advice in a 15 minutes meeting ;)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Summary... two great days. As said at the start of this blog, I always like the&amp;nbsp;good and&amp;nbsp;inspiring&amp;nbsp;atmosphere at the XP Days. It not only about coding, also about the soft skills that you need in a a (software) project.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-3787565056670264506?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/3787565056670264506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/11/xp-days-benelux-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3787565056670264506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3787565056670264506'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/11/xp-days-benelux-2010.html' title='XP Days Benelux 2010'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_f1FQCqmW7c4/TPPLLL_rXlI/AAAAAAAAD8Y/tguCJAalX4k/s72-c/logo-small.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-3432523595397696252</id><published>2010-11-05T08:57:00.001+01:00</published><updated>2010-12-30T08:25:10.028+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Dojo who? Short introduction to Dojo's</title><content type='html'>During the &lt;a class="vt-p" href="http://www.agiletestingdays.com/"&gt;Agile Testing Days 2010&lt;/a&gt; in Berlin I attended a &lt;a class="vt-p" href="http://thesocialtester.posterous.com/alternative-paths-for-self-education-in-softw"&gt;presentation &lt;/a&gt;of &lt;a class="vt-p" href="http://www.shino.de/"&gt;Marcus Gaertner&lt;/a&gt;. He mentioned &lt;a class="vt-p" href="http://blog.shino.de/2010/04/16/testing-dojos/"&gt;Testing Dojo&lt;/a&gt; in his session. I already heard the term Coding Dojo and was already interested to find out if it is possible to set up a Testing Dojo. To find out, I first started to find out what a Coding Dojo exactly is. I wrote a short memo about this and here is the result.... If you think I forgot something in my&amp;nbsp;description, &amp;nbsp;please leave a comment!&lt;br /&gt;&lt;br /&gt;&lt;s&gt;In a next blog I will try to describe how I think a Testing Dojo could be organized.&lt;/s&gt;&amp;nbsp;Marcus already wrote a excellent blog about a &lt;a class="vt-p" href="http://blog.shino.de/2010/04/16/testing-dojos/"&gt;testing dojo&lt;/a&gt;. I will refer to this blog about what a testing dojo is, what you need and how to organize is.&lt;br /&gt;&lt;br /&gt;This blog is based on the following resources:&lt;br /&gt;&lt;br /&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Symbol;"&gt;·&lt;span style="font: normal normal normal 7pt/normal 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang="NL"&gt;&lt;span lang="EN-US" style="color: blue; line-height: 120%;"&gt;&lt;a class="vt-p" href="http://web.cs.wpi.edu/~gpollice/Dojo.html#MeetingTime"&gt;http://web.cs.wpi.edu/~gpollice/Dojo.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="NL"&gt;&lt;span lang="EN-US" style="color: blue; line-height: 120%;"&gt;&lt;a class="vt-p" href="http://web.cs.wpi.edu/~gpollice/Dojo.html#MeetingTime"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="NL" style="font-family: Symbol;"&gt;·&lt;span style="font: normal normal normal 7pt/normal 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang="NL"&gt;&lt;span style="color: blue; line-height: 120%;"&gt;&lt;a class="vt-p" href="http://codingdojo.org/"&gt;http://codingdojo.org/&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="NL"&gt;&lt;span style="color: blue; line-height: 120%;"&gt;&lt;a class="vt-p" href="http://codingdojo.org/"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="NL" style="font-family: Symbol;"&gt;·&lt;span style="font: normal normal normal 7pt/normal 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang="NL"&gt;&lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Randori"&gt;http://en.wikipedia.org/wiki/Randori&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="NL"&gt;&lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Randori"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang="NL" style="font-family: Symbol;"&gt;·&lt;span style="font: normal normal normal 7pt/normal 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang="NL"&gt;&lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Kata"&gt;http://en.wikipedia.org/wiki/Kata&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Some other interesting links are:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="vt-p" href="http://confluence.agilefinland.com/display/af/Coding+Dojos"&gt;http://confluence.agilefinland.com/display/af/Coding+Dojos&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.shino.de/2010/06/04/xp2010-testing-dojos/"&gt;http://www.shino.de/2010/06/04/xp2010-testing-dojos/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Introduction&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;&lt;/span&gt;Testing is a skill, to become a master tester you need experience. You increase your experience by doing your daily work as a tester. Every day you will encounter new problems where you need to apply your existing knowledge to solve the problem. When the problem is solved, you have increased your knowledge and experiences.&lt;br /&gt;&lt;br /&gt;To increase your knowledge as a tester you should meet with other testers. When you share your ideas of testing with other testers you will receive feedback. Feedback that makes you think about your testing approach.  &lt;br /&gt;&lt;br /&gt;It is your own responsibility to become an experienced tester. You should take initiative to grow as a tester, not wait until someone delivers the knowledge to you.&lt;br /&gt;&lt;br /&gt;A testing dojo combines the things described above. You actively work on a challenging problem, meet with other testers and take your own responsibility in becoming a good tester.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;In the sections below I try to describe what a Dojo meeting. It is a introduction for people who are not familiar with a Dojo meeting.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Dojo&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;&lt;/span&gt;A Dojo is a place where people come to improve their skills. Most common is a Coding Dojo. As important as improving the skills, it should also be fun!&lt;br /&gt;&lt;br /&gt;The idea is people meet for a time boxed period, with a computer attached to a beamer or desktop sharing tool installed and a challenge. What kind of challenge will be discussed later. During the session the group works on the challenge. Remember it is time boxed, when time is up, the Dojo ends.&lt;br /&gt;&lt;br /&gt;In a Dojo everyone is equal, there is no difference because of experience. A junior person could learn from an experienced person and an experienced person could learn from the fresh look of a junior person. Everyone should be respected for their knowledge and contribution to the Dojo.&lt;br /&gt;&lt;br /&gt;The idea of the Coding Dojo comes from Dave Thomas's idea of Coding Kata. Laurent Bossavit's instituted a Coding Dojo in Paris where it has been running on a weekly basis since January 2005. It has been a weekly programming get together where programmers of varying skill levels meet as equals. The Coding dojo is not dependent upon any specific programming language. Often one person may exhibit a solution to a challenge one week in C++ and the next week, another member might solve the same problem in Ruby or .Net. The goal is to learn.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Forms of Dojo Meetings&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;&lt;/span&gt;There are two types of  Dojo meetings, Kata and Randori. The description of both words according to Wikipedia:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Kata (型 or 形 literally: "form") is a &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Japanese_language"&gt;Japanese&lt;/a&gt; word describing detailed choreographed patterns of movements practised either solo or in pairs;&amp;nbsp;&lt;/li&gt;&lt;li&gt;Randori (乱取り) is a term used in &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Japanese_martial_arts"&gt;Japanese martial arts&lt;/a&gt; to describe free-style practice or sparring, sometimes with multiple attackers. The term literally means "&lt;a class="vt-p" href="http://en.wiktionary.org/wiki/%E4%B9%B1"&gt;chaos&lt;/a&gt;&lt;a class="vt-p" href="http://en.wiktionary.org/wiki/%E5%8F%96"&gt;taking&lt;/a&gt;" or "grasping freedom," implying a freedom from the structured practice of &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Kata"&gt;kata&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;A Kata Dojo is session where someone solves how to solve a problem. The presenter thought about the problem in front of the meeting but did not do any work. In the Dojo the presenter creates the solution whereby everyone is able to see what the solution is. Every step the presenter takes should be clear for everyone, as soon as it not clear it should be explained to the group. During the Dojo the group should comments on the solution with the goal to improve the solution. In the end the group, including the presenter, should have the best possible solution with the knowledge available. It is wise to have some breaks during the Dojo to discuss in smaller groups the possible solutions. &lt;br /&gt;&lt;br /&gt;In a Randori Dojo the whole group participates in creating the solution. By using pairs, two persons are constantly working on the problem. Every pair works time boxed, for example seven minutes. When this time box ends, the person (driver) who was controlling the keyboard and mouse, goes back to the audience. The person (navigator) who was thinking out loud and reviewing the work of the driver, becomes the driver. A new person from the audience becomes the new navigator.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Rules of Dojo&lt;/span&gt;&lt;br /&gt;There are some simple rules you could follow when organizing a Dojo. It is wise to shortly evaluate every Dojo when it’s done and change the rules if necessary. There is always room for improvement.&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Positive comments&lt;/span&gt;&lt;br /&gt;Goal is to learn and everyone is equal. Try to give positive comments, it should be focused on improving.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Slow Down&lt;/span&gt;&lt;br /&gt;Everyone should be able to follow your steps. Don’t rush, make sure everyone understands your steps.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Interrupt when it is not clear for you&lt;/span&gt;&lt;br /&gt;When you see something happening what you don’t understand, ask a question. Goal is to learn, don’t assume you are the only one who does not understand what is going on. &lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Think out loud&lt;/span&gt;&lt;br /&gt;The presenter or pair should think out loud. The group is not able to anyone’s mind. Therefore, explain what you are doing and why you are doing something.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Agenda and Facilitator of Dojo&lt;/span&gt;&lt;br /&gt;It is wise to assign a facilitator. The facilitator should create an agenda and if necessary prepare the room, computer, etc. Make sure the agenda has also a time table, a Dojo is a time boxed meeting.&lt;br /&gt;&lt;br /&gt;During the Dojo the facilitator should make sure the rules are followed. It is up to the facilitator to decide if he also would like to part in the Dojo.&lt;br /&gt;&lt;br /&gt;An example agenda:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;2 minutes: decide on date for next session;&lt;/li&gt;&lt;li&gt;30 minutes: solve the problem;&lt;/li&gt;&lt;li&gt;5  minutes: mid-session break to discuss how things are going;&lt;/li&gt;&lt;li&gt;30 minutes: code some more;&lt;/li&gt;&lt;li&gt;13 minutes: quick retrospective of the session.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-3432523595397696252?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/3432523595397696252/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/11/dojo-who-short-introduction-to-dojos.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3432523595397696252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3432523595397696252'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/11/dojo-who-short-introduction-to-dojos.html' title='Dojo who? Short introduction to Dojo&apos;s'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-6156554198116716194</id><published>2010-10-25T10:52:00.002+02:00</published><updated>2010-10-26T09:48:48.352+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tools'/><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><title type='text'>Keep an eye on your log</title><content type='html'>A great way to improve the&amp;nbsp;testability&amp;nbsp;of your software is to add logging! A log with all errors, warnings, faults, exceptions, dialog messages, or whatever is interesting for you in one file!&lt;br /&gt;&lt;br /&gt;For most programmers it is relative easily to build in logging. When an application has a single class/procedure/library to handle errors, it is easy to build in logging. Depending on what you log it could become very easy for programmers to find the causes of crashes/bugs. If you are able log all user actions, it is just a matter of walking through the log file for the reproduction steps. Additionally, not all problems are visible in the GUI, sometimes a problem is only reported in a log file or some strange output is written to the log file.&lt;br /&gt;&lt;br /&gt;However, when you have several servers up and running (database, application server, web server) it could produce a lot of logging. Testers are also humans.. so it could happen that you miss an important message in the log....&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://www.satisfice.com/aboutjames.shtml"&gt;James Bach&lt;/a&gt;&amp;nbsp;recognized&amp;nbsp;this problem and wrote a &lt;a class="vt-p" href="http://www.satisfice.com/tools.shtml"&gt;small application&lt;/a&gt; in Perl to watch the log automatically. A great tool. However, the tool has some issues (for me):&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;When you have several logs to watch, an application is started for every log file. As a result, the Windows&amp;nbsp;task bar&amp;nbsp;is &lt;i&gt;polluted&lt;/i&gt; by extra programs on the taskbar;&lt;/li&gt;&lt;li&gt;When you start the application, the old log is also watched. As a result, all already know issues are reported;&lt;/li&gt;&lt;li&gt;Only explicit audio feedback, when the application is minimized there is no visual feedback;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;I wrote a &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/10/automate-your-daily-test-work-with.html"&gt;tool in AutoIT&lt;/a&gt;, with some improvements. The new tool has the same basic functionality as the tool of James Bach. However, the improvements are:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;The application is no longer visible in the task bar, it is visible in the notification area;&lt;/li&gt;&lt;li&gt;When the application is started, it does not parse the existing log content;&lt;/li&gt;&lt;li&gt;There is also visible feedback, by using a dialog;&lt;/li&gt;&lt;li&gt;The option to open the log file directly from the notification icon;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;Feel free to download &lt;a class="vt-p" href="http://db.tt/NukWOpE"&gt;this tool&lt;/a&gt; and use it or change it to your personally requirements. I'm still working on this tool and improving the tool. However, this version is ready to be used by you.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt; &lt;td&gt;&lt;b&gt;File&lt;/b&gt;&lt;/td&gt; &lt;td&gt;&lt;b&gt;Description&lt;/b&gt;&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;audio_logwatch.bat&lt;/td&gt; &lt;td&gt;An example file to start multiple instances of logwatcher.exe to watch files.&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;error.wav&lt;/td&gt; &lt;td&gt;Sample wav file, that gives you the raspy voice of James Bach during a bout of bronchitis.&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;license.txt&lt;/td&gt; &lt;td&gt;The program is released under the GPL 2.0 license.&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;logwatcher.au3&lt;/td&gt; &lt;td&gt;The source code of the program.&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;logwatcher.exe&lt;/td&gt; &lt;td&gt;A compiled version of the script, ready to be used.&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;readme.txt&lt;/td&gt; &lt;td&gt;A file with some information about the tool and credits to James Bach.&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;watchlist.txt&lt;/td&gt; &lt;td&gt;The file that contains the patterns to look for in the log files.&lt;/td&gt; &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-6156554198116716194?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/6156554198116716194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/keep-eye-on-your-log.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6156554198116716194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6156554198116716194'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/keep-eye-on-your-log.html' title='Keep an eye on your log'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7324023588620023754</id><published>2010-10-25T10:36:00.000+02:00</published><updated>2010-10-25T10:36:51.599+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tools'/><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><title type='text'>Automate your daily (test) work with AutoIT!</title><content type='html'>I think it is good habit to be lazy... with the intention to automate as much as possible of your daily work. For example:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Every night a full integration build is delivered, and as a tester you need to install this every morning;&lt;/li&gt;&lt;li&gt;You need to configure some files before you start an application;&lt;/li&gt;&lt;li&gt;Simple regression testing;&lt;/li&gt;&lt;li&gt;In general: you need to do x when y happens or to start doing y;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;There are a lot &amp;nbsp;script tools or programming&amp;nbsp;languages&amp;nbsp;that you could use. One of my&amp;nbsp;favorite&amp;nbsp;scripting languages is &lt;a class="vt-p" href="http://www.autoitscript.com/"&gt;AutoIT&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The official introduction text from the AutoIT Site:&lt;/div&gt;&lt;blockquote&gt;AutoIt is a freeware Windows automation language. It can be used to script most simple Windows-based tasks.&lt;/blockquote&gt;&lt;div&gt;&lt;blockquote&gt;AutoIt has been in popular use since 1999 and continues to provide users and administrators with an easy way to script the Windows GUI. In February 2004 the latest version of AutoIt - known as AutoIt v3 - was released and added powerful scripting features.&lt;/blockquote&gt;&lt;blockquote&gt;AutoIt v3 was developed in a small team with the help of contributors around the world and this has led to a great set of help files, examples, support forum, mailing list, editor files, and third-party utilities. &amp;nbsp;Oh, and lets not forget some nice graphics and wallpapers too!&lt;/blockquote&gt;&lt;div&gt;AutoIT has a great support forum, it is almost possible to find a solution for all of your questions related to AutoIT. It has a lot of standard procedures, but also options to call Windows API's directly (Not sure if that would make your life easier...). Another nice feature is the option to compile your scripts into small executables. It gives you a relative small (approx. 350k) application that contains all required libraries and can be distributed easily in your project/organisation.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'm going to publish the tools/scripts&amp;nbsp;I build with AutoIT on my blog. Feel free to use them and to improve them for you personal use.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7324023588620023754?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7324023588620023754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/automate-your-daily-test-work-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7324023588620023754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7324023588620023754'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/automate-your-daily-test-work-with.html' title='Automate your daily (test) work with AutoIT!'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-98045212156449138</id><published>2010-10-13T11:59:00.002+02:00</published><updated>2010-10-13T12:35:04.819+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>My Thoughts about Test Certification</title><content type='html'>It is a real Indian Summer in the Netherlands and while I'm ironing the laundry (Yes, I sometimes take my&amp;nbsp;responsibility&amp;nbsp;as modern man ;) )and looking out on the garden, I'm thinking about the certification discussion on the &lt;a class="vt-p" href="http://www.agiletestingdays.com/index.php"&gt;Agile Testing Days in Berlin&lt;/a&gt;.&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;br /&gt;&lt;/div&gt;What is certification? According to the Oxford Dictionary:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="vt-p" href="http://oxforddictionaries.com/view/entry/m_en_gb0134580#m_en_gb0134580.008"&gt;a document confirming that someone has reached a certain level of achievement in a course of study or training&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;That is a real good description and ends the discussion I think....;) &amp;nbsp;It does not say anyone is capable of doing something.When I translate this to ISTQB, somewhere in space, somewhere in time, you were able to answer the questions about how ISTQB thinks testing should be.&lt;br /&gt;&lt;br /&gt;Anyone who saids (s)he is a good tester, because (s)he is certified is lying. (S)He could be a good tester and have a certification. It is comparable to a driver license, you are allowed to drive a car when you have&amp;nbsp;license, you are not a good driver. To become a good driver you will need experience, a lot of experience.&lt;br /&gt;&lt;br /&gt;I think it is good when a tester follows the training of ISTQB. The tester will, probably, learn new techniques, improve his techniques and is able to meet other testers. Discuss testing with other testers! The certification exam is not necessary, attending the training and discussing testers with other testers is already very valuable! We are doing agile for already six years and have developed our own agile approach, it works perfect for us. A lot of things you learn during a ISTQB training are not applicable to our approach. However, it makes you as a tester&amp;nbsp;all round&amp;nbsp;and more experienced.&lt;br /&gt;&lt;br /&gt;I have to confess, we valued certification a lot in the past. We were wrong! Why, read the text above. Still, I think following the training is&amp;nbsp;useful. However, instead of doing certification I will ask testers after the training &amp;nbsp;to write an article, blog, present something at a congress, etc.. By participating in the testing communicty, they will discuss their vision/approach with&amp;nbsp;colleague&amp;nbsp;testers. That is much more valuable then a certification!&lt;br /&gt;&lt;br /&gt;People who are attending certification programs are investigating in their capabilities as a tester! That is the really good thing! I think certification it self is not the right approach. It is up to you to convince those people having a certification is not the right approach.&lt;br /&gt;&lt;br /&gt;During the session of&amp;nbsp;&lt;a class="vt-p" href="http://blog.shino.de/"&gt;Markus Gärtner&lt;/a&gt; about Alternative Paths forSelf-Education in Software Testing, Micheal Bolton made a remark that the real certification comes from the community. If you are appreciated by the community by writing blogs, articles, giving sessions, you are "certified". I agree with that remark. However, not everyone is able or has the capability to be active in the community. You could of course, follow blogs, read books and attend congresses. However, how do you get that explicit reward of the&amp;nbsp;community? That is something that is still bothering me. I think feeling rewarded for your knowledge is important for professionals. Some of those professionals believe certification is such a reward, not! How do the testers that follow the community get rewarded for there experience? I don't know... I hope someone will write a blog or acticle or point me to article that covers this issue.&lt;br /&gt;&lt;br /&gt;I hope this blog helps you forming your opinion about certification and I hope your feedback will help me build my opinion.&lt;br /&gt;&lt;br /&gt;Oh by the way, I used ISTQB in this article. You could read any organisation that is doing certification, not only ISTQB.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-98045212156449138?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/98045212156449138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/my-thoughts-about-test-certification.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/98045212156449138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/98045212156449138'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/my-thoughts-about-test-certification.html' title='My Thoughts about Test Certification'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-8546213130477272772</id><published>2010-10-08T19:22:00.001+02:00</published><updated>2010-10-08T19:22:00.197+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Agile Performance Testing - How we integrated it into our process</title><content type='html'>I would like to share my experience with agile performance testing with you. It is not about the knowledge of a tool like LoadRunner itself. it is about the process to set up a performance testing environment and how to embed it in your agile process. I had a session about this topic during the &lt;a class="vt-p" href="http://www.agiletestingdays.com/"&gt;Agile Testing Days 2010 in Berlin&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This blog is a summary of that presentation, this is the second blog about how to integrate performance testing into your agile environment. In this &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/09/agile-performance-testing.html"&gt;blog &lt;/a&gt;I described how to set up an agile performance environment.&lt;br /&gt;&lt;br /&gt;With performance testing we would like to do two things:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Teams should be able to deliver features that are done, including&amp;nbsp;performance&amp;nbsp;testing;&lt;/li&gt;&lt;li&gt;Detect regression;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;If all development teams would need a time to do performance testing just before we release the software, we would need several weeks extra at the end of the release. Sounds like a waterfall approach isn't?&amp;nbsp;We would like to have all user stories/product backlog items/features to be done at the end of the sprint. Done is including testing, documentation etc. Testing is including performance testing.&amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;As soon as we had the Loadrunner framework in place, we trained all teams. All testers attended the training and everyone who was interested. Several programmers attended also the training. In the training they learned how to build scripts and how to execute them in the performance test environment.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;We have identified two types of scripts, sprint scripts and weekend scripts. The sprint scripts are build by the teams to verify new features and weekend scripts are to detect regression.&lt;/div&gt;&lt;/div&gt;&lt;h2&gt;Sprint Scripts&lt;/h2&gt;The goal of sprint script is to test a feature. We have the general requirement that the client always should&amp;nbsp;respond&amp;nbsp;within four seconds. In some cases the product owner has extra performance requirements.that need to tested. During the sprint planning it is discussed for features if a performance test is required. Reason could be for example a change in the framework. It is discussed with all the members of the team if a performance test is required.&lt;br /&gt;&lt;br /&gt;If it is decided that a performance test is required, the testers build script. If necessary they use integration tests to generate data or request a customer database. The testers verify the scripts on their local machine and as soon as they are ready, the scripts are executed in the&amp;nbsp;performance test&amp;nbsp;environment. This is environment is available during weekdays for the teams.&amp;nbsp;The new scripts are added to the cvs database.&lt;br /&gt;&lt;br /&gt;The scripts have a lifespan of one sprint. The scripts are not maintained when the testing of the feature is done. &amp;nbsp; &amp;nbsp;If the new feature is important, that is determined by the team, product owner, lead architect, for the project or product owner, the scripts could be promoted to the weekend scripts or the weekend scripts could be expanded to cover the new feature.&lt;br /&gt;&lt;h2&gt;Weekend scripts&lt;/h2&gt;The second goal of the performance tests environment is detect regression. It could be possible that a team develops a new feature that impact the global performance of the application. They did not think about writing a sprint script and did not expect any impact on the performance.&lt;br /&gt;&lt;br /&gt;For these case we have developed weekend scripts. Weekend scripts detect regression and trend data is generated. As a result, we are able to see if the performance increases or decreases during a release of six months.&lt;br /&gt;&lt;br /&gt;The weekend scripts cover the most import areas of our software. These areas are discussed with the architects, testers, product owner and lead architect. Goal of the weekend scripts is not to test everything. However, we try to test the 20% of the code that generates 80% of the generic performance problems.&lt;br /&gt;&lt;br /&gt;The&amp;nbsp;technical&amp;nbsp;test engineer (&lt;a class="vt-p" href="http://www.satisfice.com/presentations/agileauto.pdf"&gt;toolsmith&lt;/a&gt;) is&amp;nbsp;responsible&amp;nbsp;for writing and maintaining the weekend scripts. He is supported by the development teams.&lt;br /&gt;&lt;br /&gt;The weekend scripts are automatically executed during the weekend. The reporting process is explained in the next session.&lt;br /&gt;&lt;br /&gt;Weekend scripts have a life span of multiple releases and need to be maintained. When the software changes, the weekend scripts need to be changed also (only when the change impacts the scripts of course).&lt;br /&gt;&lt;h2&gt;Report Integration&lt;/h2&gt;In our organisation we use a lean principle, when there is an error in the production line, first fix the error, then continue the line. The teams first fix the failing automated tests, discuss the open problems found during development and as last start working on new features. When something fails in an automated tests or is reported as a problem, it is automatically processed in the process.&lt;br /&gt;&lt;br /&gt;When a weekend script fails, this could be because of an error or the response time is to long, an call is created in our bug tracking system. The bug is assigned to the team responsible for the module. When the team comes in on Monday and discussed the open bugs, the bug reported by the performance test is automatically discussed and assigned to a team member. During the week the team will fix the bug, and in the next weekend the test will run green or fail again.. in the second case they are two bugs&amp;nbsp;assigned&amp;nbsp;to the team.&lt;br /&gt;&lt;br /&gt;The problems found during the execution of sprint script are not reported automatically. These test are executed by testers during the sprint and any issues are handled during the test execution.&lt;br /&gt;&lt;h2&gt;Conclusions&lt;/h2&gt;The advantages of this approach:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;We don't need any extra testing when we deliver a new release. All the testing is already done during the sprint and the regression tests are executed every weekend;&lt;/li&gt;&lt;li&gt;Testing has become more attractive for (some) testers. Our testers are also executing performance tests, they have expended their work experience. &lt;/li&gt;&lt;/ol&gt;&lt;div&gt;What did we learn:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;teams still need support of the technical test engineer or more experienced testers.&amp;nbsp;Especially&amp;nbsp;when testers are doing performance tests the first time, Loadrunner generates a &amp;nbsp;lot of data... where to look for the possible problems.&lt;/li&gt;&lt;li&gt;it is expensive to set up performance tests, mainly the time and also the licenses costs. Of course depending on which tool you use. Be wise, and determine if you are going to setup your own&amp;nbsp;performance&amp;nbsp;tests or use external&amp;nbsp;capacity;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;We made the right choice by implementing performance tests in our project. I spoke to an tester from an test company and they did some performance tests on our software for customer. They didn't find any issues.... that made me happy.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you have any questions after reading this blog... please leave a comment or send me an email.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-8546213130477272772?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/8546213130477272772/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-performance-testing-how-we.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8546213130477272772'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8546213130477272772'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-performance-testing-how-we.html' title='Agile Performance Testing - How we integrated it into our process'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7541494849871868835</id><published>2010-10-08T10:56:00.001+02:00</published><updated>2010-10-08T10:58:02.539+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>Agile Performance Testing Presentation</title><content type='html'>&lt;div style="text-align: left;"&gt;This is the presentation I used during my session on the Agile Testing days in Berlin 2010. Read the background information of this session in this &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/09/agile-performance-testing.html"&gt;blog&lt;/a&gt;.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;iframe src="https://docs.google.com/present/embed?id=dgbfx6nh_465hm85b5ck" frameborder="0" width="410" height="342"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;If you have any questions please contact me! Exchanging experiences, asking questions and answering questions is a great way to learn.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7541494849871868835?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7541494849871868835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-performance-testing-presentation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7541494849871868835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7541494849871868835'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-performance-testing-presentation.html' title='Agile Performance Testing Presentation'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-1001451698466147082</id><published>2010-10-08T10:44:00.000+02:00</published><updated>2010-10-08T10:44:04.318+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>Agile Testing Days 2010 Berlin, part 2</title><content type='html'>Back home... as already stated in my &lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-testing-days-2010-berlin.html"&gt;first report&lt;/a&gt;,&amp;nbsp;it was a great conference!&lt;br /&gt;&lt;br /&gt;It started with the keynote of Michael Bolton, several slides/visions were already discussed during this tutorial that I attended on Monday. It always surprises me how difficult people find it to answer the question what is quality.... I love the description of Micheal and James Bach: "&lt;i&gt;value of a product to someone who matters"&lt;/i&gt;. The description of testing that is used by Michael is also surprising simple and&amp;nbsp;powerful: &lt;i&gt;"testing is an investigation/exploration to get information about the quality of a product"&lt;/i&gt;. I agree with Micheal that automated testing is very useful, but not the only thing that should be done in a project. I&amp;nbsp;recognize&amp;nbsp;the problem that testers focus too much on test automation and spend not enough time on exploratory testing.&lt;br /&gt;&lt;br /&gt;I loved also the analogy between testing and CSI. Testers provide the data for the judge (In the Netherlands we don't have a jury ;) ) to make a verdict. Of course, the CSI investigators work closely with the police and judges. Testers work closely with the programmers (We are all developers, testers, technical writing, programmers, we all develop software) and customers.&lt;br /&gt;&lt;br /&gt;The &lt;a class="vt-p" href="http://gojko.net/2010/10/06/top-10-reasons-why-teams-fail-with-atdd/"&gt;presentation of Gojko Adzi&lt;/a&gt;c was a great statement against certification. He changed his presentation the night before and it was great. Check out twitter and all the blogs that are write about his presentation. One of the main topics during the conference was the discussion about certification. To state the general feeling: when you attend the scrum master certification for two days, you are certified Scrum Master... are you after two days a Scrum Master who is able to coach and improve a team... I don't think so...&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://il.linkedin.com/in/friedmanlior"&gt;Lior Friedman&lt;/a&gt; had good session about feedback. To summarize... agile is all about feedback and by making the steps smaller and smaller, you are able to get feedback sooner. As a result, it is possible to improve your self after every step. In the end he showed a tool to that automatically runs the unit tests that are affected by a code change. A very interesting tool, I will do some research and find out if there is an&amp;nbsp;comparable&amp;nbsp;tool for Java.&lt;br /&gt;&lt;br /&gt;The last session I attended was of &lt;a class="vt-p" href="http://blog.shino.de/"&gt;Markus Gärtner&lt;/a&gt;. He had a session about self educating, and is of the opinion that a tester should take his own&amp;nbsp;responsibility&amp;nbsp;in become an experienced/skilled testers. I totally agree with that. In his session he showed several ways how you could improve your self as a tester. For example&amp;nbsp;&lt;a class="vt-p" href="http://weekendtesting.com/"&gt;http://weekendtesting.com/&lt;/a&gt;&amp;nbsp;and organizing Testing Dojo's.&lt;br /&gt;&lt;br /&gt;It was my first time on the agile testing days. However, I hope not my last!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-1001451698466147082?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/1001451698466147082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-testing-days-2010-berlin-part-2.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/1001451698466147082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/1001451698466147082'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-testing-days-2010-berlin-part-2.html' title='Agile Testing Days 2010 Berlin, part 2'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-6853116010701496972</id><published>2010-10-05T21:29:00.000+02:00</published><updated>2010-10-05T21:29:11.367+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>Agile Testing Days 2010 Berlin</title><content type='html'>&lt;div class="separator" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: center;"&gt;&lt;img border="0" height="141" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TKt4BraOoqI/AAAAAAAAD3A/pX0EBCUdZJg/s200/20081120184238!Pergamon_Museum_Berlin_2007xx.jpg" width="200" /&gt;&lt;/div&gt;&lt;br /&gt;Perfect and great sessions... I'm thinking what I should say about the &lt;a href="http://www.agiletestingdays.com/index.php"&gt;Agile Testing Days (ATD) 2010&lt;/a&gt; in Berlin... it is great to meet and discuss agile testing with so many testers, developers, coaches, people who are interested in agile testing.&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;/div&gt;&lt;br /&gt;I attended a workshop of &lt;a href="http://www.developsense.com/"&gt;Michael Bolton&lt;/a&gt; on Monday. A lot of information on one day... he was doing the highlights of the &lt;a href="http://www.developsense.com/courses.html"&gt;Rapid Testing course&lt;/a&gt; in one day, normally this course takes three days. It was a very good tutorial,&amp;nbsp;definitely&amp;nbsp;worth the money and time. Some things I picked up from this session:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;testing == gathering/developing information;&lt;/li&gt;&lt;li&gt;in agile environment is important to gather information as fast as possible;&lt;/li&gt;&lt;li&gt;humans have the nature to learn, that's what brought us to the 21nd century.. as a tester it is your task to learn thing about the software.. and you get even paid for learning things every day!&lt;/li&gt;&lt;li&gt;as a tester you are helping the team and customer, doesn't it give a warm feeling to help people? You get paid to help people ;);&lt;/li&gt;&lt;li&gt;it is good to have testers with different backgrounds.. diversity is good. You will find more bugs and issues when people have different backgrounds;&lt;/li&gt;&lt;li&gt;it is not your job as a tester to give a value about the software under tests, just provide the information to the stakeholders;&lt;/li&gt;&lt;li&gt;automated tests, they tell you when you're not done... They don't tell you when you are done. When all tests are green, you're not done testing;&lt;/li&gt;&lt;li&gt;every testers, will focus on the "" correct pattern".. you are looking for tests that confirm your findings... try to break that think pattern, test something that is not logical;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;The first day of the conference was also very interesting, key notes of &lt;a href="http://lisacrispin.com/wordpress/"&gt;Lisa Crispin&lt;/a&gt;, &lt;a href="http://www.lindarising.org/"&gt;Linda Rising&lt;/a&gt; and &lt;a href="http://testobsessed.com/about/"&gt;Elisabeth&amp;nbsp;Hendrickson&lt;/a&gt;. Great key notes, some highlights of the keynotes:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Key note Lisa Crispin:&lt;/li&gt;&lt;ol&gt;&lt;li&gt;When you are not going to fix a problem, remove the problem from your bug registration system;&lt;/li&gt;&lt;li&gt;Only register bugs when it adds value, not because it is required;&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;Key note Linda Rising:&lt;/li&gt;&lt;ol&gt;&lt;li&gt;Difficult to explain, but is was great and fun!&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;Key note Elisabeth Hendrikson&lt;/li&gt;&lt;ol&gt;&lt;li&gt;She is really a good presenter, she had the last key note at 17:40!. Everyone was awake and paying attention!&lt;/li&gt;&lt;li&gt;The set up of the office is important, see also my &lt;a href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office.html"&gt;blog&lt;/a&gt; about that topic;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_f1FQCqmW7c4/TKt8T95epGI/AAAAAAAAD3E/OMpIgcBmwJc/s1600/robotframework.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_f1FQCqmW7c4/TKt8T95epGI/AAAAAAAAD3E/OMpIgcBmwJc/s1600/robotframework.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;I visited several interesting sessions during the day. A session about acceptance test driven development using &lt;a href="http://code.google.com/p/robotframework/"&gt;Robot Framework&lt;/a&gt; by Pekka Klärck, Error Driven Development by Alexandra Imrie and Structures kill testing creativy by Rob Lambert.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Spoke with several people and exchanged ideas about agile testing. Got an introduction about testing in open source projects &amp;nbsp;by &lt;a href="http://fi.linkedin.com/in/petvajda"&gt;Peter Vadja&lt;/a&gt;. Discussed&amp;nbsp;distributed&amp;nbsp;scrum with a person from &lt;a href="http://www.ctco.lv/"&gt;Ctco&lt;/a&gt;. Realised that it is important to find out what the root cause of a problem is, despite good&amp;nbsp;symptom&amp;nbsp;fighting.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To summarize in one word... &lt;b&gt;&lt;u&gt;great&lt;/u&gt;&lt;/b&gt;!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-6853116010701496972?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/6853116010701496972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-testing-days-2010-berlin.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6853116010701496972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6853116010701496972'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/10/agile-testing-days-2010-berlin.html' title='Agile Testing Days 2010 Berlin'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_f1FQCqmW7c4/TKt4BraOoqI/AAAAAAAAD3A/pX0EBCUdZJg/s72-c/20081120184238!Pergamon_Museum_Berlin_2007xx.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-6879200338564098036</id><published>2010-09-24T20:24:00.001+02:00</published><updated>2010-09-24T20:24:00.253+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Agile Performance Testing</title><content type='html'>I would like to share my experience with agile performance testing with you. It is not about the knowledge of a tool like LoadRunner itself. it is about the process to set up a performance testing environment and how to embed it in your agile process.&amp;nbsp;I had a session about this topic during the &lt;a class="vt-p" href="http://www.agiletestingdays.com/index.php"&gt;Agile Testing Days 2010&lt;/a&gt; in Berlin. This blog is a summary of that presentation, this is the first blog about how to set up and agile performance testing&amp;nbsp;environment. In the next blog I will describe how you could embed agile performance testing in your process.&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;For this moment I will assume:&lt;/div&gt;&lt;ol&gt;&lt;li&gt;you have implemented Scrum or some kind of&amp;nbsp;comparable&amp;nbsp;Agile project management method, and the implementation is&amp;nbsp;successful;&lt;/li&gt;&lt;li&gt;quality is important in your organisation, if possible you first fix quality issues before you start developing new software;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;/div&gt;&lt;h2&gt;How to set up Agile Performance Testing&lt;/h2&gt;One day you go to the office and decide to implement agile performance testing. Why? There could be different reasons, for example:&lt;br /&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;a customer found serious problems related to performance;&lt;/li&gt;&lt;li&gt;you would like to take no risk before you deliver software and would like to be certain there no performance issues;&lt;/li&gt;&lt;li&gt;you need to spend you yearly budget on software and decide to buy an expensive performance tool;&lt;/li&gt;&lt;li&gt;you start developing a complete new architecture and would like to monitor the performance from the start;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;Where to start...&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The first step should be of course to write down you requirements for the test tooling. There are several requirements when selecting a tool, for example:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;what kind of technology are you using, or planning to use in the near future;&lt;/li&gt;&lt;li&gt;who is going to perform the performance tests, experienced developers or functional oriented testers with very less programming knowledge;&lt;/li&gt;&lt;li&gt;it is possible to monitor the things you would like to monitor, CPU, Memory, Hits per second, etc;&lt;/li&gt;&lt;li&gt;does it need to integrate with an existing tool, for example create automatically incidents in your incident system or link to requirements in the requirement management system.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;Write down the requirements and perform research by surfing on the internet, reading magazines or visit congresses. The "normal" procedure for selecting a new tool or&amp;nbsp;buying&amp;nbsp;software. If possible try to arrange a demo of the performance test software in combination with your software. On paper everything is possible, always prefer to see live software with the features implemented that are important for you.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As soon as you have a tool selected, the next step is training. Quality should not only be the responsibility of the testers, the whole team should be responsibly&amp;nbsp;for&amp;nbsp;quality. Therefore, not only testers should attend the training, also the developers and the technical test engineers. Everyone should know what the possibilities are of the performance testing tool. Try to use your own software during the training. If you encounter problems, you could directly discuss them with the trainer/consultant.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If everything went well, you have a tool selected and trained the people. Time for the next step...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It is my opinion that all team members should be able to build performance tests. Record and play functionality is nice. However, most of the times it doesn't work or it is hard to maintain. This is because you are using the application structure directly in your test scripts.&amp;nbsp;Therefore, you should build, if possible, a framework to build performance tests. The framework should be a layer that hides the application structure for the the person who creates the performance tests. The framework could be developed by some developers and testers in the team. In general, developers tend to have more knowledge about setting up a good framework then testers.&lt;br /&gt;&lt;br /&gt;Almost there, we have a tool, team members are trained and a framework is there.... in my next post you will read how you could embed agile performance testing in your process.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-6879200338564098036?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/6879200338564098036/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/09/agile-performance-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6879200338564098036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6879200338564098036'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/09/agile-performance-testing.html' title='Agile Performance Testing'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-4978091559684226183</id><published>2010-08-05T20:25:00.022+02:00</published><updated>2010-08-23T08:45:27.998+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Play the Game, Discuss Agile Specifications</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TFKGPVBMTJI/AAAAAAAAD1o/FOysrOJmTmE/s1600/Group20Discussion.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/_f1FQCqmW7c4/TFJzm86o2QI/AAAAAAAAD1g/EnL07Etenno/s1600/complex_model.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="191" src="http://4.bp.blogspot.com/_f1FQCqmW7c4/TFJzm86o2QI/AAAAAAAAD1g/EnL07Etenno/s200/complex_model.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Imagine the following situation: There is project team of two developers already working for several months on a new and complicated feature of an Enterprise application. There are a lot of interfaces and they are doing agile, so documentation is not necessary....Management decides to speed up the project and adds two engineers and two testers. They still believe that when a woman delivers a baby in nine months, nine women deliver a baby in one month ;) You are the scrum master and you have the challenge to speed up the process...&lt;br /&gt;&lt;br /&gt;I experienced this situation half a year ago. The major problem was lack of knowledge for the new team members. The team decided that all team members should be able to do all tasks. There should be no specialization, or at least as less as possible. Additionally, we decided to take the time to spread the knowledge. Knowing that investing in knowledge would pay of in the next iterations.&lt;br /&gt;&lt;br /&gt;We started with some classic knowledge transfer (kt) sessions. The developers who were involved from the beginning explained how the system worked, using a whiteboard. Some knowledge was transferred. However, you already probably know that experiencing something is much more efficient way to learn then just listening to someone. At the end of every kt session the new team members said they understood the model Did they really understood the model or did they understand the what the presenter said... I decided this was not the way to go, the new developers and testers learned the system. However, it went to slow.&lt;br /&gt;&lt;br /&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TFKGPVBMTJI/AAAAAAAAD1o/FOysrOJmTmE/s1600/Group20Discussion.jpg" imageanchor="1" style="clear: left; display: inline !important; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="143" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TFKGPVBMTJI/AAAAAAAAD1o/FOysrOJmTmE/s200/Group20Discussion.jpg" width="200" /&gt;&lt;/a&gt;I read somewhere sometime something about bringing a model to life. (I can't remember where, if you know where please let me know). We played the &lt;name system="" the="" your=""&gt; Game. Remember, building software should also be fun and listening to someone explaining a model is not fun! Every team member represents a sub component or external component, during the game team members communicate with each other as the software would do.By playing the component itself, they experience the software itself.&lt;/name&gt;&lt;br /&gt;&lt;name system="" the="" your=""&gt; &lt;br /&gt;After several kt sessions the new team members knew all different components and the basic interfaces. That was at least something we realized with the kt sessions ;). I assigned every developer to a basic component of the model. Some developers had to be assigned to more than one component. The testers were assigned to different user roles.Everyone looked forward to the meeting, they were excited and curious how it worked out. Until this meeting, no one looked forward to have a kt session.&lt;br /&gt;&lt;br /&gt;The preparation was arrange a meeting room with an digital white board and enough space to walk around the whiteboard. Make sure every team member knew his role during the game.&lt;br /&gt;&lt;br /&gt;We started the meeting, and the testers started the first simple cases. Simply, acting like a user and requesting data or entering new data. The developers accepted the request and passed the necessary data to the next component. The receiving component processed this data, and so on. The end of the chain was that a developer/component gave feedback to the tester. During this first round I wrote down the communication between the components on the whiteboard to make some kind of documentation/minutes.&lt;br /&gt;&lt;br /&gt;In the next round the testers asked more complicated cases or "entered" incorrect data. The different component had to handle this incorrect data and give the correct feedback to the users.&lt;br /&gt;&lt;br /&gt;The last round was to understand the recovery functionality. What happens when one component is not there? In this case it was just a matter of "removing" a developer from the game. The other components had to handle this correctly and again give the correct feedback to the user.&lt;br /&gt;&lt;br /&gt;&lt;/name&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/_f1FQCqmW7c4/TFKMZUzGI-I/AAAAAAAAD1w/C8BkBNyDSEo/s1600/Success.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="103" src="http://4.bp.blogspot.com/_f1FQCqmW7c4/TFKMZUzGI-I/AAAAAAAAD1w/C8BkBNyDSEo/s200/Success.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;The game was a success. Everyone liked the game and the set-up. However, the most important was that all team members finally really understood the system and the complexity. They experience the system! The outcome was also some graphical models that the team members used to discuss improvements in the system.&lt;br /&gt;&lt;br /&gt;All people involved will need some basic knowledge of the system. Therefore, some classic kt sessions are still necessary. Additionally, you will need support of management. If your team is expected to work only and have no kt session meetings... We called the meeting the &lt;your software=""&gt; Game...some people knit the brows when they heard we planned a game. Maybe it could help if use name the session kt session about &lt;your software=""&gt;.&lt;/your&gt;&lt;/your&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-4978091559684226183?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/4978091559684226183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/08/play-game-instead-of-kt-session.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/4978091559684226183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/4978091559684226183'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/08/play-game-instead-of-kt-session.html' title='Play the Game, Discuss Agile Specifications'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_f1FQCqmW7c4/TFJzm86o2QI/AAAAAAAAD1g/EnL07Etenno/s72-c/complex_model.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-5047449382065845149</id><published>2010-07-27T22:13:00.056+02:00</published><updated>2010-07-27T22:13:00.457+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>The Agile Office - Part 3, Fun</title><content type='html'>&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;One of the most important aspects of software development, as not the most important aspect, are the team members. The people who have to build the software. You could come up with all kind of processes, documents, methodologies, etc., in the end the team members have to build the software.&amp;nbsp;Therefore, I believe the agile office is a very important aspect of software development. I would not say good software development is not possible in an agile office. However, the other way around is&amp;nbsp;certainly&amp;nbsp;true. A a real agile office stimulates good software development.&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;I gave a presentation about the&amp;nbsp;&lt;a class="vt-p" href="http://www.xpdays.net/Xpday2009/sessions/A%20Tour%20through%20the%20Agile%20Office.html"&gt;Agile office&lt;/a&gt;&amp;nbsp;on the&amp;nbsp;&lt;a class="vt-p" href="http://www.xpdays.net/Xpday2009/FrontPage.html"&gt;Benelux XP Days 2009&lt;/a&gt;&amp;nbsp;and an improved version on the&amp;nbsp;&lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/Mini%20XPDay/Program.html"&gt;Mini XP Days 2010&lt;/a&gt;&amp;nbsp;in Rheeze, near Eindhoven. For the improved version I created an&amp;nbsp;&lt;a class="vt-p" href="http://spreadsheets.google.com/viewform?formkey=dGIwVXlXdWhCTjJxRnhMQ2xCSWw0MVE6MA"&gt;survey&amp;nbsp;&lt;/a&gt;to collect data about the use, benefits, advantages, disadvantage, etc. of the agile office. I am still interested in extra data. Therefore, if you have time please fill in this&amp;nbsp;&lt;a class="vt-p" href="http://spreadsheets.google.com/viewform?formkey=dGIwVXlXdWhCTjJxRnhMQ2xCSWw0MVE6MA"&gt;survey&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;In three articles I will explain what I think an agile office is. There are three elements important in an Agile Office:&lt;/div&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office.html"&gt;Communication&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-2-nature.html"&gt;Nature&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-3-fun.html"&gt;Fun&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;In this last article I will discuss fun in the Agile Office. It is the smallest article of this thee articles. However, fun is probably most important ;)&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;If you have any questions, remarks, disagree, etc. please let me know! I understand that most of these topics are also nice to have in a not agile office. However, I think they should be really there in an agile office.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;h2&gt;No Clean Desk Policy&lt;/h2&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;People like to personalize their environment. We decorate our house with the furniture and&amp;nbsp;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: arial, sans-serif; font-size: 13px; line-height: 19px; white-space: nowrap;"&gt;accessories&amp;nbsp;&lt;/span&gt;we like, we wear the cloth we like, why not personalize your desk the way you like? In some organisations there is a clean desk policy and employees are no allowed to personalize their desk or office. I think every employee should have the possibility to personalize his work environment. By doing this you feel at home and create an inspiring environment.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TE6X5ziOF9I/AAAAAAAAD1A/uRWuk_TRhBo/s1600/large_clutter-office+(1).jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="133" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TE6X5ziOF9I/AAAAAAAAD1A/uRWuk_TRhBo/s200/large_clutter-office+(1).jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;There is of course a difference between personalizing and a mess... the picture on the left side is far beyond personalizing.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;h2&gt;Hardware&lt;/h2&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;You are expected to deliver the best software possible, work as efficient as possible, create happy customers... is it not logic to have good tooling to do your job? I think it is very frustrated for a engineer to do his work with outdated hardware.&lt;br /&gt;&lt;br /&gt;The hardware of an engineer should be &lt;b&gt;at least&lt;/b&gt; what is required for a customer. In most cases it should be even more,&amp;nbsp;especially&amp;nbsp;when you are working in a multi-tier environment. You&amp;nbsp;probably&amp;nbsp;have an application server, database server, web server running at your local machine. This set up requires hardware that is more then&amp;nbsp;average. For example, a &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Solid-state_drive"&gt;solid state drive&lt;/a&gt; could boost your improvement.&lt;br /&gt;&lt;br /&gt;Two monitors could also increase your happiness. You could use one monitor to display the application and the other monitor to display the &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Integrated_development_environment"&gt;IDE &lt;/a&gt;or test automation tool. There are several reports on the internet to prove your manager that multiple monitors improves efficiency. In most cases, when you are able to work more&amp;nbsp;efficient, you also have more fun in your work.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: 24px; font-weight: bold;"&gt;Relax&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TE6fFCLtLqI/AAAAAAAAD1I/nx5uRT3xdKk/s1600/office_people_relax.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="138" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TE6fFCLtLqI/AAAAAAAAD1I/nx5uRT3xdKk/s200/office_people_relax.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Organize a soccer table, dartboard, ping pong table, &lt;a class="vt-p" href="http://wii.nintendo.com/"&gt;Wii&lt;/a&gt;, at least something to relax during work time. Building, testing, describing software is an intense process. You have to be concentrated and focus on your work. There should be an option to relax during the day. A manager that believes you are concentrated the whole day, fools himself.&lt;br /&gt;&lt;br /&gt;Make sure you set up a&amp;nbsp;separate&amp;nbsp;game room or at least don't disturb people who are working when you're relaxing.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-5047449382065845149?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/5047449382065845149/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-3-fun.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/5047449382065845149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/5047449382065845149'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-3-fun.html' title='The Agile Office - Part 3, Fun'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_f1FQCqmW7c4/TE6X5ziOF9I/AAAAAAAAD1A/uRWuk_TRhBo/s72-c/large_clutter-office+(1).jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-222191695305132853</id><published>2010-07-21T21:54:00.003+02:00</published><updated>2010-07-27T10:59:32.053+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>The Agile Office - Part 2, Nature</title><content type='html'>&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;One of the most important aspects of software development, as not the most important aspect, are the team members. The people who have to build the software. You could come up with all kind of processes, documents, methodologies, etc., in the end the team members have to build the software.&amp;nbsp;Therefore, I believe the agile office is a very important aspect of software development. I would not say good software development is not possible in an agile office. However, the other way around is&amp;nbsp;certainly&amp;nbsp;true. A a real agile office stimulates good software development.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;I gave a presentation about the&amp;nbsp;&lt;a class="vt-p" href="http://www.xpdays.net/Xpday2009/sessions/A%20Tour%20through%20the%20Agile%20Office.html"&gt;Agile office&lt;/a&gt;&amp;nbsp;on the&amp;nbsp;&lt;a class="vt-p" href="http://www.xpdays.net/Xpday2009/FrontPage.html"&gt;Benelux XP Days 2009&lt;/a&gt;&amp;nbsp;and an improved version on the&amp;nbsp;&lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/Mini%20XPDay/Program.html"&gt;Mini XP Days 2010&lt;/a&gt;&amp;nbsp;in Rheeze, near Eindhoven. For the improved version I created an&amp;nbsp;&lt;a class="vt-p" href="http://spreadsheets.google.com/viewform?formkey=dGIwVXlXdWhCTjJxRnhMQ2xCSWw0MVE6MA"&gt;survey&amp;nbsp;&lt;/a&gt;to collect data about the use, benefits, advantages, disadvantage, etc. of the agile office. I am still interested in extra data. Therefore, if you have time please fill in this&amp;nbsp;&lt;a class="vt-p" href="http://spreadsheets.google.com/viewform?formkey=dGIwVXlXdWhCTjJxRnhMQ2xCSWw0MVE6MA"&gt;survey&lt;/a&gt;.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;In three articles I will explain what I think an agile office is. There are three elements important in an Agile Office:&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office.html"&gt;Communication&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-2-nature.html"&gt;Nature&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-3-fun.html"&gt;Fun&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;In this article I will discuss nature in the Agile Office. If you have any questions, remarks, disagree, etc. please let me know! I understand that most of these topics are also nice to have in a not agile office. However, I think they should be really there in an agile office.&lt;br /&gt;&lt;h2&gt;Climate Control&lt;/h2&gt;Most countries have a seasons with different temperatures, in some countries it is always a summer and in some other countries it is almost always winter. A &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Room_temperature"&gt;comfortable temperature&lt;/a&gt; for humans is between 20 &amp;nbsp;&lt;span class="Apple-style-span" style="font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;°C&lt;/span&gt;&amp;nbsp;and 25&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;°C&lt;/span&gt;. Without climate control the temperate in the office will be determined by the temperate outside. There will be days that the room temperature will be between&amp;nbsp;20 &amp;nbsp;&lt;span class="Apple-style-span" style="font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;°C&lt;/span&gt;&amp;nbsp;and 25&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;°C&lt;/span&gt;. However, there will be certain days that the room temperate is below or above a&amp;nbsp;comfortable&amp;nbsp;temperature.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/_f1FQCqmW7c4/TEbKB4ugF0I/AAAAAAAAD0g/MPPULLwJZO4/s1600/hot-and-cold-office-598x307.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="205" src="http://4.bp.blogspot.com/_f1FQCqmW7c4/TEbKB4ugF0I/AAAAAAAAD0g/MPPULLwJZO4/s400/hot-and-cold-office-598x307.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;An agile office should have some kind of climate control to make sure the temperate is in the&amp;nbsp;comfortable&amp;nbsp;zone during the whole year. When thinking about a climate control system, keep in mind that an agile office should be a team room. There will be more then two people working in the room, people also generate heat.&lt;br /&gt;&lt;br /&gt;Every office should have climate control, not only the agile office of course! However, when you have to set up an agile office you should&amp;nbsp;definitely&amp;nbsp;not save money on the climate control.&lt;br /&gt;&lt;h2&gt;Windows&lt;/h2&gt;We all lived outside, or at least our ancestors, 10.000 years ago. The last two&amp;nbsp;centuries&amp;nbsp;factories and office buildings have been build. In terms of&amp;nbsp;evolution&amp;nbsp;this is all on very short time scale.Therefore, I believe we are connected to the weather outside. When the sun shines, most of the people are happy and when it rains we are not happy.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TEbM8NORSPI/AAAAAAAAD0o/ppeaj2ivk5I/s1600/valueweather.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="205" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TEbM8NORSPI/AAAAAAAAD0o/ppeaj2ivk5I/s320/valueweather.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Working in an office without any windows to experience the weather is something people don't like. 88% of the people who participated in my agile office survey really valued experience the weather outside. The photo of the office, in this section, where you don't see any windows doesn't look very motivating to me.&lt;br /&gt;&lt;br /&gt;If possible, an agile office should have windows to experience the weather outside.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://3.bp.blogspot.com/_f1FQCqmW7c4/TEbNnVuZoVI/AAAAAAAAD0w/2Wv2NQnlE-4/s1600/offce_withwall.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_f1FQCqmW7c4/TEbNnVuZoVI/AAAAAAAAD0w/2Wv2NQnlE-4/s320/offce_withwall.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;When you have a lot of windows in your office, you should also have some kind of climate control to control the temperature when the sun shines. See the previous section. &lt;br /&gt;&lt;h2&gt;Chairs&lt;/h2&gt;As already described in the previous section, humans are not "designed" to work in an office. Therefore, the best chair is a bar stool, it is not comfortable. Therefore, it&amp;nbsp;guarantees&amp;nbsp;you will walk around and not site whole day in your chair.&lt;br /&gt;&lt;br /&gt;Make sure there are desk chairs in the agile office that can be adjusted to your personal requirements. On the photo above you see some desk chairs that are ok for a meeting room, not for a workplace.&lt;br /&gt;&lt;br /&gt;When you have flexible workplaces in your agile office, make sure you have also adjustable desk chairs for those workplaces.&lt;br /&gt;&lt;h2&gt;Desk adjustable in height&lt;/h2&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://3.bp.blogspot.com/_f1FQCqmW7c4/TEbQ8Z49NZI/AAAAAAAAD04/LrHZuDBW9Vg/s1600/desk_ergonomics.gif" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_f1FQCqmW7c4/TEbQ8Z49NZI/AAAAAAAAD04/LrHZuDBW9Vg/s320/desk_ergonomics.gif" /&gt;&lt;/a&gt;&lt;/div&gt;As you probably knew, not every person has the same height. Therefore, every person needs a different desk height. It should be possible to adjust the height of the desks to create an ergonomic workplace.&lt;br /&gt;&lt;br /&gt;When you have flexible workplaces in your office, you could consider a desk that is automatic adjustable in height. Just enter the height and press the button and the desk will adjust itself.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-222191695305132853?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/222191695305132853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-2-nature.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/222191695305132853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/222191695305132853'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-2-nature.html' title='The Agile Office - Part 2, Nature'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_f1FQCqmW7c4/TEbKB4ugF0I/AAAAAAAAD0g/MPPULLwJZO4/s72-c/hot-and-cold-office-598x307.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-8015598921764091091</id><published>2010-07-16T21:12:00.004+02:00</published><updated>2010-07-27T10:57:30.990+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile'/><title type='text'>The Agile Office - Part 1, Communication</title><content type='html'>One of the most important aspects of software development, as not the most important aspect, are the team members. The people who have to build the software. You could come up with all kind of processes, documents, methodologies, etc., in the end the team members have to build the software.&amp;nbsp;Therefore, I believe the agile office is a very important aspect of software development. I would not say good software development is not possible in an agile office. However, the other way around is&amp;nbsp;certainly&amp;nbsp;true. A a real agile office stimulates good software development.&lt;br /&gt;&lt;br /&gt;I gave a presentation about the &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2009/sessions/A%20Tour%20through%20the%20Agile%20Office.html"&gt;Agile office&lt;/a&gt; on the &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2009/FrontPage.html"&gt;Benelux XP Days 2009&lt;/a&gt;&amp;nbsp;and an improved version on the &lt;a class="vt-p" href="http://www.xpdays.net/Xpday2010/Mini%20XPDay/Program.html"&gt;Mini XP Days 2010&lt;/a&gt; in Rheeze, near Eindhoven. For the improved version I created an &lt;a class="vt-p" href="http://spreadsheets.google.com/viewform?formkey=dGIwVXlXdWhCTjJxRnhMQ2xCSWw0MVE6MA"&gt;survey &lt;/a&gt;to collect data about the use, benefits, advantages, disadvantage, etc. of the agile office. I am still interested in extra data. Therefore, if you have time please fill in this &lt;a class="vt-p" href="http://spreadsheets.google.com/viewform?formkey=dGIwVXlXdWhCTjJxRnhMQ2xCSWw0MVE6MA"&gt;survey&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In three articles I will explain what I think an agile office is. There are three elements important in an Agile Office:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office.html"&gt;Communication&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-2-nature.html"&gt;Nature&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office-part-3-fun.html"&gt;Fun&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;In this article I will discuss communication in the Agile Office. If you have any questions, remarks, disagree, etc. please let me know!&lt;/div&gt;&lt;div&gt;&lt;h2&gt;Whiteboards&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;One the most important things in an agile office is a whiteboard. An agile office really needs one or if possible more whiteboards. The boards should be close to the engineers (Engineers are testers, developers, everyone working the&amp;nbsp;development&amp;nbsp;team), to make it easy to go to the whiteboard and start a discussion. When an engineer needs to walk ten meters, the step to use the whiteboard in a discussion is too high. The boards should, ideally, behind the engineers.&lt;br /&gt;&lt;br /&gt;Make sure you always have some personal markers at your desk. How often did you not go to a whiteboard to find out there are no markers or all markers are empty... When you have a empty marker, throw it away&amp;nbsp;immediately&amp;nbsp;please.&lt;br /&gt;&lt;br /&gt;What to do when you had a discussion and there are important notes on the whiteboard? Three options, first copy all the notes manually to you personal notebook. It could take some time. However, you are sure you have the notes in your personal administration.&amp;nbsp;Secondly, make a photo with your fancy mobile or the fancy mobile of your&amp;nbsp;colleague. Simple send the photo to all the people involved in the discussion. Sometimes it is difficult to make a photo of the whiteboard because of the reflection. If necessary, create four photo's to cover the whole whiteboard. The last option is to leave it on the whiteboard with a clear statement that people should not wipe out the notes. This is a good approach when the notes are only necessary during the sprint &amp;nbsp;and you have&amp;nbsp;multiple&amp;nbsp;whiteboard in your team room.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://1.bp.blogspot.com/_f1FQCqmW7c4/TEAlt54no7I/AAAAAAAADzo/tPztZSKGq1s/s1600/activewhiteboard.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="133" src="http://1.bp.blogspot.com/_f1FQCqmW7c4/TEAlt54no7I/AAAAAAAADzo/tPztZSKGq1s/s200/activewhiteboard.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;If you have the budget, a &lt;a class="vt-p" href="http://www.prometheanworld.com/server.php?show=nav.15"&gt;active whiteboard&lt;/a&gt; is a real must have. We have one mobile active whiteboard in our department and many teams are using the board. There are two major advantages, you are able to save your notes and to share the whiteboard with team members working on a different location. Most active whiteboards have software to save your notes, and easily copy them. For example, a team is having a drawing a oo-model on the board. When you would like to create some alternatives, simple copy the current page and create a new page in which you make some changes. The original is still there, and the the alternative model also. When you are done, export the pages to pdf and send them to all team members. The other advantage is very&amp;nbsp;useful&amp;nbsp;when you are working with not co-located team. It is possible to share your active whiteboard with simple screen sharing tools like &lt;a class="vt-p" href="http://www.mikogo.com/"&gt;Mikogo&lt;/a&gt; or &lt;a class="vt-p" href="http://www.gotomeeting.com/"&gt;GotoMeeting&lt;/a&gt;. With a microphone and&amp;nbsp;web-cam&amp;nbsp;people all over the world can easily join and see all the notes that are created on the whiteboard. When the other side uses a digital pen it is even possible for them to participate in creating notes.&lt;/div&gt;&lt;div&gt;&lt;h2&gt;Meeting Rooms&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;Optimal communication is one of the most important aspects of (software) projects. When the team is located in one room&amp;nbsp;communication&amp;nbsp;could be&amp;nbsp;maximised. Assuming there are not person related problems of the team members who refuse to talk to other team members. However, when you have eight persons in your team, in one room, it could be nice to have a&amp;nbsp;separate&amp;nbsp;meeting room. Not all discussions are interesting for everyone.A code review of developers is maybe interesting for a technical writer. Therefore, I believe every agile team should have at least one meeting room.&lt;br /&gt;&lt;br /&gt;The meeting room should be in the&amp;nbsp;neighbourhood&amp;nbsp;of the team room. You are not going to walk to another floor or building to go to a meeting room. People tend to be lazy, if the room is too far away it will not be used. It should not be necessary to reserve the room in front, some meetings are planned in front. However, some discussion start&amp;nbsp;spontaneously.&lt;br /&gt;&lt;br /&gt;There are some requirements to the meeting room:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/_f1FQCqmW7c4/TEAv7BN5y9I/AAAAAAAADzw/Tq3IpFzoD3A/s1600/communication_corner.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="133" src="http://4.bp.blogspot.com/_f1FQCqmW7c4/TEAv7BN5y9I/AAAAAAAADzw/Tq3IpFzoD3A/s200/communication_corner.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;Whiteboards, there should be at least one whiteboard in the room to make notes and drawings;&lt;/li&gt;&lt;li&gt;Large table, make sure there is a large table so that there is room to make notes, move things around. You should not be limited in your freedom of movement during discussion because the table is too small;&lt;/li&gt;&lt;li&gt;Chairs..., in our organisation the chairs seems to be able to walk around alone. It happens very often you walk into a meeting room and first have to find some chairs. Make sure the chairs are always there, don't use desk chairs with wheels;&lt;/li&gt;&lt;li&gt;Beamer, when the engineers or customers have notebooks it is very effective to connect the notebook to the beamer and show the screen to all&amp;nbsp;attendees. Sharing the screen for a demo, discussion about a feature or reading requirements together is very effective;&lt;/li&gt;&lt;li&gt;If your team is not a co-located team make sure there is a fixed&amp;nbsp;communication&amp;nbsp;machine. A personal computer with a web-cam, speakers, microphone and for example &lt;a class="vt-p" href="http://www.skype.com/"&gt;Skype &lt;/a&gt;already installed. When the&amp;nbsp;communication&amp;nbsp;tools are already there, it is very easily for engineers located somewhere else to join the meeting. Make sure the pc starts up automatically in the morning and&amp;nbsp;&lt;a class="vt-p" href="http://technet.microsoft.com/en-us/sysinternals/bb897541.aspx"&gt;shut-downs&lt;/a&gt;&amp;nbsp;automatically in the evening.&lt;/li&gt;&lt;/ol&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/_f1FQCqmW7c4/TEBCP0RifHI/AAAAAAAADz4/_e1q0dqjXag/s1600/mobile_corner.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://4.bp.blogspot.com/_f1FQCqmW7c4/TEBCP0RifHI/AAAAAAAADz4/_e1q0dqjXag/s200/mobile_corner.jpg" width="150" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Sometimes you are not allowed to install a communication machine in a meeting room because it is used by different departments or you have multiple meeting rooms&amp;nbsp;available. A solution for this problem is a mobile&amp;nbsp;communication&amp;nbsp;corner. Instead of a desktop use a laptop and buy a &lt;a class="vt-p" href="http://salestores.com/ledl3drficad.html"&gt;mobile cabinet&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Keep always the five minutes rule in mind when installing and configuring a communication corner. If it doesn't work in five minutes, don't use it!&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;h2&gt;Flexible Workplaces&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;Most of the teams have fixed workplaces, all the team members work full time in the team or have their own desk. However, some people that you would like to sit together with the team are not part of the team. They are not 100% available, for example customers, proxy customers, product owners with&amp;nbsp;multiple&amp;nbsp;teams, lead architects, team members from other teams, external consultants, etc. Did you ever start in a team, did you have desktop, chair, network connection? Probably not, I guess most of those items had to be arranged before and after the team stand up.&lt;br /&gt;&lt;br /&gt;To enable external people to join the team easy, make sure you have at least one flexible workplace. A flexible workplace should consist out of:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Desktop, easily configurable in height and not occupied by your old notes;&lt;/li&gt;&lt;li&gt;Chair;&lt;/li&gt;&lt;li&gt;Wireless network, to make sure the person is quick up and running or make sure you have some spare network cables in your team room that are not "borrowed" by other teams;&lt;/li&gt;&lt;li&gt;Docking station, if you use all the same notebooks in your organisation make sure you have one spare docking station available.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;h2&gt;Face-To-Face&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TEBjOzoYQZI/AAAAAAAAD0A/BJyvMuMgjWo/s1600/face-to-face.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TEBjOzoYQZI/AAAAAAAAD0A/BJyvMuMgjWo/s200/face-to-face.jpg" width="200" /&gt;&lt;/a&gt;As you probably already read, I find communication important. Did you ever tried to communicate with someone with your back to each others. It is possible of course. However, you should agree with me that&amp;nbsp;communication&amp;nbsp;face-to-face is much more efficient.&lt;br /&gt;&lt;br /&gt;An agile office should stimulate face-to-face communication.You should be able to topics directly with your team members. There should be no cabinet or wall between you and the rest of the team. Additionally, it should also be possible to discuss in a meeting room, see the section before above.&lt;br /&gt;&lt;br /&gt;If you are working not co-located, a face-to-face discussion is still possible. Make sure all team members have a web-cam and headset. With the Skype, your team mate is just one-click away. You should make sure the barrier to communicate face-to-face is as low as possible.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;h2&gt;Visualise&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;The last important topic of communication is visualisation. People are from nature visually oriented. When people have a discussion about a difficult subject, a picture really helps. There is a saying &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/A_picture_is_worth_a_thousand_words"&gt;a picture is word a thousand words&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://3.bp.blogspot.com/_f1FQCqmW7c4/TEBlxWhXEVI/AAAAAAAAD0I/qeCZ38wUYaE/s1600/clocks.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="133" src="http://3.bp.blogspot.com/_f1FQCqmW7c4/TEBlxWhXEVI/AAAAAAAAD0I/qeCZ38wUYaE/s200/clocks.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;When some team members of you are located in a different time zone you could of course calculate the difference&amp;nbsp;every time. Some of our team members use software to display the local time. However, the old fashion clocks are used most often!&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="http://3.bp.blogspot.com/_f1FQCqmW7c4/TEBnG4nhh3I/AAAAAAAAD0Q/A3Ol9e8etPM/s1600/dashboard.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="133" src="http://3.bp.blogspot.com/_f1FQCqmW7c4/TEBnG4nhh3I/AAAAAAAAD0Q/A3Ol9e8etPM/s200/dashboard.jpg" width="200" /&gt;&lt;/a&gt;Another very&amp;nbsp;powerful&amp;nbsp;visualisation&amp;nbsp;is displaying the automated test results, build status, etc. People are lazy from nature, they will not look up the bug count, or release progress every day. By displaying this data on monitor in a central&amp;nbsp;environment&amp;nbsp;people walk by, stop and are able to see the status of the project in a few seconds. When you build a display, make sure you use clear&amp;nbsp;colours. Red is failure, green is&amp;nbsp;OK, orange is a possible problem. The data on the monitor should be updated regularly, if possible it should be real time.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TEBoT858ifI/AAAAAAAAD0Y/xttJZ_KiDck/s1600/scrumboard.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TEBoT858ifI/AAAAAAAAD0Y/xttJZ_KiDck/s320/scrumboard.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;If you have a team co-located, the use of scrum boards or kanban boards is very powerful. It has the same effect as the dashboard. In a single glance, you are able to see the status of the current iteration. For everyone in the room, engineers, customers, product owners, etc. the status is visible. A side advantage is, when a topic is done you have to physically move it. Everyone in the room is able to see the change and could anticipate on the change. When you have an excel as "scrum board", the change is not visible in the room, only after refreshing the excel file.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-8015598921764091091?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/8015598921764091091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8015598921764091091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8015598921764091091'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/07/agile-office.html' title='The Agile Office - Part 1, Communication'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_f1FQCqmW7c4/TEAlt54no7I/AAAAAAAADzo/tPztZSKGq1s/s72-c/activewhiteboard.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-8008863310772400841</id><published>2010-07-12T10:57:00.058+02:00</published><updated>2010-07-14T10:24:57.218+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Distributed'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Distributed retro</title><content type='html'>One of the most important steps of an agile process is the retrospective. It is a moment in time to evaluate the iteration, quarter, re&lt;span id="goog_1002197386"&gt;&lt;/span&gt;&lt;span id="goog_1002197387"&gt;&lt;/span&gt;&lt;a class="vt-p" href="http://www.blogger.com/"&gt;&lt;/a&gt;lease or whatever the team would like to evaluate. &lt;a class="vt-p" href="http://www.estherderby.com/"&gt;Esther Derby&lt;/a&gt; and &lt;a class="vt-p" href="http://futureworksconsulting.com/"&gt;Diana Larsen&lt;/a&gt; wrote a great book about agile retrospectives. If you would like to organize a retro or are looking for a different approach, you should really read this &lt;a class="vt-p" href="http://www.estherderby.com/books/agile-retrospectives"&gt;book&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TDrrTZ1cDEI/AAAAAAAADy8/rFcWw7kuI2Y/s1600/agileretro.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TDrrTZ1cDEI/AAAAAAAADy8/rFcWw7kuI2Y/s320/agileretro.png" /&gt;&lt;/a&gt;&lt;/div&gt;My intention is not discuss the book in this blog. However, I need to give you some information from the book to understand my problem. &lt;br /&gt;&lt;br /&gt;A retro has different stages. Roughly:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Introduction, why are we here, what is the goal of the retro, what is the agenda;&lt;/li&gt;&lt;li&gt;Collect the data, facts, emotions, events, (un)completed user stories, etc. Make sure everyone has the same data;&lt;/li&gt;&lt;li&gt;Analyse&amp;nbsp;the data, why did al those events happen?&lt;/li&gt;&lt;li&gt;Identify actionable items, what could the team do to improve or add used practice to there already existing process;&lt;/li&gt;&lt;li&gt;Close the retro, evaluate the retro and explicit close the retro.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;For every stage Esther and Diana describe activities you could use. They describe many great activities in the book. Some the activities are already know to everyone, and some are refreshing.&amp;nbsp;For example:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Check-in, an&amp;nbsp;activity&amp;nbsp;that could be used during the introduction. Ask every person attending the retro to answer a simple question in maximum five words. The question could be for example: "what it one thing that's on your mind about this topic that we are going to discuss?". Goal is to make sure everyone is in the retro and&amp;nbsp;focussed&amp;nbsp;on the retro;&lt;/li&gt;&lt;li&gt;Return on time invested (ROTI), an activity to generate feedback about the retro process itself and measure how the attendees experienced the retro. Draw a line on white board with five marks, starting with lost&amp;nbsp;principle&amp;nbsp;(no benefit received from time invested) ending with high return (received benefit greater than time invested). Ask every team member to give their ROTI of the retro and discuss why the ROTI is as it is. Find out how the retro could be improved.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Back to my situation. I had to facilitate a retro about Q1 of 2010 with a development team. The idea was to look back on several iterations (one iteration is one month) and learn from the all things that happened. There were some team changes in January and the team had to find a new &lt;a class="vt-p" href="http://en.wikipedia.org/wiki/Tuckman's_stages_of_group_development"&gt;balance&lt;/a&gt;. Furthermore, the team lead had left the team, how did the team cope with this?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://1.bp.blogspot.com/_f1FQCqmW7c4/TDwyKjBMIvI/AAAAAAAADzg/Ygia4Rd4WkM/s1600/a470-distributed-scrum.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_f1FQCqmW7c4/TDwyKjBMIvI/AAAAAAAADzg/Ygia4Rd4WkM/s320/a470-distributed-scrum.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;Here comes the problem..... the team was not co-located.... Most of the activities described in the book of Esther and Diana assume you have a co located team. There are activities that require teams to write down things on a whiteboard, group index cards, write text on &lt;a class="vt-p" href="http://www.3m.com/us/office/postit/"&gt;post-its&lt;/a&gt;. All those things are hard to do when you have four team members in India and four team members in the Netherlands.&lt;br /&gt;&lt;br /&gt;Still, I think a retro should be fun. Therefore, I selected several activities from the book and tried to implement them in a distributed environment. I think it went pretty well, the retro was a success and everybody enjoyed the retro.I will first shortly explain the activities, and secondly how I implemented them in a distributed environment.&lt;br /&gt;&lt;br /&gt;I selected the following activities:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Check-in, already described above.&lt;/li&gt;&lt;li&gt;Time line, create a&amp;nbsp;time line&amp;nbsp;of the period that is discussed in the review. Ask the team members to add events, emotions, etc. that they experienced during the period.&lt;/li&gt;&lt;li&gt;Like to Like, team members take turns in judging which events of the period best fits with their quality cards. As the cards are evaluated team members learn about each other perspectives on the same events. Quality cards are cards with words like, Fun, On-Time, Cool, Awesome, etc. For the detailed explanation you really need to read the book.&lt;/li&gt;&lt;/ul&gt;The physical set up I used:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Two meeting rooms, one in the Netherlands and one in India;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.skype.com/"&gt;Skype&lt;/a&gt;, and both sides a high quality webcam;&lt;/li&gt;&lt;li&gt;&lt;a class="vt-p" href="http://www.prometheanworld.com/server.php?show=nav.15"&gt;Interactive Whiteboard&lt;/a&gt; with &lt;a class="vt-p" href="http://www.gotomeeting.com/"&gt;screen sharing&lt;/a&gt;, By using screen sharing the Indian team members could follow everything that was written or published on the board.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;The check-in was relative easy, I asked all team members: "How would you describe Q1 in one or two words?". I wrote the answers on the whiteboard to make sure everyone could read them and understand them. This activity is relative easy to do with a not co-located team.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TDrrISssRKI/AAAAAAAADy0/jnPXzCzY33I/s1600/activboard-100-fixed.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TDrrISssRKI/AAAAAAAADy0/jnPXzCzY33I/s320/activboard-100-fixed.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The time line activity is harder to do with a distributed team. Ester and Diana describe in their book, that team members should use stick notes, or just a marker to write their events on a whiteboard. People should discuss in small groups, two or three people. I solved this &lt;i&gt;problem&lt;/i&gt;&amp;nbsp;by preparing a digital slide on the interactive whiteboard. I draw a time line that covered Q1. I asked people just to call out events, emotions, user stories completed, etc during Q1. I wrote the items on the whiteboard and trigger the team members to come up with new items. The problem is that you don't have the small groups, and that people could be afraid to say something in a large group. However, everyone felt safe and comfortable to speak. In my opinion everyone&amp;nbsp;actively&amp;nbsp;participated in this activity.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="http://4.bp.blogspot.com/_f1FQCqmW7c4/TDrrr-QUfaI/AAAAAAAADzE/jZ_8RT6CaN4/s1600/video-conferencing.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="133" src="http://4.bp.blogspot.com/_f1FQCqmW7c4/TDrrr-QUfaI/AAAAAAAADzE/jZ_8RT6CaN4/s200/video-conferencing.jpg" width="200" /&gt;&lt;/a&gt;The major challenge was applying the activity "like-to-like" in a distributed team. The activity involves playing quality cards, people need to quickly play their event card, etc. After the time line activity I asked all team members to write down things that we need to stop doing, continue doing or try. The input for most of the team members came from the time line activity. The team member used paper cards to write down their things. I created a digital quality cards (png files) and a small HTML page. The page uses a java script to display a random picture from a specific folder. During the retro I displayed the HTML page on the laptop that was connected to the digital whiteboard, team members in the Netherlands and India could see the page. As facilitator I opened the page to display the first quality card (By refreshing the page a new card was displayed), all team members could see the quality card. By using the HTML page, I was able to show a quality card to all distributed team members at the same time. We used the webcam to find out which team member played his card last, that card is removed from the game.&lt;br /&gt;&lt;br /&gt;The action to identify&amp;nbsp;improvements&amp;nbsp;was also done by using the whiteboard. I wrote down the things I heard during the like-to-like game and we discussed them in the team.&lt;br /&gt;&lt;br /&gt;The closing of the retro was done by using an activity called &lt;a class="vt-p" href="http://aigamedev.com/open/articles/perfection-game/"&gt;the perfection game&lt;/a&gt;. Relative simply for also distributed team.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://3.bp.blogspot.com/_f1FQCqmW7c4/TDrsC_G3D3I/AAAAAAAADzM/9Kkh1kE97NA/s1600/33052-Clipart-Illustration-Of-A-Shocked-School-Girl-Conducting-A-Chemistry-Experiment-While-Her-Chemicals-Explode.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="159" src="http://3.bp.blogspot.com/_f1FQCqmW7c4/TDrsC_G3D3I/AAAAAAAADzM/9Kkh1kE97NA/s200/33052-Clipart-Illustration-Of-A-Shocked-School-Girl-Conducting-A-Chemistry-Experiment-While-Her-Chemicals-Explode.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Working in a distributed team has challenges. You have limits in the things you could do with team. However, when you are&amp;nbsp;creative&amp;nbsp;and use the right tools you could come close to a retrospective that is as efficient and as much fun as co located team. Be creative and don't hesitate to&amp;nbsp;experiment! There is always room to improve! &lt;br /&gt;&lt;br /&gt;For example, something I would improve next time is explain clearly the activity to make sure everyone understands the activity. Maybe inform the team in front about the activities that are used so they can prepare. When you, as facilitator, organize a retro as described above you will probably see team that is enjoying the retro and appreciates the effort you made.&lt;br /&gt;&lt;br /&gt;I have included the &lt;a class="vt-p" href="http://db.tt/LecINB"&gt;materials&lt;/a&gt;&amp;nbsp;(digital quality cards, HTML page and the agenda) I created for the retrospective, feel free to use them. I would appreciate with when you send me an email if you use them.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-8008863310772400841?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/8008863310772400841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/07/distributed-retro.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8008863310772400841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8008863310772400841'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/07/distributed-retro.html' title='Distributed retro'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_f1FQCqmW7c4/TDrrTZ1cDEI/AAAAAAAADy8/rFcWw7kuI2Y/s72-c/agileretro.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-2019985566026552405</id><published>2010-06-11T14:26:00.002+02:00</published><updated>2010-10-19T10:20:28.755+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><category scheme='http://www.blogger.com/atom/ns#' term='Opinion'/><title type='text'>Software and Luck don't go hand in hand</title><content type='html'>Why is everyone in software&amp;nbsp;development&amp;nbsp;always&amp;nbsp;optimistic?&amp;nbsp;Imagine the following situation....&lt;br /&gt;&lt;br /&gt;A development team is working on a new product with a new architecture. They did six iterations of two weeks and realised twice their commitment in those six iterations. Their&amp;nbsp;average&amp;nbsp;velocity is 10&amp;nbsp;&lt;a class="vt-p" href="http://www.c2.com/cgi/wiki?XpPlanningTerminology"&gt;gummy bears&lt;/a&gt;. The load for the last two iterations of the release is 25 gummy bears.The team is discussing the progress of the release together with the product owner. Phrases that are used are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;If everything goes well...&lt;/li&gt;&lt;li&gt;We have estimated 5 gummy bears, it could be 1 and if we have bad luck 10....&lt;/li&gt;&lt;li&gt;We have done the difficult part...&lt;/li&gt;&lt;li&gt;I think it is possible. However, I will not bet...&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Do you recognize such a situation, have you ever been in such situation? How often did it go well? How often did your project have all the luck it needed? How often was the user story over estimated? I think when you are honest... it almost never happened.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Why is almost everyone in software development teams always optimistic?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We believe we should please our customer almost always. I could agree with that. However, I don't agree in which way a customer should be satisfied.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a class="vt-p" href="http://www.smallbizpod.co.uk/news/wp-content/blogimages/SecondHandCarSalesmenTopComplaintsChart_E9CE/carsales.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="188" src="http://www.smallbizpod.co.uk/news/wp-content/blogimages/SecondHandCarSalesmenTopComplaintsChart_E9CE/carsales.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Imagine you buy a second hand car of 15 years old for you girl-friend or boy-friend. The salesman tells you there has never been a problem with the car, not a single issue. Do you believe this salesman?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You are looking around for a new house. You and your partner visit two houses. The broker of the first house shows you around. The kitchen is pretty old and some hinges are old and need&amp;nbsp;replacement. There was a leak in the bathroom and it has been fixed by an official plumber. For the rest the house looks pretty well. The second broker shows you around in his house and explains all the great things in the house, no single issue.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Do you trust the car salesman and which broker do you trust most?&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What is different in software development? I think nothing. Let's go back to the case that I described in the begin. Imagine, there are two teams, with the same history. Team 1 is acting as in the described scenario. However, team 2 is acting different. They explain it will be very difficult to deliver all the user stories. They will&amp;nbsp;definitely&amp;nbsp;do their best. However, no commitment is given on the reminder user stories for the release.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a class="vt-p" href="http://2.bp.blogspot.com/_f1FQCqmW7c4/TBIiVuLvQ0I/AAAAAAAADxw/_tZruRay0co/s1600/tegel.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_f1FQCqmW7c4/TBIiVuLvQ0I/AAAAAAAADxw/_tZruRay0co/s320/tegel.jpg" /&gt;&lt;/a&gt;You are the product owner, which team do you trust and with which team would you like to do business?&lt;br /&gt;&lt;br /&gt;We should be realistic to our customers! When a project is difficult, when a release scope is not realistic, when the architecture is new, we should communicate this to the customer. I would say be honest and&amp;nbsp;realistic to yourself and the customer. What do you think?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-2019985566026552405?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/2019985566026552405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/06/software-and-luck-dont-go-hand-in-hand.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/2019985566026552405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/2019985566026552405'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/06/software-and-luck-dont-go-hand-in-hand.html' title='Software and Luck don&apos;t go hand in hand'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_f1FQCqmW7c4/TBIiVuLvQ0I/AAAAAAAADxw/_tZruRay0co/s72-c/tegel.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-6089481905937380298</id><published>2009-11-08T16:13:00.000+01:00</published><updated>2010-05-19T13:45:18.039+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Distributed'/><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><title type='text'>Agile Testing: A Report from the Frontline</title><content type='html'>The first &lt;a href="http://www.agiletestingdays.com/"&gt;European Agile Testing&lt;/a&gt; conference was organised by &lt;a href="http://www.diazhilterscheid.de/"&gt;Díaz &amp;amp; Hilterscheid&lt;/a&gt; In October 2009.&lt;br /&gt;&lt;br /&gt;I gave a presentation about&amp;nbsp;&lt;a href="http://softwaredevelopmentisfun.blogspot.com/2008/04/testing-and-scrum.html"&gt;Testing and Scrum&lt;/a&gt;&amp;nbsp;at the&amp;nbsp;&lt;a href="http://www.scrumalliance.org/events/2"&gt;Scrum Gathering 2007&lt;/a&gt;&amp;nbsp;in London. A&amp;nbsp;colleague of my&amp;nbsp;revised the presentation and&amp;nbsp;send in a paper with the title&amp;nbsp;&lt;i&gt;Agile Testing: A Report from the&amp;nbsp;Frontline&lt;/i&gt;. The paper was was selected and the&amp;nbsp;colleague of my created this &lt;a href="https://docs.google.com/present/edit?id=0AbtzPGIG_DTXZGdiZng2bmhfMzg0Z2o4ZG1mY3c&amp;amp;hl=en"&gt;presentation&lt;/a&gt; and gave it on the &lt;a href="http://www.agiletestingdays.com/2009/prog13.html"&gt;first&lt;/a&gt; day of the conference.&lt;br /&gt;&lt;br /&gt;&lt;iframe frameborder="0" height="342" src="http://docs.google.com/present/embed?id=dgbfx6nh_384gj8dmfcw" width="410"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;This year we have session about Agile Performance Testing, check out the &lt;a href="https://docs.google.com/viewer?url=http://www.agiletestingdays.com/AgileTestingDays_2010_Program.pdf"&gt;program &lt;/a&gt;for more information.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Below is the summary of the presentation of 2009.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;In the summer of 2005, a large software development project at Planon had spun out of control. Scrum was introduced to get the project back on track. Currently, eight development teams and one support team work on the Planon software suite.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Testers play an important role in our Scrum process. Typically a team consists of a functional designer, four developers, two testers and a technical writer. The testers act as the team’s quality conscience. They are good communicators and team players. Having them on the teams has contributed greatly to the success of our Agile projects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;During the sprint planning meeting, the testers estimate and plan their tasks. With their functional knowledge, they ask questions to clarify the requirements for the team. Our risk matrix helps them to determine the required test effort and coverage. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;During the month-long sprint, testers perform their tasks: testing bug fixes, preparing ET charters or test cases, and setting up and maintaining automated regression tests. We try to prevent “mini-waterfalls”; this requires discipline from every team member. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Setting up and maintaining the test automation framework can become a pitfall when time and effort are not invested.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;The test manager is responsible for the test policy and -strategy; he coaches the testers and facilitates the monthly professional circle and test retrospective meetings.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;The transition to Agile proves to be hard for some testers. We focus on Agility during recruitment and training.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-6089481905937380298?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.agiletestingdays.com/2009/' title='Agile Testing: A Report from the Frontline'/><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/6089481905937380298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/05/distributed-testing-bridge-too-far.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6089481905937380298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6089481905937380298'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/05/distributed-testing-bridge-too-far.html' title='Agile Testing: A Report from the Frontline'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-1520432988619548226</id><published>2009-10-15T16:56:00.000+02:00</published><updated>2010-05-19T13:42:38.220+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Distributed'/><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>TestNet 2009 Fall Event</title><content type='html'>At Planon we started with distributed teams in 2008. We use the set up discussed in a &lt;a href="http://scrumjeffsutherland.blogspot.com/2008/04/managing-offshore-software-projects.html"&gt;white paper&lt;/a&gt; of &lt;a href="http://scrumjeffsutherland.blogspot.com/"&gt;Jeff Surtherland&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The theme of &lt;a href="http://www.testnet.org/Produktie/Bibliotheek/Presentaties.html"&gt;TestNet 2009 Fall Event&lt;/a&gt; was &lt;i&gt;Testing in different worlds&lt;/i&gt;. We created a presentation to present our experiences with distributed testing in a distributed scrum&amp;nbsp;environment. My colleague send in the paper and was selected to give her &amp;nbsp;&lt;a href="https://docs.google.com/present/edit?id=0AbtzPGIG_DTXZGdiZng2bmhfMzI4Zjk5dGo5Y2s&amp;amp;hl=en"&gt;presentation&lt;/a&gt;.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;iframe frameborder="0" height="342" src="http://docs.google.com/present/embed?id=dgbfx6nh_328f99tj9ck" width="410"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The summary of the presentation is below.&lt;br /&gt;&lt;br /&gt;Planon develops a standard software suite and has adapted Scrum four years ago. To extend its software development capacity, Planon has recruited new staff in Hyderabad, India. Currently, seven out of nine teams are working in a distributed manner, i.e. one or more team members are located in India. The split is straight down the middle, not role-based. On average, half of the developers and testers are located in the Netherlands, and the other half is located in India.&lt;br /&gt;&lt;br /&gt;Most challenges apply to the whole team, but some apply to the testers in particular. In India, the hierarchy in software development is much stronger, where the testers usually are at the bottom. Communication lines are long, with a lot of managers in between the developer and the tester. In our Scrum teams, all members are equal and the team manages itself. For our new Indian colleagues, that proved to be quite a “culture shock”.&lt;br /&gt;&lt;br /&gt;We covered this issue while recruiting Indian testers; we assessed the candidates’ ability to adjust to our way of working. After a first selection (primarily focused on language), the candidates participated in a hands-on workshop with practical cases, which uncovered their communication and teamwork skills. Planon now employs eleven Indian testers.&lt;br /&gt;&lt;br /&gt;Distributed testing also has logistical challenges: our nightly and continuous build processes provide the tester with new software versions regularly, but getting that software quickly to the other side of the world is difficult.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-1520432988619548226?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.testnet.org/Produktie/Bibliotheek/Presentaties%2520najaar%25202009/Hettema.pdf' title='TestNet 2009 Fall Event'/><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/1520432988619548226/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/05/testnet-2009-fall-event.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/1520432988619548226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/1520432988619548226'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/05/testnet-2009-fall-event.html' title='TestNet 2009 Fall Event'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7478835179830899441</id><published>2008-10-25T15:41:00.000+02:00</published><updated>2010-05-19T13:43:36.205+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><title type='text'>Agile Holland 2008</title><content type='html'>This is a &lt;a href="https://docs.google.com/present/edit?id=0AbtzPGIG_DTXZGdiZng2bmhfNDM1am53N2ZtZ2Q&amp;amp;hl=en"&gt;presentation&lt;/a&gt; that Maarten Smeets and I gave at Agile Holland 2008.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The idea was to let the audience decide the which subjects we should present. We just asked in which items they were interested, sorted the items based on interest. Every item was presented in a timebox of approx. five minutes.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The presentation is already two years old, a lot changed during those two years. If you would like to know more about a topic just send me an email.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;iframe frameborder="0" height="342" src="http://docs.google.com/present/embed?id=dgbfx6nh_435jnw7fmgd" width="410"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Below is the description of the session on the site of &lt;a href="http://www.agileholland.com/"&gt;agileholland.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Who are we to determine what you would like to know... isn't the product owner not responsible for the &amp;nbsp;return on investment? The audience has the role of product owner, Maarten Smeets and Ralph van Roosmalen will play the team. They will transfer the product backlog items into value for the product owner.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;The content of the presentation is determined by the audience. We offering the following subjects and the audience should create a ranking. The product backlog items are:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Release management&lt;/li&gt;&lt;li&gt;Requirement Management&lt;/li&gt;&lt;li&gt;Agile Testing&lt;/li&gt;&lt;li&gt;Retrospectives&lt;/li&gt;&lt;li&gt;Scrum and the impact on the rest of the organisation&lt;/li&gt;&lt;li&gt;Department structure and Scrum&lt;/li&gt;&lt;li&gt;Distributed Scrum&lt;/li&gt;&lt;li&gt;Tools&lt;/li&gt;&lt;li&gt;How is Scrum implemented at Planon&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Planon started with Scrum in 2005. They have a rich experience on several aspects of Agile Software Development, from requirement management until release a new software release.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7478835179830899441?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://agileholland.com/pagina/conferentie-2008-sessies' title='Agile Holland 2008'/><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7478835179830899441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/05/agile-holland-2008.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7478835179830899441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7478835179830899441'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2010/05/agile-holland-2008.html' title='Agile Holland 2008'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-8104488665010033448</id><published>2008-09-30T20:00:00.003+02:00</published><updated>2008-09-30T20:00:00.262+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>How to improve your team with retrospectives</title><content type='html'>This is a presentation I gave at the Dutch 11th &lt;a href="http://www.spiderconferentie.nl/"&gt;Spider Conference&lt;/a&gt;. It is an introduction about retrospectives and contains some lessons learned from the real world.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;iframe src="http://docs.google.com/EmbedSlideshow?docid=dgbfx6nh_220dc34c9cq" frameborder="0" width="410" height="342"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-8104488665010033448?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://docs.google.com/Presentation?id=dgbfx6nh_220dc34c9cq' title='How to improve your team with retrospectives'/><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/8104488665010033448/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/09/how-to-improve-your-team-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8104488665010033448'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8104488665010033448'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/09/how-to-improve-your-team-with.html' title='How to improve your team with retrospectives'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-8612952919399815224</id><published>2008-07-24T09:57:00.003+02:00</published><updated>2008-08-13T15:03:12.903+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='People'/><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><title type='text'>How to coach to testers on Exploratory Testing</title><content type='html'>We are currently starting with &lt;a href="http://jeffsutherland.com/scrum/2007/04/oursourcing-strategy-only-work-with.html"&gt;distributed Scrum Teams&lt;/a&gt;. We have one part of a team located in the Netherlands and the other part in India. The Dutch side of the team exists out of one functional designer, one tester, one technical writer and two developers. The India side exists out of two developers and two testers. I am not going to discuss the distributed approach in this blog, only the problem of the Dutch tester ;)&lt;br /&gt;&lt;br /&gt;We use a lot of Exploratory Testing (ET) in our test strategy. We have created a standard ET Charter, the tester has to decide per product backlog item which items are relevant to test. You need a lot of knowledge of the application and of testing to do good ET. The testers in India are familiar with testing. However, not with ET and of course relative new to our software. The problem of the Dutch tester was: "How can I coach the Indian testers and not do all the ET again to verify their work?"&lt;br /&gt;&lt;br /&gt;We discussed this problem in our Test Retrospective and came up with the following ideas for him:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Accept that not all problems will be found;&lt;/li&gt;&lt;li&gt;Use pair-testing;&lt;/li&gt;&lt;li&gt;Select one item of the ET charter with tester X and discuss it, select another item of another ET Charter and discuss it with test Y;&lt;/li&gt;&lt;/ol&gt;Let me explain the ideas in more detail.&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;Accept that not all problems will be found&lt;/span&gt;&lt;br /&gt;The only&lt;/span&gt;&lt;span style="font-size:100%;"&gt; guarantee that you have when you deliver software that it contains bugs. You will never find all bugs for acceptable costs. If you hire a lot of testers, hire the best engineers, review all specs, etc., you have change of creating software without bugs. However, in most companies or projects this is not possible.&lt;br /&gt;&lt;br /&gt;In our test strategy we have written that high risk items will be tested by the most senior tester of the team. The new Indian testers are not very experienced so they will not start testing the high risk items. The team selects it own work, that is part of Scrum, and will also select some simple features. The new Indian testers can be assigned to test the simple features, it is part of their training. The change that Developers introduce bugs is not that high and if so, the risk is very low because it concerns only simple features.&lt;br /&gt;&lt;br /&gt;So we assign simple tasks to the new team members, the risk of introducing new problems is not high and the change of finding them is very high. In case a bug slips through it is no big risk for the customer because it is a low risk feature.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Use pair-testing&lt;/span&gt;&lt;br /&gt;In a previous blog I wrote an article about &lt;a href="http://softwaredevelopmentisfun.blogspot.com/2008/07/pair-testing.html"&gt;pair testing&lt;/a&gt;. It is wise to use pair testing in combination with the next idea.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Select one item of the ET charter with tester X and discuss it, select another item of another ET Charter and discuss it with tester Y&lt;/span&gt;&lt;br /&gt;We use a standard ET Charter as template for all ET testing. Standard features are tested with the same ET Charter and some configuration parts are used for in parts of our software. You could discuss every item of the ET Charter with every tester, this will cost a lot of time. However, an option is to select a certain item of the Charter and execute pair testing. The new tester is trained and learns from the experience of the senior tester. The new testers can transfer his knowledge also to his colleague in India.&lt;br /&gt;&lt;br /&gt;The Dutch tester could test the same item with the other Indian tester. However, what is the value? Sure, the tester learns from the experience of the senior tester but the Indian tester that already did pair testing could also explain how to test the issue. We think it is more efficient to test another issue from the ET Charter with the second Indian tester. He can share his knowledge with his colleague tester, in this case you have trained two testers in India on different subjects.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Conclusion&lt;/span&gt;&lt;br /&gt;It is no easy to train two new testers in a distributed Scrum team, that is located on the other side of the world. As (project/test/development/etc) manager you should be aware of the risk and accept that some problems will slip through. With good risk management done by the team, pair testing and efficient coaching you can train the testers as fast as possible on the job. In the end the most important issue is communication! If there is no communication between the testers every coaching model has no change of succeeding.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-8612952919399815224?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/8612952919399815224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/07/how-to-coach-to-tester-on-exploratory.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8612952919399815224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/8612952919399815224'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/07/how-to-coach-to-tester-on-exploratory.html' title='How to coach to testers on Exploratory Testing'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-3774038150892751916</id><published>2008-07-12T16:28:00.001+02:00</published><updated>2008-07-12T16:28:01.032+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Pair Testing</title><content type='html'>&lt;span&gt;&lt;span style="font-weight: bold;"&gt;Introduction&lt;/span&gt;&lt;br /&gt;This is an article about pair testing, maybe I going to create a presentation based on this articile. If you have any comments or remarks please let me know. Please also take a look at the sources at the end of the article, I have used their knowledge and opinions to form my own opinion and view on pair testing.&lt;br /&gt;&lt;br /&gt;At our development department we use &lt;a href="http://en.wikipedia.org/wiki/Scrum_%28development%29"&gt;Scrum &lt;/a&gt;as a development framework. Scrum is an agile framework. &lt;a href="http://www.satisfice.com/articles/et-article.pdf"&gt;Exploratory Testing&lt;/a&gt; (ET) and &lt;a href="http://www.extremeprogramming.org/rules/pair.html"&gt;Pair Programming&lt;/a&gt; (PP) are often used in Agile environments. If you combine those techniques it results into Pair Testing (PT).&lt;br /&gt;&lt;br /&gt;In this article I would like to explain to you what Pair Testing is. The article is intended for people who would like to start with Pair Testing or who are just interested in Pair Testing.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What is Pair Testing&lt;/span&gt;&lt;br /&gt;Pair Testing is testing of software by two team members sitting behind one machine. One team member is in control of the mouse and keyboard, the other one is making notes, discussing the test scenarios and asking questions. One of the two should be a tester and the other one could be a developer or business analyst.&lt;br /&gt;&lt;br /&gt;PT is not intended to execute formal test cases, PT uses Exploratory Testing. I will not cover ET in depth in this article. ET is an informal test technique and requires extensive test experience and/or good knowledge of the software under test (SUT). When you pair a developer or business analyst and a tester, you have test knowledge and knowledge of SUT.&lt;br /&gt;&lt;br /&gt;Pair Programming is a common practice in Extreme Programming. Pair Programming is experienced as a good approach for programming software. Pair Testing is a similar technique for testing software.&lt;br /&gt;&lt;br /&gt;If you use PT, both team members should be equal. It should not be that the senior team member is using the junior team member as a scribe. The team members should work together and actively contribute to the PT session.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Why use Pair Testing&lt;/span&gt;&lt;br /&gt;Pair Testing has some clear advantages above normal ET. The advantages are:&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span&gt;Developer or business analysts approach the software from a different view. They think in good paths, for example “I have to create an address and edit the fields.” The testers will also look at the exceptions, for example “What happens when I create an address and press cancel instead of save…”&lt;/span&gt;&lt;/li&gt;&lt;li&gt;When PT is executed with a business analyst their will be automatically knowledge sharing between the business analyst and tester. The business analyst will share his knowledge of the application of business with the testers during the session.&lt;/li&gt;&lt;li&gt;If a new project is started with new team members who are new to agile development their will be often a barrier between testers and developers. By using PT the team members will work closely together and get to know each other better.&lt;/li&gt;&lt;li&gt;Working in Pairs keeps you sharp, you can not doze off. You will keep each other sharp.&lt;/li&gt;&lt;li&gt;If you find problems and decide to register them in a bug registration system, the problem is automatically reviewed. You work in pairs, so the data you entered is immediately reviewed by the other one.&lt;/li&gt;&lt;li&gt;As a tester you will encounter mysterious bugs that seem to occur at random. In a PT session with a developer you could find a pattern and thereby the cause of the bug. The developer will probably see the link between the problems because he has knowledge of the software framework.&lt;/li&gt;&lt;li&gt;The last reason to use PT is maybe the most important one: It is fun, working together with team members is fun.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span&gt;&lt;span style="font-weight: bold;"&gt;When not use Pair Testing&lt;/span&gt;&lt;br /&gt;If you don’t have set up the right conditions for PT you should not start using it. However, there are some circumstances that you could better not use PT even if the right conditions are set.&lt;br /&gt;&lt;br /&gt;Do not use Pair Testing when:&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span&gt;All executed test should be automated. The result of PT is findings and no test cases. You can not use the output of a PT session directly for test automation. This problem also occurs when you use ET as a single tester.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Team members can not work together. If you have two team members who can not work together because their characters clash you should not use PT.  The team members must be able to communicate well and work together without quarrels.&lt;/li&gt;&lt;li&gt;If you are only going to execute structured test cases. It does not add any value execute the test cases together. This kind of tasks can be done by one team member alone.&lt;/li&gt;&lt;li&gt;The SUT does not allow PT. Imagine a batch operation that runs for one hour and the result is comparing output data with an excel sheet. This kind of work can also be done by a team member alone.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span&gt;&lt;span style="font-weight: bold;"&gt;Set up a Pair Testing environment&lt;/span&gt;&lt;br /&gt;To allow good PT you need to set up a good environment.&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span&gt;The team members should work voluntarily together. It will not work to force cooperation so a Test manager, Scrum Master, Test lead, etc. you should create an atmosphere that team members are willing to work together.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;A room or desk where the team members can work undisturbed. Two team members working together should not imply twice as much disruption ;). So for example switch of mobile phones and close the email application.&lt;/li&gt;&lt;li&gt;The workplace should support two people sitting behind one desk. You can not ask people to work together if there is no room behind the desk for two chairs.&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-weight: bold;"&gt;Prepare Pair Testing Session&lt;/span&gt;&lt;br /&gt;&lt;span&gt;It is necessary to do preparation before the PT session starts. Most of the preparation is because you use ET, for more details Google “&lt;a href="http://www.google.com/search?as_q=Exploratory+Testing&amp;amp;hl=nl&amp;amp;rlz=1B3GGGL_nlNL280NL280&amp;amp;num=10&amp;amp;btnG=Google+zoeken&amp;amp;as_epq=&amp;amp;as_oq=&amp;amp;as_eq=&amp;amp;lr=lang_en&amp;amp;cr=&amp;amp;as_ft=i&amp;amp;as_filetype=&amp;amp;as_qdr=all&amp;amp;as_occt=any&amp;amp;as_dt=i&amp;amp;as_sitesearch=&amp;amp;safe=images"&gt;ET&lt;/a&gt;”.&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span&gt;Create an ET Charter&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Define the focus and scope of the test.&lt;/li&gt;&lt;li&gt;Describe the targets for the test.&lt;/li&gt;&lt;li&gt;Agree together how much time you are going to test, it should be time boxed. Normally you have a session of 60 till 90 minutes. Do not forget to plan a break!&lt;/li&gt;&lt;li&gt;Plan the meeting in for example Outlook.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span&gt;&lt;span style="font-weight: bold;"&gt;Executing Pair Testing Session &lt;/span&gt;&lt;br /&gt;During the session the team members decide which test paths and how deeply the test will be. This should be of course in line with the targets, focus and scope of the tests described in the ET Charter.&lt;br /&gt;&lt;br /&gt;One team member (the Driver) should be in control of the keyboard and mouse. The second team member thinks out-loud, asks questions, makes notes on paper and gets the coffee.&lt;br /&gt;&lt;br /&gt;A PT session lasts for about 60 till 90 minutes, and don’t forget the break.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Finishing Pair Testing &lt;/span&gt;&lt;br /&gt;After the PT session the findings will be added to the bug registration system, if necessary and not yet done. The ET Charter will be updated, which test targets are tested, which problems were found and other remarks if necessary.&lt;br /&gt;&lt;br /&gt;A part of the ET Charter is also a short evaluation of the PT session, what went well and things that could be improved next time.&lt;br /&gt;&lt;br /&gt;If during the PT session new test targets were found, a new PT session should be planned. The pair could even already create a new ET Charter for that session.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Conclusion&lt;/span&gt;&lt;br /&gt;Is Pair Testing rocket science? No, it is a combination of working together and testing. However, it has a lot advantages above “single” testing. There will be knowledge sharing (about testing and the SUT), train new team members, break down barriers between team members and most important it is fun!&lt;br /&gt;&lt;br /&gt;Be aware that you not always could and should use Pair Testing, use it when possible and use it wisely.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Sources&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;a href="http://www.kohl.ca/articles/pairtesting.pdf"&gt;Pair Testing: How I Brought Developers into the Test Lab - Jonathan Kohl – Better Software January 2004&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.kaner.com/pdfs/exptest.pdf"&gt;Exploratory Testing in Pairs – Cem Kaner/James Bach – StarWest 2001&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.testing.com/test-patterns/patterns/pair-testing.pdf"&gt;Pair Testing version 0.3 draft – Brian Marick – 2001&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.stickyminds.com/s.asp?F=S6508_ART_2"&gt;Exploring Exploratory Testing - Andy Tinkham/Cem Kaner - StarEast 2003&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-3774038150892751916?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/3774038150892751916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/07/pair-testing.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3774038150892751916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3774038150892751916'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/07/pair-testing.html' title='Pair Testing'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-3276612217876337135</id><published>2008-07-07T11:57:00.003+02:00</published><updated>2008-07-07T12:13:16.571+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><title type='text'>Agile Testing doesn't exist</title><content type='html'>Agile testing.... hmmm what should I say about agile testing. I always try to prevent the term Agile Testing. Why, I believe the term doesn't exist.&lt;br /&gt;&lt;br /&gt;Agile software development is for me, a process of specification, programming and testing. There is no such as Agile Specification or Agile Programming. If you implement Agile Development, you implement all aspects of software development in an Agile environment.&lt;br /&gt;&lt;br /&gt;So Agile development, implicit means Agile Specification, Agile Programming and Agile testing. I don't think you can do agile testing in a waterfall environment, of course you can use some aspect of testing in an agile environment like ET testing or a lot of test automation.&lt;br /&gt;&lt;br /&gt;What is my point? Nothing special, however next time I will skip the part that I explain that Agile Testing doesn't exist when you ask me how we do agile testing ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-3276612217876337135?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/3276612217876337135/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/07/agile-testing-doesnt-exist.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3276612217876337135'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/3276612217876337135'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/07/agile-testing-doesnt-exist.html' title='Agile Testing doesn&apos;t exist'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-7989132847122947853</id><published>2008-04-11T16:08:00.005+02:00</published><updated>2008-07-09T16:54:12.977+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Scrum and Testing</title><content type='html'>I attended a meeting about Scrum Yesterday. All the participants (approx. 20) were certified Scrum Masters and most them are using Scrum daily.&lt;br /&gt;&lt;br /&gt;The idea was to exchange ideas about Scrum and to learn from experiences from each. It's a great idea, certainly because the number of companies in the Netherlands that use Scrum are not big. The &lt;a href="http://groups.google.com/group/dutch-agile-user-group?hl=nl"&gt;Dutch Agile Group &lt;/a&gt;is not so active and there are not so many conferences in the Netherlands about Agile Software Development.&lt;br /&gt;&lt;br /&gt;The host organised a retrospective to find some common Scrum problems and some actions to solve those problems. I personally don't believe in common solutions for Scrum problems, why not? Every project has a different culture, different people, different software factory, different customers, everything is different, so how can you describe a common solution for a common Scrum Problem. (By the way, there are no Scrum problems, just problems becoming visible because you use Scrum). So at the end of the meeting we discussed that we focus more on exchanging ideas the next time, probably an &lt;a href="http://en.wikipedia.org/wiki/Open-space_meeting"&gt;Open space&lt;/a&gt; conference.&lt;br /&gt;&lt;br /&gt;But anyway... one of the most "common" problems was Testing and Scrum. I was wondering, why is that a problem? I could give you all kind of solutions but I won't, just one solution, OK three solutions.&lt;br /&gt;&lt;br /&gt;The common solution for Testing and Scrum are:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Some general &lt;a href="http://www.google.nl/search?q=agile+test+scrum&amp;amp;btnG=Google+zoeken&amp;amp;meta="&gt;information&lt;/a&gt; about testing and Scrum, link to a website to find information ;)&lt;/li&gt;&lt;li&gt;My &lt;a href="http://softwaredevelopmentisfun.blogspot.com/2008/04/ten-tips-for-agile-testing.html"&gt;posting&lt;/a&gt; about ten tips for agile testing, to get some ideas to get you started;&lt;/li&gt;&lt;li&gt;JUST DO IT, stop finding the right process, stop complaining about missing requirements, stop finding reasons to don't start with testing in a development team. We have thirteen testers and they all like working in Agile environment, so why would your testers (or you, if you are a tester) don't like it?&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-7989132847122947853?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/7989132847122947853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/04/scrum-and-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7989132847122947853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/7989132847122947853'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/04/scrum-and-testing.html' title='Scrum and Testing'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-5224951851946362647</id><published>2008-04-08T08:19:00.006+02:00</published><updated>2008-10-07T16:36:15.135+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Dutch'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><title type='text'>Test automatisering in de theorie en in de praktijk</title><content type='html'>This is a presentation I gave at the Dutch TestNet Conference 2007, it's about automatic testing, the theory and the real world.&lt;br /&gt;&lt;br /&gt;The presentation is in Dutch, so sorry for you non-dutch speaking people. If you are really interested in a English version please let me know.&lt;br /&gt;&lt;br /&gt;&lt;p align="center"&gt;&lt;iframe src="http://docs.google.com/EmbedSlideshow?docid=dgbfx6nh_230s8h9szcs" width="410" frameborder="0" height="342"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-5224951851946362647?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://docs.google.com/Presentation?id=dgbfx6nh_90hc588dcm' title='Test automatisering in de theorie en in de praktijk'/><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/5224951851946362647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/04/test-automatisering-in-de-theorie-en-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/5224951851946362647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/5224951851946362647'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/04/test-automatisering-in-de-theorie-en-in.html' title='Test automatisering in de theorie en in de praktijk'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-2684540784442834553</id><published>2008-04-07T17:22:00.003+02:00</published><updated>2008-04-07T17:31:26.850+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Article'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><title type='text'>Ten Tips for Agile Testing</title><content type='html'>This is an copy of an article I wrote last year for the Agile Development Magazine, it was published in summer 2007. Since that time we changed and improved ourselve, but I will discuss that later.&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;Two years ago I started as test manager on a J2EE project. The project team had switched from a waterfall approach to an agile approach with Scrum a few months earlier. The first question the project manager asked me was, “Can you write a test plan for our first release?”&lt;br /&gt;&lt;br /&gt;I quickly produced a project test plan that called for a test phase of a few months and a separate test team. It came complete with a capacity calculation per week for the testers, a MS-project document, and a matrix with all the quality attributes and the effort we should spent to test every attribute. What a mistake!&lt;br /&gt;&lt;br /&gt;Two years later, we’ve learned a great deal about agile testing. This article presents ten tips for agile testing based on our experience. However, don’t expect to find the perfect test approach for your company or software project in this article. That is still something you will have to find out yourself!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Integrate the testers in the development teams&lt;/strong&gt;&lt;br /&gt;Teams are responsible for delivering software that meets expected requirements and quality. However, if we want teams to test the software, we must give them the knowledge to do it right. Testers have that knowledge. By integrating testers into the development teams, teams obtain the skills they need to test their software. When you try this, make sure you choose the right mix: one tester on three programmers is a fair but minimal number.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Use risk based testing&lt;/strong&gt;&lt;br /&gt;You can never test everything with the same (extensive) depth; even in a waterfall project you have to make choices. In an agile project all the activities are time boxed so you have to make choices about how extensively you want to test each feature. We use a risk based approach to determine which test activities we are going to carry out for a feature during the iteration. The risk level of every feature is determined by the customer and the teams. It is a very transparent process so the customer knows exactly which test activities are executed for every feature.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Have testers review unit tests&lt;/strong&gt;&lt;br /&gt;In our organization the developers are responsible for creating and maintaining the unit tests. Unit tests are a very important part of our test harness. Developers often have a different way of thinking; for example, they tend to test only the success scenario.&lt;br /&gt;&lt;br /&gt;To create unit tests that are as good as possible, our testers review the unit tests for all our high-risk items. The review has two advantages. First, the unit tests are improved because testers and developers supplement each other: the developer knows where the weak places in the source are, and the tester can use his knowledge of testing to give tips to improve the unit tests. Second, the testers know exactly which test cases are executed in the unit tests and can concentrate on executing other (e.g. higher-level) test cases.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Create a test automation framework and appoint a toolsmith&lt;/strong&gt;&lt;br /&gt;Automated testing is very important because new features and refactoring can introduce problems that can be difficult to find. By using an automated test framework, we can maintain quality levels during the iteration. Our testers are able to create new tests easily and quickly in the framework. We have a dedicated test engineer (we call him a toolsmith) that maintains and optimizes the test automation framework, reviews the new automated tests of the testers and analyzes the daily test results. Testers in the teams can spend more time creating and extending automated tests because the toolsmith supports them.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Display quality metrics in a public location&lt;/strong&gt;&lt;br /&gt;Almost every software project has a problem registration system, automated test results, and in some cases nightly or continuous build results. But how often do team members look at the results or count the open problems? We installed a monitor in the coffee room that displays the actual metrics of the currently open problems, the percentage of successful unit tests, the percentage of successful nightly builds, and the current state of the continuous build. By displaying the metrics in public the teams are confronted with the information. The information is no longer just a number in a system or a record with some information in a metrics database.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Add a test scrum&lt;/strong&gt;&lt;br /&gt;One advantage of having a separate test team in one room is that the communication between the testers is good. When you have a project like ours where the testers are distributed across several teams, the communication becomes more difficult. To solve this problem, we use a test scrum to align the test activities. Our test scrum is held twice a week and every team is represented by one tester. The test scrum is a scrum like the daily team scrum but focused on test activities. The test manager is the scrummaster of the test scrum.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Implement test retrospectives&lt;/strong&gt;&lt;br /&gt;Every team in our project holds a retrospective meeting at the end of the iteration. In the retrospective, the team discusses the process: what went well and what went wrong. The testers in the team learn and discover new ways to improve their tests; it is good when they share this knowledge with testers from the other teams.&lt;br /&gt;&lt;br /&gt;We have a test retrospective every iteration so the testers can exchange knowledge and experience and discuss problems they have. It is important that the retrospective is only related to test issues; you shouldn’t discuss team issues (they should be discussed in the team retrospective). As with the test scrum, the test manager is the scrummaster of the test retrospective.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Plan open problems &lt;/strong&gt;&lt;br /&gt;We try to fix all the problems that we find during the iteration in that same iteration, but some times we end the iteration with open problems. The best way to handle those problems is to add those problems to the sprint backlog for the next iteration. By explicitly planning those problems, the chance that they are “forgotten” and pile up is very small.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Remember: Testing is still testing&lt;/strong&gt;&lt;br /&gt;When you test in an agile software project you can still use the “traditional” test techniques. We use exploratory testing but also apply test techniques such as boundary value analysis, equivalence partitioning, cause/effect diagram, and pair-wise testing. Which test technique we choose for a feature depend on its risk category. Exploratory testing is used in every category; but if the risk is higher we also apply more formal test techniques. The challenge for the tester is to use a formal test technique without delivering extensive test documentation.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Start doing it!&lt;/strong&gt;&lt;br /&gt;The last but most important tip is start doing it! Don't talk too much about how you are going to introduce testers, or which test approach is perfect for your organization. You are going to make mistakes or discover that the chosen approach doesn’t fit your organization. That’s a given. But, the sooner you start, the sooner you can begin learning and improving your test approach. With the retrospective meetings, you have the opportunity to adapt your test approach every month.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br /&gt;Last month, we delivered the new release of our software. We started developing this release in January. During the last two weeks of May, we did some more exploratory testing, solved the remaining problems, and prepared the delivery. I wrote no extensive test plan, did no capacity calculation, and created no matrix with quality attributes. We just started testing and improved our testing every month.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-2684540784442834553?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/2684540784442834553/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/04/ten-tips-for-agile-testing.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/2684540784442834553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/2684540784442834553'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/04/ten-tips-for-agile-testing.html' title='Ten Tips for Agile Testing'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-1032553602470274181</id><published>2008-04-07T17:14:00.005+02:00</published><updated>2010-05-19T13:41:29.074+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Presentation'/><title type='text'>Testing and Scrum</title><content type='html'>Here you can find a &lt;a href="http://docs.google.com/Presentation?id=dgbfx6nh_80d2ggnmc5"&gt;link&lt;/a&gt; to a presentation I gave during the Scrum Falls in London in November 2007 or just watch the presention below.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;iframe frameborder="0" height="342" src="http://docs.google.com/EmbedSlideshow?docid=dgbfx6nh_229cnzksnfq" width="410"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Below is a short&amp;nbsp;description&amp;nbsp;of the presentation.&lt;/div&gt;&lt;br /&gt;Scrum is a project management framework; it doesn’t contain any developer or test practices. In most companies Scrum is used in combination with XP, Scrum is used for project management and XP practices are used to guide development.&lt;br /&gt;&lt;br /&gt;If you’re a traditional tester and you start in a project that is going to use or is using scrum you will have a hard time to find out what you have to do. Scrum doesn’t say anything about testing and XP does say something about testing but it is not a guidebook for a tester.&lt;br /&gt;&lt;br /&gt;I want to share our test experiences with the audience, we use scrum for two years and I think we have a good test process that is interesting for everyone who is involved in building software.&lt;br /&gt;&lt;br /&gt;In this presentation I will share our experience from Planon about testing and scrum. I want to answer the following questions:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Do you need specialized testers in Scrum;&amp;nbsp;&lt;/li&gt;&lt;li&gt;How did we introduce testers in the development teams;&amp;nbsp;&lt;/li&gt;&lt;li&gt;What is the role of the tester in our team;&amp;nbsp;&lt;/li&gt;&lt;li&gt;How do you recruit testers for a Scrum team;&amp;nbsp;&lt;/li&gt;&lt;li&gt;How you do organize the testers over the teams;&amp;nbsp;&lt;/li&gt;&lt;li&gt;Do you write a (master) test plan?&amp;nbsp;&lt;/li&gt;&lt;li&gt;What about formal testing techniques in Scrum;&amp;nbsp;&lt;/li&gt;&lt;li&gt;What kind of test automation harness do we use;&amp;nbsp;&lt;/li&gt;&lt;li&gt;How do we report about testing;&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;The audience will have good overview of the test activities we do at Planon and will get tips how to improve the testing process in their own projects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-1032553602470274181?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://docs.google.com/Presentation?id=dgbfx6nh_80d2ggnmc5' title='Testing and Scrum'/><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/1032553602470274181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/04/testing-and-scrum.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/1032553602470274181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/1032553602470274181'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/04/testing-and-scrum.html' title='Testing and Scrum'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-4379222898227954745</id><published>2008-03-20T15:42:00.005+01:00</published><updated>2008-03-20T16:18:14.011+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Test'/><category scheme='http://www.blogger.com/atom/ns#' term='Improvement'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Our First Why-Did-We-Miss-That Session</title><content type='html'>Today we had our first Why-Did-We-Miss-That session. I read about this meeting in the &lt;a href="http://www.testobsessed.com/"&gt;blog&lt;/a&gt; of &lt;a href="http://www.qualitytree.com/Company/elisabeth.html"&gt;Elisabeth Hendrickson&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;We already discussed last year that we should analyse our customer problems. We didn't know how to do it via a structured way and because of all the other important things we didn't find time to sit down to analyse the problems.&lt;br /&gt;&lt;br /&gt;So that's why I just planned this session, now your of course are curious to our experience...&lt;br /&gt;&lt;br /&gt;I planned the session from 13:30 till 15:30, two hours. One hour for the first part en the rest for the second part.&lt;br /&gt;&lt;br /&gt;I prepared the meeting, ordered index cards, reserved a room, created a filter in our bug registration system and send every tester the link to the blog. I explained the purpose of the meeting.&lt;br /&gt;&lt;br /&gt;We started analyzing and discussing the problems. We analyzed approximately 40 problems of the 140 problems. We run out of time, so we stopped and started with the next step. But first coffee and smoke break.&lt;br /&gt;&lt;br /&gt;One person read the cards and the rest of the team created groups. For some cards it was very clear to which group they belong, but we also had a lot of one-card groups. It didn't work let all persons group cards, we lost the overview. During the grouping it became clear that not all people wrote actionable cards, so some explanation was needed during grouping the cards.&lt;br /&gt;&lt;br /&gt;After the grouping, we made up actions for every group. Turned the stack of card up side down and wrote down the actions on the cards. We came up with 15 actions, all kind of actions for example extend our default ET Charter should be extended, more installation testing and educate the help desk to make clear the differences between the old and new product.&lt;br /&gt;&lt;br /&gt;As final test we selected random 15 problems and analyzed if they fitted in one the defined groups. 11 problems fitted in a group, only 4 problems would not have discovered. A good score in my opinion.&lt;br /&gt;&lt;br /&gt;Of course we did retro at the end of the meeting, the following improvements the following items were mentioned:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;It is a intensive meeting, so plan it early on the day and not with another meeting on the same day;&lt;/li&gt;&lt;li&gt;All calls should be in the same language;&lt;/li&gt;&lt;li&gt;We should make a pre-selection, but this has a risk that you will not find all improvements;&lt;/li&gt;&lt;li&gt;The next meeting will be a few months after a customer release (not an internal release) or when there is are for example 50 new problems;&lt;/li&gt;&lt;li&gt;We didn't find anything surprises.... I think this is a good thing and proves that our Test Retrospectives work well and that we already continuously try to improve our selves.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;So what is the conclusion for us? A great tool to periodic analyse our test process.&lt;/p&gt;&lt;p&gt;Still wandering if this is something for you? Just try it and improve it, don't be afraid of trying something new.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-4379222898227954745?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.testobsessed.com/2007/08/22/how-did-we-miss-that' title='Our First Why-Did-We-Miss-That Session'/><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/4379222898227954745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/03/our-first-why-did-we-miss-that-session.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/4379222898227954745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/4379222898227954745'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/03/our-first-why-did-we-miss-that-session.html' title='Our First Why-Did-We-Miss-That Session'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-6389550879297670374</id><published>2008-02-26T10:13:00.001+01:00</published><updated>2008-02-26T10:15:11.151+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>InfoQ: Does "Done" Mean "Shippable"?</title><content type='html'>A very interesting article about what is done and what is shippable, my opinion is in the comments of the article.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-6389550879297670374?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.infoq.com/news/2008/02/done-shippable-quality' title='InfoQ: Does &quot;Done&quot; Mean &quot;Shippable&quot;?'/><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/6389550879297670374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/02/infoq-does-done-mean-shippable.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6389550879297670374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/6389550879297670374'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/02/infoq-does-done-mean-shippable.html' title='InfoQ: Does &quot;Done&quot; Mean &quot;Shippable&quot;?'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3975468251456726557.post-2695252268647583187</id><published>2008-02-25T13:26:00.002+01:00</published><updated>2008-02-25T13:29:43.336+01:00</updated><title type='text'>First time</title><content type='html'>My first post on my blog, why this blog?&lt;br /&gt;&lt;br /&gt;Two reasons, I want to share my experience with agile software development to make more people enthusiastic about agile software development and the second reason I want to ask you to comment my articles so I can learn from you.&lt;br /&gt;&lt;br /&gt;So if you have any questions, comments or some thing else please, really please, let me know.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3975468251456726557-2695252268647583187?l=softwaredevelopmentisfun.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://softwaredevelopmentisfun.blogspot.com/feeds/2695252268647583187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/02/first-time.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/2695252268647583187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3975468251456726557/posts/default/2695252268647583187'/><link rel='alternate' type='text/html' href='http://softwaredevelopmentisfun.blogspot.com/2008/02/first-time.html' title='First time'/><author><name>Ralph</name><uri>http://www.blogger.com/profile/01775260315749251547</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_f1FQCqmW7c4/S_KMpYfFAwI/AAAAAAAADvs/RqxUqlkLjcI/S220/P4170021.JPG'/></author><thr:total>0</thr:total></entry></feed>
