tag:blogger.com,1999:blog-81523901131040713012024-03-14T17:51:05.982+01:00An Agile CoachAlexandre CuvaAnonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.comBlogger15125tag:blogger.com,1999:blog-8152390113104071301.post-40176915259328797762014-01-22T03:13:00.001+01:002014-01-22T03:14:52.620+01:00Bye bye Snake year, Welcome Horse Year<div dir="ltr" style="text-align: left;" trbidi="on">
8:00 am January 2014 at the 19th floor of a building, drinking an espresso, with lounge music hiding the sound of the motorcycle in Saigon street. Since I met more than a year ago Saigon, I fall in love of Vietnam.<br />
<br />
It is not so much time I left Vietnam, just 1 a month, but I wanted to share my 2013 retrospective. It is already more than 6 months I started as CIO of <a href="http://www.smartlinksa.ch/" target="_blank">Smartlink</a> SA. A swiss Company base in Geneva, working around the new Mobile Payment technologies.<br />
I remembered 6 months ago when I was hired, I had plenty of dreams about Agile, Lean, working around an innovative management. Did all this happen? 6 months, it's a short time to do a lot of things.<br />
<br />
I wanted to apply some Large Scale Agile practice from <a href="http://deanleffingwell.com/" target="_blank">Dean </a><a href="http://deanleffingwell.com/" target="_blank">Leffingwell</a>, that I meet on a train between Antwerp and Brussels after DARE 2013. The idea behind Dean framework is that we propose a framework to use in a huge company. I don't adhere to using such Framework, it makes me feel we try to apply a complicate solution in a complex world. But there are some really interesting ideas that I adhere, a company should not apply Agile, but Lean and Agile together makes more sense. Who knows me, I leave with the Lean values, my morning and days are around lean values. How could I do more with less waste. I wanted to use Dean Framework to transform that layer of waste business people, trying to sale their grandma and not thinking about rational values. At time I meet an awesome person in Paris, even my Business Director feels it was an awesome person. I hope he will join our team one day. I feel we could do some great stuff together. That person would have been the perfect actor to be my first Scrum Product Manager, he would apply Agile in the best manner, evangelize the business and create awesome products with the PO in charge to work with him. But nothing the business puts in place another Business person, who maybe wanted to create great product with non trusted behavior. I still work with him, he's not a bad person, he even liked the way we work back in Vietnam, having a review each 2 weeks. It fails because we have to work on other more important project and then he was left on the side.<br />
<br />
In August we had finished our first awesome product. I remember someone telling me measure the time to market of all the business request and measure the waist, to learn how to improve. I still measure the time. It is now 5 months, the product is out, but no customer really using it. I think, the problem behind this, we don't have really a Product Manager who feels the product his is life and he need to find customer ready to use it. I am such there is a potential market outside, really interested, but they don't know the product exists.<br />
<br />
In August, we start to work on a major Mobile Project, we are nearing the end now, after months of fighting learning to leave between us the customer working in a Lean / Agile way and Waterfall provider. We learn a lot this last 5 month, we pass from Scrum to Nano Scrum and ScrumBan. We had a first project part, where we tried to do Scrum with this Waterfall provider, they learn from us a lot, they were even happy to work with an Agile Company. But when all was fine, we saw again and again the Waterfall ghost coming from nowhere and making our life a nightmare. But has I said to my teammates, we are Agile and we have the capacity to learn to adapt ourself fast so we can work with them. We learn from our failure fast and were able to move from the chaos to the complexity at each failure.<br />
<br />
Today, we are nearing the end of the project, in a few days, the Tet Festival is here and my teammate will join their family, I will be with my wife to enjoy the Chinese New Year. I eager the year of the Horse will bring more Lean/Agile adventure.<br />
<br />
There is so much thing to share with all of you. I would like to thank some people that I met during this last year:<br />
<br />
<ul style="text-align: left;">
<li><a href="http://pyxis-tech.com/blog/en/author/fbeauregard/" target="_blank">François Beauregard</a> for his complexity mentoring and the time he took to learn me the way to pronounce in Quebekois the words.<a href="http://pyxis-tech.com/blog/2014/01/17/le-bilan-de-gael/" target="_blank"> </a></li>
<li><a href="http://pyxis-tech.com/blog/2014/01/17/le-bilan-de-gael/" target="_blank">Gael Luisier</a> for pushing me to share my experience with all of you.</li>
<li><a href="http://deanleffingwell.com/" target="_blank">Dean </a><a href="http://deanleffingwell.com/" target="_blank"></a><a href="http://deanleffingwell.com/" target="_blank">Leffingwell</a><span class="GINGER_SOFTWARE_mark" ginger_software_uiphraseguid="460076ec-ede8-41bf-a748-ed4cc0b20c1d" id="1d06cd13-e55d-45cb-85f5-cccc20879018">,</span> for sharing his Agile experience</li>
<li><a href="http://www.renaissancesoftware.net/blog/" target="_blank">James Grenning's</a>, for sharing his TDD experience in Lausanne during one of our Scrum Beer</li>
</ul>
<div>
And all the other's like Jurgen Appelo, Vasco Duarte, Chris Kruppa, Peter Stevens, the Beagle Team...</div>
<div>
<br /></div>
<div>
Thank's all, I had an awesome Snake Year. Be the Horse year be a more awesome year,</div>
<div>
<br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com1tag:blogger.com,1999:blog-8152390113104071301.post-60297408082875662582013-10-07T10:55:00.002+02:002013-10-07T10:55:47.912+02:00My new agile adventure in Vietnam Part 3<div dir="ltr" style="text-align: left;" trbidi="on">
<a href="http://agile-alexcuva.blogspot.ch/2013/09/my-new-agile-adventure-in-vietnam-part-2.html" target="_blank">Part 2</a><br />
<b><br /></b>
<b>Monday 17th June 2013</b><br />
That's it, this afternoon we will fly to Vietnam, to meet my teams. I'm coming with our Business Development Director (BD). A few last thing to do in the office and let's go to the Airport. Around 3:15 pm, our flight take-off to Dubai.<br />
Midnight we land in Dubai, 1:00 am we are at the Marina to drink and eat something.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEsZlTtV0X_AXbME36BridIn3GJ7KNLSIXIO9s_x_Myo16rZxkt-FZ0ferw50B779LeCpuVNpvNuAE1y94xKI9F34dS8d4WPXNlArSuMfAnTITZT_19fRH0TlVsJn6zFtUFlVH4-rFuS11/s1600/2013-06-18+01.18.27.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEsZlTtV0X_AXbME36BridIn3GJ7KNLSIXIO9s_x_Myo16rZxkt-FZ0ferw50B779LeCpuVNpvNuAE1y94xKI9F34dS8d4WPXNlArSuMfAnTITZT_19fRH0TlVsJn6zFtUFlVH4-rFuS11/s1600/2013-06-18+01.18.27.jpg" width="320" /></a></div>
First time in Dubai, thanks to our BD, I have a fast Dubai visit in Car and a Diner at the Marina.<br />
<br />
Then return to the Airport, wait at the Lounge and finally take-off to Saigon. We finally arrived exhausted in Saigon, but happy.<br />
<br />
It's not my first time in Ho Chi Minh City (Saigon), but first learn to BD how to cross the street in Vietnam. It is not an usual way for most of the foreigners. The first time you are quite frightened, all this car and motorcycle everywhere and no one stop to let you pass. In Europe, you wait the green light and then you cross the street. Here you wait the green light and no one will stop to let you pass. :(<br />
In Asia, you cross the street, not running, walk, never stop, so the driver knows how to avoid you. If you stop, go backward, it's the beginning of an accident. In Europe, you do the same, you are dead. Driver are not ready to avoid you, they will try to stop in front of you :)<br />
<br />
<b>Ho Chi Minh, here we are...</b><br />
First time for BD in Vietnam, so much thing to see, I become a tourist guide. Thanks to friend Than who presented me HCMC last year. We take a cab, visit the oldest HCMC Pagoda (Buddhist Temple), the Notre Damme Church, the Old Post Office, the luxury shop and Ho Chi Minh place.<br />
<br />
<br />
A small break at the Nguyen Coffee place, for an Ice Saigon coffee and then we run at the <a href="http://www.saigonhub.vn/" target="_blank">Saigon Hub</a> for my Scrum Coffee session with <a href="http://www.agilevietnam.org/" target="_blank">Agile Vietnam</a><br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv5w2AqcZDa9kNqyKnXeyHY2sor6l-GmfkKRbMc5AgYtjYylI5Gj3TSzmRGENIAC2XEoNLG6frZxKVYm4ImydGANiWqIqviR9PmN0G6KViN15CKMKOXWeBHnMC3H9u5cB4WZdgeObRTro8/s1600/1025698_4445295825461_1208858915_o.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv5w2AqcZDa9kNqyKnXeyHY2sor6l-GmfkKRbMc5AgYtjYylI5Gj3TSzmRGENIAC2XEoNLG6frZxKVYm4ImydGANiWqIqviR9PmN0G6KViN15CKMKOXWeBHnMC3H9u5cB4WZdgeObRTro8/s320/1025698_4445295825461_1208858915_o.jpg" width="320" /></a></div>
<br />
Tomorrow we will fight to <span class="GINGER_SOFATWARE_correct" ginger_sofatware_markguid="c940433f-abe8-4a3b-8f64-de410eeb719d" ginger_sofatware_uiphraseguid="9b1dc92e-9e94-498a-a1e8-e7fc6a79ba7e" grcontextid="Da:0">Da</span> Nang.</div>
Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-39866159021943929542013-09-03T14:41:00.000+02:002013-10-07T10:57:34.719+02:00My new agile adventure in Vietnam Part 2<div dir="ltr" style="text-align: left;" trbidi="on">
<a href="http://agile-alexcuva.blogspot.ch/2013/08/my-new-agile-adventure-in-vietnam.html" target="_blank">Part 1</a> <-> <a href="http://agile-alexcuva.blogspot.ch/2013/10/my-new-agile-adventure-in-vietnam-part-3.html" target="_blank">Part 3</a></-><br />
<br />
<span class="GingerNoCheckStart"></span>I had the main ideas on how to put in place the IT's in this new company. Who will not jump on the occasion to put in place all he always wanted to see.<br />
<div>
<br /></div>
<div>
Some of you may ask why I decided to have my teams in Vietnam, why not somewhere more near Europe, like Eastern Europe or some Latin countries. The first time I came in Vietnam, I was invited by the Agile Vietnam Community to present subjects for the HCMC Agile Tour 2012. I had so much great moment. I talk with foreigners and Vietnam people. I loved the Vietnam culture and the most important one I meet a company with a business model as I like. The CEO believes in Agile and he his one of the major agile promotion company. They give free training to the University in two big cities. They are mostly the main Sponsor on all the Agile / Lean event. It's easy all their customers need to work with Scrum. The customer brings the Product Owner, they bring the team and the Scrum Master.</div>
<div>
As a Product Owner you don't have just a team of project and that's it. As a Product Owner it's your team, you participate with them at all the team building, you part of the team. You are not someone, a stranger.</div>
<div>
<br /></div>
<div>
Before leaving for Vietnam, I needed to put in place diverse remote tools to promote communication between the teams and me. As a Product Owner I need to be near the team, even if we have thousand kilometers between us and the time zone. I decided to put some tools I like and I used for many years and also because their business model was interesting for small teams :</div>
<div>
<ul style="text-align: left;">
<li>JIRA + Agile JIRA: To follow the Epics and Stories</li>
<li>Confluence: The wiki</li>
<li><span class="GINGER_SOFATWARE_noSuggestion GINGER_SOFATWARE_correct" ginger_sofatware_markguid="4ee8e503-30c0-4249-9544-89cb6ab2c9bb" ginger_sofatware_uiphraseguid="b7b081c4-6128-4525-9925-b4cfe3738cfa" grcontextid="Bitbucket:0">Bitbucket</span>: the GIT Server</li>
<li>Crucible: the review tool, a must if you want to participate with the team in the review of the code</li>
</ul>
<div>
Within JIRA I create different project :</div>
</div>
<div>
<ul style="text-align: left;">
<li><b>Program Management</b>: A Kanban board, I follow the Epics, from their open, confirmed, selected, in progress, In Review, Ready to Release, Close</li>
<li><b>Beagle Scrum Team</b>: A Scrum Board for the Beagle team, only Epics in Progress, In Review appear here.</li>
</ul>
</div>
<div>
So here we are, ready to leave for the Vietnam...</div>
<div>
<br /></div>
<div>
Before leaving, I had a first Sprint in remote. I still remember that first day. I was so exited and in the same time anxious. My wife pushes me out of the bed, I could not sleep. It was my first true experience as <span class="GINGER_SOFATWARE_correct" ginger_sofatware_markguid="4b42c05c-f9f2-44e1-89d1-6507702cd46d" ginger_sofatware_uiphraseguid="ab65be9e-8f4b-48bd-a934-58a176e997c5" grcontextid="Product Owner:0">Product Owner</span> with a team in Vietnam.</div>
<div>
<br /></div>
<div>
<b>6:00 am</b></div>
<div>
That's it, GotoMeeting is on, I hear some sound in the back, I think they are like me. Who will be the PO, he is cool ? How the team will be ? </div>
<div>
<i>After some time of thinking and knowing the team better, I found out that they join the best people for my team. They know I am an Agile Coach, I was an XP Programmer.</i></div>
<div>
<br /></div>
<div>
The rest of the time I presented the vision of the Product as much I can, it is true I didn't know as much I know now. I present the Epics and the User Story I think they will work on the first Sprint. </div>
<div>
I put also a technical task: put in place the commit stage in the continuous delivery.</div>
<div>
<br /></div>
<div>
To continue...</div>
<div>
<br /></div>
<div>
<span class="GingerNoCheckEnd"></span><br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0Da Nang, Thanh Khê, Da Nang, Vietnam16.051571 108.2148970000000615.929490999999999 108.05353550000007 16.173651 108.37625850000006tag:blogger.com,1999:blog-8152390113104071301.post-13277822561965118352013-08-21T11:14:00.000+02:002013-10-07T10:58:03.106+02:00My new agile adventure in Vietnam<div dir="ltr" style="text-align: left;" trbidi="on">
<a href="http://agile-alexcuva.blogspot.ch/2013/09/my-new-agile-adventure-in-vietnam-part-2.html" target="_blank">Part 2</a><br />
<br />
Since already 2 months I have been working in Vietnam with a Scrum Team. It is not only a short project, it is a huge project where I will be the main actor in the implementation of Agile practices, culture Hacking, Lean, Kanban and a lot more that I will have the chance to put in place.<br />
<br />
So one of my Agile friends told me I should post on my Blog what's happened here.<br />
<br />
So here I am Gael I start....<br />
<br />
Once upon the time, there was a Freelance Agile Coach, who received a request from another friend : <i>Alex I am working to create a new great Financial Company and I would like to have you to be part of this fantastic journey. Here the product... Are you In ? Of course that Product make sense to me I believe we can create a great company together with the two others.</i> <i>But in one condition, I want to manage my team in my way and have the Scrum teams in Vietnam.</i><br />
<i><br /></i>
My first job was to think about how we will manage Scrum teams in Vietnam and having most of the end customers back in Europe. Early in June I went to <a href="http://www.dare2013.be/" target="_blank">DARE 2013</a>, great event about anything and Culture Haking with a lot of great people to meet. So there I meet <a href="http://deanleffingwell.com/" target="_blank">Dean Leffingwell</a>, author of two great books "<a href="http://deanleffingwell.com/book-agile-software-requirements" target="_blank">Agile Software Requirements</a>" and "<a href="http://deanleffingwell.com/book-scaling-software-agility/" target="_blank">Scaling Software Agility</a>". So Dean presented a subject about the Scaling Software Agility. That was the subject I needed.<br />
<br />
Dean in is presented, show us how to use Lean and Agile together and it makes sense. There are parts that Lean is great and make more sense than Scrum. Dean explains in Big company you have 3 phases:<br />
<br />
<ul style="text-align: left;">
<li>1st Layer "Portfolio Management", it is around Lean and Kanban</li>
<li>2nd Layer "Program Management", some Lean, some Scrum and a Road Map around the features</li>
<li>3rd Layer "Scrum Teams"</li>
</ul>
<div>
It depends then on the size the company.</div>
<div>
<br /></div>
<div>
That's it, I had the main ideas, ok my company is small, but it is highly distributed to the different office around the world and having a Scrum Product Manager for each office and a Scrum Master per team. It makes sense to me. The 1st Layer is too ambitious, but the 2 others are a good start.</div>
<div>
<br /></div>
<div>
<i>To continue...</i> </div>
<br />
<i><br /></i>
</div>
Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0Da Nang, Thanh Khê, Da Nang, Vietnam16.051571 108.2148970000000615.929490999999999 108.05353550000007 16.173651 108.37625850000006tag:blogger.com,1999:blog-8152390113104071301.post-43804970051087580912012-11-12T17:53:00.001+01:002012-11-12T18:05:01.227+01:00Agile Tour Vietnam - Ho Chi Minh 2012Just return from the<a href="http://www.agilevietnam.org/2012/10/agile-tour-2012-hcmc-speakers/"> Agile Tour 2012 Vietnam Ho Chi Minh</a>. It was a fantastic experience, I meet some awesome peoples from the audience and speakers.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTUAoCg3y6T1rFRqGAHemB3LBgaQK12sZ6c0d5RBikqSpizt6wH3gixJI1521MXpdUC5leVCsGT_ZrXE3KIoAAc0UD0xicwwK3VVgm4mVlluS4WN-R22pniOSx7xSIQsJ9JZB22d34NY7V/s1600/2012-11-08+09.19.57.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTUAoCg3y6T1rFRqGAHemB3LBgaQK12sZ6c0d5RBikqSpizt6wH3gixJI1521MXpdUC5leVCsGT_ZrXE3KIoAAc0UD0xicwwK3VVgm4mVlluS4WN-R22pniOSx7xSIQsJ9JZB22d34NY7V/s320/2012-11-08+09.19.57.jpg" width="320" /></a></div>
<br />
The Start key note we had <a href="http://kenschwaber.wordpress.com/">Ken Schwaber</a> (One of the founder of Scrum, for who don't know him :)), in remote because unfortunately for us, Ken decided for 1 year to stay home and not take plane. I wish him all the best for his 1 year no travel.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRUyBzoarZJyC9ePqVn7sTemnwtAjygzKlMDH1r7gGAeB6eAFcPCRpNxWjfAOrsRqZepG_n5z0UDO0kIl5fbCTwghWRzbDx2z-th49aSbuNh2rD0uUmKkP0wZ-JekRJ-T-F3fkVMwSiPqH/s1600/2012-11-08+03.33.52.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRUyBzoarZJyC9ePqVn7sTemnwtAjygzKlMDH1r7gGAeB6eAFcPCRpNxWjfAOrsRqZepG_n5z0UDO0kIl5fbCTwghWRzbDx2z-th49aSbuNh2rD0uUmKkP0wZ-JekRJ-T-F3fkVMwSiPqH/s320/2012-11-08+03.33.52.jpg" width="320" /></a></div>
<br />
<br />
Then the sessions started and I went to see a local speaker <a href="http://www.slideshare.net/duongtrongtan">Duong Trong Tan</a> (Academic Head, FPT University). And his presentation about Agile Education in Vietnam. It was an interesting topics, I wish we have such topics in Switzerland or Europe. I tink Jean-Pierre from the HES Sierre would be happy to listen on such topics. Tan presented what's happens in Vietnam this last month, and then presented what are the different options to improve Learning. Most of them where learning tools we already use in Agile (Coding Dojo, Agile Workshop, Serious Game...)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBhr-MHBhhJMDl1x1eRBOxZoUSX0oft_2F5EcPK3z9GkVptmZhGzmCHAstSZwLvZn_4J2QfHu_ggtb6tW-nuI98ENwVQqCE8-7BGF7zVXsXVb-dZ6EXIMHHQHtheyRKEr80oTU1JYkuiEb/s1600/2012-11-08+10.50.44.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBhr-MHBhhJMDl1x1eRBOxZoUSX0oft_2F5EcPK3z9GkVptmZhGzmCHAstSZwLvZn_4J2QfHu_ggtb6tW-nuI98ENwVQqCE8-7BGF7zVXsXVb-dZ6EXIMHHQHtheyRKEr80oTU1JYkuiEb/s320/2012-11-08+10.50.44.jpg" width="240" /></a></div>
<br />
It was then my turn, I presented a Management 3.0 Introduction with the Vietnam culture in background (http://www.slideshare.net/GToronto/management-30-excellence-agile-hcmc). I explain in the working the actual environment, most people where not happy and we need to change, so we can improve performance and company with improvement in humans. I show them that Vietnamese peoples had a special power, they where self-organized people, when you see how people drive in the street. It is an example of <b>Complex Adaptive System (CAD)</b>. Then I presented what should learn a Leader to be a great Manager with Agile teams, with example from Jurgen Appelo <a href="http://www.management30.com/">Management 3.0</a> training.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgmQGhn6l327H28leVg0AJ0E8j1Ij7mc4oH95Jeex9YTpC3etRCt8reJlMGwHeBdLTAIEkhjsSscDGM-MlsHKvvybMJ2nx0Euzggq7JhCWWSMmqYUrsISS5KT4axS_jhoZtBvPEyf59lnq/s1600/2012-11-08+07.35.31.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgmQGhn6l327H28leVg0AJ0E8j1Ij7mc4oH95Jeex9YTpC3etRCt8reJlMGwHeBdLTAIEkhjsSscDGM-MlsHKvvybMJ2nx0Euzggq7JhCWWSMmqYUrsISS5KT4axS_jhoZtBvPEyf59lnq/s320/2012-11-08+07.35.31.jpg" width="320" /></a></div>
<br />
In the afternoon I facilitate a Coding Dojo C# and show to the audience, good practice about TDD, pair programming and tools like <a href="http://www.specflow.org/">SpecFlow</a> one of the best tools for BDD in .NET. This first session was quite hard. But with the help of my interpret (Duc Nguyen) we where able to get a few pair to work on the software. One of the greatest team was a pair of Java Developers who for the first time they tried C#. I had different feedback from the session:<br />
<br />
<ul>
<li><i>I don't like to write C# code with a Swiss-French keyboard</i></li>
<li><i>From this dojo, I learn one thing, I need to learn TDD now and not tomorrow.</i></li>
<li><i>...</i></li>
</ul>
I propose next year I come with a French Keyboard, it will be a lot more funny than the Swiss keyboard. Who will die first, the keyboard or the pair ?<br />
<br />
The second day I present my workshop Dice4Agile. A workshop where audience learn how to estimate sprint point, measure velocity, prepare a Release plan and then play the sprints, by preparing before each sprints their next 3 sprints content. It is a great opportunity for the teams to learn to self-organize and found solution their self.<br />
<br />
I then went to see <a href="http://www.slideshare.net/kiroh">Kiro Harada</a> (Lean and Toyota Production System Expert), he present a subject about eXtreme FD. It was quite interesting to see Agile with Electronic components. I feel completely useless in the training but amazing about the expertise from the audience.<br />
<br />
And finally I had my last session, <b>Energize People</b>, I presented the <i><a href="http://www.management30.com/product/moving-motivators/">Moving Motivator</a></i> a game from the Management 3.0 training I give. The people like it a lot, it show how a Manager or any other person can learn the 10 Intrinsic desires from their employees, colleague or himself.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://www.agilevietnam.org/wp-content/gallery/agiletour2012/DSC09253.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="http://www.agilevietnam.org/wp-content/gallery/agiletour2012/DSC09253.JPG" width="320" /></a></div>
<br />
I used the same game with one of the volunteer who had a question about her future. In the second par I used a Team spirit game to elevate energy for all the participant. I think they never laugh so much in their working life.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBoDqq2xzSZJkAN8rP5ekEKXLAYABVvLGE5uvs60OJwcR8WxIkX3yZJZZCmbrwoUYknjBPGrsXq1mcsXxZ6yj8GeXhEPe48CI29enJsre6rmIWs8jDJE7zsvkQ0rDEhyphenhyphenePd9XRDrzfZixn/s1600/2012-11-09+14.34.52.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBoDqq2xzSZJkAN8rP5ekEKXLAYABVvLGE5uvs60OJwcR8WxIkX3yZJZZCmbrwoUYknjBPGrsXq1mcsXxZ6yj8GeXhEPe48CI29enJsre6rmIWs8jDJE7zsvkQ0rDEhyphenhyphenePd9XRDrzfZixn/s320/2012-11-09+14.34.52.jpg" width="320" /></a></div>
<br />
We had a Open Session for the closing session, with <a href="http://www.danielteng.com/">Daniel Teng</a> (First CSC of China)<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://www.agilevietnam.org/wp-content/gallery/agiletour2012/DSC09254.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="http://www.agilevietnam.org/wp-content/gallery/agiletour2012/DSC09254.JPG" width="320" /></a></div>
<br />
<i>I would like to thanks all the team from <a href="http://www.agilevietnam.org/">Agile Vietnam</a>, the Vietnamese and other countries audience, all the sponsor for awesome Agile Tour 2012 we had in Ho Chi Minh (Saigon).</i><br />
<i><br /></i>
<i>See you all at the <b>Agile Tour 2013 Vietnam the 8th-9th nov 2013</b> </i>Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-21962523490501168602012-07-23T13:56:00.000+02:002012-07-23T13:56:18.377+02:00Causal Loop DiagramWhat is the <b>Causal Loop Diagram</b> (CLD) ? I m actually working in my Management 3.0 training that I will give this autumn in Europe and maybe in North Africa. So I decided that while I prepare my training, I will give you some premise on my training contents.<br />
<br />
Ohh by the way, I give my training in French, English and Italian :)<br />
<br />
The wiki definition is :<br />
<blockquote class="tr_bq">
"<i><b>A causal loop diagram</b> (CLD) is a causal diagram that aids in visualizing how interrelated variables affect one another. The diagram consists of a set of nodes representing the variables connected together. The relationships between these variables, represented by arrows, can be labelled as positive or negative.</i>"</blockquote>
<span style="background-color: white;">It is a great tool, to understand how a system work. A simple positive example could be a banking account and the interest rate :</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_nDEcgh4GO0HwzKEs62abH1XYiexuTKcmbAxr7XT2Gu-qfdCIV9D3rJjINJgmxL3gMiwLoAp7oj5VvezA4Ai223GR98qsOHsgUFVDijNbBhCKGoSclMrmI4-c0Cc6cWWzTCGXRMVT5h7d/s1600/bankaccound+cld.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="198" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_nDEcgh4GO0HwzKEs62abH1XYiexuTKcmbAxr7XT2Gu-qfdCIV9D3rJjINJgmxL3gMiwLoAp7oj5VvezA4Ai223GR98qsOHsgUFVDijNbBhCKGoSclMrmI4-c0Cc6cWWzTCGXRMVT5h7d/s320/bankaccound+cld.jpg" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<br />
Now if we use the same model to understand how a project is working, we come out with a complex system where people and system work together to adapt to a changing environment, it is what we call a <b>network of people</b><span style="background-color: white;"> who interact together for their own purpose and <b>produce values</b> that stakeholders <b>consumes values</b>. </span><br />
<span style="background-color: white;"><br /></span><br />
<span style="background-color: white;">Jurgen Appelo in his <a href="http://www.noop.nl/2011/04/it-takes-complexity-to-handle-complexity.html">blog</a> present the<b> <a href="http://en.wikipedia.org/wiki/Variety_(cybernetics)">Law of Requisite Variety</a></b> calls also the <b>Ashby’s Law</b> :</span><br />
<blockquote class="tr_bq">
<i>“If a system is to be stable the number of states of its control mechanism must be greater than or equal to the number of states in the system being controlled.”</i></blockquote>
In other words, in order to survive <b>a system must have an internal model that reflects the variety it encounters in the world outside</b>.<br />
<br />
I like this model, I think most manager should think more about that, before thinking project like a linear recipe where all the project should work. Software project are very complex and should be resolve with complex thinking.<br />
<br />
It let me thinking about an example I had a few moths ago on a big European company. I was hired to train them to understand Agile, Scrum and how to work as a self-organized team.<br />
<blockquote class="tr_bq">
<i>I ask the manager, if there was some training for the management too ? They told me there was something call "Black Belt" and all the manager needed to keep project statics on how long it took to make each component.</i><span style="background-color: white;"> </span></blockquote>
<blockquote class="tr_bq">
<i>I laugh on my head, great they try to explain the teams how to work on a network of people and in the other hand they try to resolve complexity by linear formula. </i></blockquote>
<span style="background-color: white;">After a few month, they told me they where maybe interesting about my Management 3.0 training. Great they understand really fast. They are smart in this part of the world.</span><br />
<br />
If you like to have more info, please go to Jurgen Appelo blog "<a href="http://www.noop.nl/2011/04/it-takes-complexity-to-handle-complexity.html">It Takes Complexity to Handle Complexity</a>", there is plenty of other intersting link about the subject.Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com2tag:blogger.com,1999:blog-8152390113104071301.post-7242052181595565332012-07-23T12:06:00.001+02:002012-07-23T12:06:39.473+02:00Le cocombre Agile: Stoos Satellite Geneva 11/07 DebriefOur first Stoos Satellite Geneva :<br />
<br />
<a href="http://agileconcombre.blogspot.com/2012/07/stoos-satellite-geneva-1107-debrief.html?spref=bl">Le cocombre Agile: Stoos Satellite Geneva 11/07 Debrief</a>: Enfin, notre première rencontre Stoos a eu lieu à Genève ! En voici un rapide debrief. Je ne souhaite pas relater ici dans les détails...<br />
<br />
It is open to all, not only IT Manager, we are going to open a Meetup group soon. I let you know here when it is ready.Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com1tag:blogger.com,1999:blog-8152390113104071301.post-89286315688619812452012-03-06T10:03:00.000+01:002012-03-06T10:04:24.868+01:00Agile-Geneva, NidAgile camp<a href="http://www.agile-swiss.org/geneve/" style="font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal;">Agile Genève | Un site du réseau Agile Swiss</a><span style="font-size: 100%;">: </span><br />
<br />
<span style="font-size: 100%;">Hi All,</span><br />
<div>
<span style="font-size: 100%;">All the team from Agile-Geneva, is please to </span>announce<span style="font-size: 100%;"> you today, we have found a date for our next XPDay Swiss meeting call @NidAgile. So please save 15th and 16th June for our next XPDay Swiss meeting. More will come soon.</span></div>Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-22867062937945483672012-02-20T14:48:00.000+01:002012-02-20T14:55:34.622+01:00Vaadin and Groovy Test 5Moving from the test, the implementation and the re-factoring we get the following results
<br />
<pre class="brush: groovy; title:VaadinCalculatorTest ">package ch.ge.vaadin
import org.junit.Test
import org.junit.Before
import org.junit.After
import com.vaadin.ui.Button
import static org.mockito.Mockito.*
class VaadinCalculatorTest {
private VaadinCalculator calculator
@Before void before() {
calculator = new VaadinCalculator()
calculator.init()
}
@After void after() {
calculator.close()
}
@Test void shouldDisplay2IfIPressButton2() {
def event = mock(Button.ClickEvent)
def button = mock(Button)
when(button.getCaption()).thenReturn("2")
when(event.button).thenReturn(button)
calculator.buttonClick(event)
assert calculator.stored == 0.0
assert calculator.current == 2.0
}
@Test void shouldDisplay2IfIPressButton2AndPlus() {
def event = mock(Button.ClickEvent)
def button = mock(Button)
when(button.getCaption()).thenReturn("2")
when(event.button).thenReturn(button)
calculator.buttonClick(event)
when(button.getCaption()).thenReturn("+")
calculator.buttonClick(event)
assert calculator.current == 0.0
assert calculator.stored == 2.0
}
@Test void shouldDisplay4IfIPressButton2AndPlusAnd4() {
def event = mock(Button.ClickEvent)
def button = mock(Button)
when(button.getCaption()).thenReturn("2")
when(event.button).thenReturn(button)
calculator.buttonClick(event)
when(button.getCaption()).thenReturn("+")
calculator.buttonClick(event)
when(button.getCaption()).thenReturn("4")
calculator.buttonClick(event)
assert calculator.current == 4.0
assert calculator.stored == 2.0
}
@Test void shouldDisplay6IfIPressButton2AndPlusAnd4AndEqual() {
def event = mock(Button.ClickEvent)
def button = mock(Button)
when(button.getCaption()).thenReturn("2")
when(event.button).thenReturn(button)
calculator.buttonClick(event)
when(button.getCaption()).thenReturn("+")
calculator.buttonClick(event)
when(button.getCaption()).thenReturn("4")
calculator.buttonClick(event)
when(button.getCaption()).thenReturn("=")
calculator.buttonClick(event)
assert calculator.current == 0.0
assert calculator.stored == 6.0
}
}
</pre>
<pre class="brush: groovy; title:VaadinCalculatorTest "><a name='more'></a></pre>
And the implementation
<br />
<pre class="brush:groovy; title:VaadinCalculator">package ch.ge.vaadin
import com.vaadin.Application
import com.vaadin.ui.Button
import org.apache.commons.lang.CharUtils
class VaadinCalculator extends Application implements Button.ClickListener{
static char TWO = 2
static char FOUR = 4
static char OPERATOR_PLUS = '+'
static char OPERATOR_EQUAL = '='
double current = 0.0
double stored = 0.0
char lastOperationRequested
@Override
def void init() {
}
def void buttonClick(Button.ClickEvent clickEvent) {
def button = clickEvent.button
def requestedOperation = button.caption.charAt(0)
calculate(requestedOperation)
}
def calculate(char requestedOperation){
if(CharUtils.isAsciiNumeric(requestedOperation)){
current *= 10
current += CharUtils.toIntValue(requestedOperation)
return current;
}
if(lastOperationRequested == '+'){
stored += current
}else {
stored = current
}
current = 0.0;
lastOperationRequested = requestedOperation;
if (requestedOperation == 'C') {
stored = 0.0;
}
return stored;
}
}
</pre>
If we launch the CalculatorSpech ATDD class, it should be green nowAnonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-45162508069272595072012-02-15T17:38:00.001+01:002012-02-15T17:38:41.806+01:00Groovy Spock and Maven 3.0Here you can found a new version of HelloSpockPom for Maven 3.0. With Maven 3.0, you don't need anymore the Spock-maven plugin. And so you can use the last artifacts like bellow<br />
<pre class="brush: xml"><?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>hello</groupId>
<artifactId>spock</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<name>Hello Spock</name>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.3</version>
<configuration>
<providerSelection>1.8</providerSelection>
<source/>
</configuration>
<executions>
<execution>
<goals>
<goal>testCompile</goal>
<goal>compile</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.gmaven.runtime</groupId>
<artifactId>gmaven-runtime-1.8</artifactId>
<version>1.4</version>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.8.5</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.spockframework</groupId>
<artifactId>spock-core</artifactId>
<version>0.5-groovy-1.8</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.8.5</version>
</dependency>
</dependencies>
</project></pre>Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-73283912461860560602012-02-06T18:24:00.002+01:002012-02-07T08:36:04.208+01:00Vaadin and Groovy Test 4<b>TDD for Story 1</b><br />
Now we have wrote the TA for the first Story, we can start on the TDD.<br />
I create a class call <i>VaadinCalculatorTest</i><br />
<pre class="brush: groovy; bloggerMode: true">package ch.ge.vaadin
import org.junit.Test
import org.junit.Before
import org.junit.After
import com.vaadin.ui.Button
import static org.mockito.Mockito.*
class VaadinCalculatorTest {
private VaadinCalculator calculator
@Before void before() {
calculator = new VaadinCalculator()
calculator.init()
}
@After void after() {
calculator.close()
}
@Test void shouldDisplay2IfIPressButton2() {
def event = mock(Button.ClickEvent)
def button = mock(Button)
when(button.getCaption()).thenReturn(VaadinCalculator.TWO)
when(event.button).thenReturn(button)
calculator.buttonClick(event)
assert calculator.result == VaadinCalculator.TWO
}
}
</pre>
<br />
The first thing, we need to verify it's if press button "2", it's what we pressed. It's quite similar to our <i>VaadinCalculatorSpec. </i>If we run now, the compilation work but the test<i> <span style="color: red;">fail</span></i>. We need to implement the VaadinCalculator so the test run <i><span style="color: #38761d;">green</span></i>.<br />
<br />
<a name='more'></a><br />
<pre class="brush: groovy; highlight: [17,18]; bloggerMode: true">package ch.ge.vaadin
import com.vaadin.Application
import com.vaadin.ui.Button
class VaadinCalculator extends Application implements Button.ClickListener{
static String TWO = "2"
String result = 6
@Override
def void init() {
}
def void buttonClick(Button.ClickEvent clickEvent) {
def button = clickEvent.button
result = button.caption
}
}
</pre>
For the readers who don't use TDD, it's quite strange to implement only the button "2" and not all the button. But we will by the time we have tested all the button.
If we run the current test, now the test, it's <i><span style="color: #38761d;">green</span>.</i><br />
<br />
On line 17th and 18th, we have all the properties needed to catch the information needed. Exactly now, the page display nothing. But the event work perfectly.Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-42182660180590439932012-02-02T18:11:00.001+01:002012-02-20T14:52:53.105+01:00Vaadin and Groovy Test 3<b>CalculatorSpec.groovy</b><br />
In Vaadin, an <i>Application</i> represents the sum of all the components organized in <i>Windows, Layouts</i> and having a theme applied. The central class representing an application is the <i>com.vaadin.Application</i> class.<br />
His responsibilities include the following:<br />
<br />
<ul>
<li>Managing windows</li>
<li>Callbacks during the lifecycle of the application</li>
<li>Setting themes</li>
</ul>
It is the main servlet of your application, where all the different screen will be call. The method <i>init()</i>, will start the application.<br />
<br />
On our groovy class, we need first launch the future application, lets call it the <i>VaadinCalculator </i>and add the two spock methods <i>setup() </i>and <i>cleanup()</i>.<br />
<br />
<a name='more'></a><br /><br />
<pre class="brush: java; highlight: [6, 11]">import static org.mockito.Mockito.*
class CalculatorSpec {
def VaadinCalculator application
def setup() {
application = mock(VaadinCalculator)
application.init()
}
def cleanup() {
application.close()
}
}
</pre>
<br />
And now create the VaadinCalculator<br />
<br />
<pre class="brush: java">import com.vaadin.Application
class VaadinCalculator extends Application{
def init() {
}
}
</pre>
Now, let write our first test case
<br />
<pre class="brush: java; highlight: [12, 15, 22]"> def whenIAdd2and4IExpect6() {
when:
clickButton("C")
clickButton("2")
clickButton("+")
clickButton("4")
clickButton("=")
then:
def result = application.stored
result == 6.0
}
def void clickButton(String buttonName){
def clickEvent = mock(Button.ClickEvent)
def button = mock(Button)
when(button.getCaption()).thenReturn(buttonName)
when(clickEvent.button).thenReturn(button)
application.buttonClick(clickEvent)
}
</pre>
<br />
Spoke framework, give you the possibility to write test in the format of <i>given, when </i>and<i> then, </i>to give you more visibility on what you write.<br />
<br />
<ul>
<li>Line 15: I create a clickButton methods to simplify the test case on non necessary duplicate statements.</li>
<li>Line 22: we are interested only to know if the user click on specific button, we have the result so we need just call the <i>Button.ClickListener.buttonClick </i>and then check at line 12 if the result is correctly computed</li>
<li>Line 12: I could use the <i>Assertions.assertThat()</i> from fest-assert, but the one implemented inside Spock is quite better.</li>
</ul>
We need now just implement the methods signature and set a <i>result</i> default value to "6" on line 6 and now run the test, it should be a green line, so we can push our first version to our CMS
<br />
<pre class="brush: java; highlight: [6]">import com.vaadin.Application
import com.vaadin.ui.Button
class VaadinCalculator extends Application implements Button.ClickListener{
String result = 6
@Override
def void init() {
}
def void buttonClick(Button.ClickEvent clickEvent) {
}
</pre>
Now we are ready to implement our first storyAnonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-62496450654033951782012-02-02T15:42:00.000+01:002012-02-15T17:44:05.991+01:00Vaadin and Groovy Test 2Yesterday we created our first Vaadin application with Maven. Today as a true Agile Developer we will try to work with Vaadin with our testing tools.<br />
<br />
<b>Work on Acceptance Test</b><br />
We will work on a simple calculator, with 9 buttons for the digits, 4 buttons for the operator (/, *, -, +) and an enter button, to display the result.<br />
The first stories would be :<br />
<br />
<ul><li>As a User, when I push the button 2, +, 4, I expect have a result of 6</li>
<li>As a User, I expect to see a classic calculator with the numbers in a grid of 3 x 3</li>
</ul><a name='more'></a><br />
<b>Prepare Maven for the Test</b><br />
We use <a href="http://code.google.com/p/spock/">Spock</a>,<span style="background-color: white;"><span style="font-family: arial, sans-serif; font-size: x-small;"><span style="line-height: 16px;"> a testing and specification framework for Java and Groovy applications.</span></span><i style="font-family: arial, sans-serif; font-size: 13px; line-height: 16px;"> </i><span style="font-family: arial, sans-serif; font-size: x-small;"><span style="line-height: 16px;">And a few other testing libraries that I like to work with.</span></span></span><br />
<span style="font-family: arial, sans-serif; font-size: x-small;"><span style="line-height: 16px;"><br />
</span></span><br />
<pre class="brush: xml"><dependency>
<groupId>org.easytesting</groupId>
<artifactId>fest-assert</artifactId>
<version>1.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>1.9.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.spockframework</groupId>
<artifactId>spock-core</artifactId>
<version>0.5-groovy-1.8</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.8.5</version>
</dependency>
</pre><br />
We need also add the following plugins, so all work fine :<br />
<br />
<pre class="brush: xml"> <plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.3</version>
<configuration>
<providerSelection>1.8</providerSelection>
<source/>
</configuration>
<executions>
<execution>
<goals>
<goal>testCompile</goal>
<goal>compile</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.gmaven.runtime</groupId>
<artifactId>gmaven-runtime-1.8</artifactId>
<version>1.4</version>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.8.5</version>
</dependency>
</dependencies>
</plugin>
</pre>We are finally ready to start our application.<br />Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-21561229540217949302012-02-01T18:22:00.000+01:002012-02-23T17:32:00.502+01:00Vaadin and Groovy Test<a href="http://www.amazon.com/gp/product/1849515220/ref=as_li_tf_il?ie=UTF8&tag=alexsblo-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=1849515220"><img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&Format=_SL110_&ASIN=1849515220&MarketPlace=US&ID=AsinImage&WS=1&tag=alexsblo-20&ServiceVersion=20070822" ></a><img src="http://www.assoc-amazon.com/e/ir?t=alexsblo-20&l=as2&o=1&a=1849515220" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />
<br />
<table><tbody>
<tr><td>I had the chance to see a presentation of <a href="https://vaadin.com/">Vaadin</a> with <a href="http://blog.frankel.ch/">Nicolas Fränkel,</a> who also write an interesting book "<a href="http://www.amazon.com/gp/product/1849515220/ref=as_li_tf_tl?ie=UTF8&tag=alexsblo-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=1849515220">Learning Vaadin</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=alexsblo-20&l=as2&o=1&a=1849515220" style="border: none !important; margin: 0px !important;" width="1" />". Vaadin is a new Java web framework for making applications look great and perform well, making your users happy. He promises to make your user interfaces attractive and usable while easing your development effort and boosting your productivity.<br />
Vaadin change the way you write web application by thinking application and events process. That's a great news, write a Swing application or a web application will be the same. No more changing the way to write you app. So I grab a book edition and run on my computer to try Vaddin.</td> <td><br /></td> </tr>
</tbody></table>
<br />
<b>Creating a Maven Project</b><br />
Before starting our Vaadin project you need to create a Maven project with the Vaadin Maven archetype as explain on <a href="https://vaadin.com/wiki/-/wiki/Main/Using%20Vaadin%20with%20Maven">Using Vaadin with Maven</a><br />
<br />
<pre>mvn archetype:generate
-DarchetypeGroupId=com.vaadin
-DarchetypeArtifactId=vaadin-archetype-clean
-DarchetypeVersion=LATEST
-DgroupId=your.company
-DartifactId=project-name
-Dversion=1.0
-Dpackaging=war
</pre>
<br />
<b>Running the Application</b><br />
Your project should be ready now and you can launch a testing application with <i>mvn jetty:run</i> and then open your browser under <i>http://localhost:8080/<artifactid></artifactid></i>.<br />
<br />
The <i>pom</i> has everything ready to work on your Vaadin application.Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0tag:blogger.com,1999:blog-8152390113104071301.post-41160677110994282642010-03-29T20:39:00.000+02:002012-02-02T09:49:19.709+01:00Scrum Master vs Iteration ManagerToday I was at Swiss XP Days 2010, quite intersting as always. I follow an interesting session about Iteration Manager from Petra Skapa.<br />
I read from different blogs the same question, is the Scrum Master and the Iteration Manager are the same? I would say no and yes at the time. On Scrum Methodology we have a role for this and it is call Scrum Master. But on other Agile Methodology like XP Programming we don't have a specific role. Most of the time the role of Scrum Master is taken from a team leader or someone who embrace the Agile methodology and would like to share his willing with the others.This one is the person. Ok the Iteration Manager could be the project manager but I would not recommend it, I would prefer someone near the developer team and not someone near the management.Anonymoushttp://www.blogger.com/profile/06472681194671677905noreply@blogger.com0