Experiences From Agile Projects Great & Small (OSDC 2009)

1,931 views
1,813 views

Published on

Experiences From Agile Projects Great and Small talk, delivered by Craig Smith and Paul King at the Open Source Developers Conference (OSDC) 2009 in Brisbane.

Published in: Technology, Art & Photos
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,931
On SlideShare
0
From Embeds
0
Number of Embeds
214
Actions
Shares
0
Downloads
50
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Experiences From Agile Projects Great & Small (OSDC 2009)

  1. 1. Experiences from Agile Projects Great & Small Craig Smith Dr. Paul King Suncorp ASERT
  2. 2. Welcome…
  3. 3. Image http://blog.theworkinggroup.ca/wp-content/uploads/2009/04/agile-manifesto1.gif Agile Manifesto
  4. 4. Agile Pyramid Approach Practices Principles Values Image http://media.photobucket.com/image/pyramid%20agile/lalframes/GreatPyramid.jpg
  5. 5. Scrum Practices Image http://blogs.conchango.com/Admin/ImageGallery/blogs.conchango.com/Colin.Bird/Scrum%20Overview%20Diagram.png
  6. 6. Image Beck, Kent – Extreme Programming Explained: Embrace Change XP Practices
  7. 7. Agile Lifecycle - Concept 5% Image http://legacy.lclark.edu/faculty/jsmiller/objects/idea_bulb.jpg
  8. 8. Agile Lifecycle - Initiate 10% Image http://propertymanagementgroups.com/MonopolyGO.jpg
  9. 9. Agile Lifecycle - Deliver 80% Image http://www.xdin.com/Portals/4/Images/develop-n-deliver.JPG
  10. 10. Agile Lifecycle - Deploy 5% Image http://www.pcfixexpress.com/images/happy_office.jpg
  11. 11. Project Sponsor Project Manager Program Enterprise Manager Architect Iteration Manager Tech lead Business Analyst Infra- Application Core structure Owner Lead Team Tester Bus. SME Architect Software Engineer Support Other key Analyst stakeholders Extended Team Image http://www.befitlifestyle.com/images/CorporateTeamHands.jpg Agile Team
  12. 12. Concept  Initiate  Deliver  Deploy Storycards & iteration management Collaboration Development environments Development tools Testing Continuous integration Deployment Monitoring Image http://3.bp.blogspot.com/_H0iqHTCqRyo/RfQyLHm8POI/AAAAAAAAABQ/-ZGsV-p-aVs/s400/evolution.jpg Agile Tools Timeline
  13. 13. Agile Team Practices Image http://www.flickr.com/photos/87791108@N00/1182442244/
  14. 14. Daily Standup / Scrum
  15. 15. Daily Sitdown Image http://frederatorblogs.com/monsters/files/2008/04/conferencecall.jpg/
  16. 16. Image http://www.nogeekspeak.com.au/uploaded_images/image/Geek%20Speak.jpg / Post Standup Standup
  17. 17. Iteration Open/Kickoff/Demo
  18. 18. Image http://www.acousticsciences.com/articles/weak-link-chain.JPG Combine Meetings
  19. 19. Retrospective
  20. 20. Image http://www.xqa.com.ar/visualmanagement Iteration Length / Define Done
  21. 21. Software Development Practices Image http://www.redmolotov.com/images/designs/turn-it-up-to-eleven-tshirt_design.jpg
  22. 22. 100% code Daily pair rotation coverage from unit tests Continuous improvement through retrospectives All production code paired and test-driven High levels of automation Minimal design up front Light-weight metrics to but an appreciation monitor progress for when such design made sense Customer focused outcomes Full continuous integration Developer Practices
  23. 23. Increase Productivity Boundary testing Disposable tests Automate immutability, cloneability & null Inversion of control Auto mock creation checking Autogenerate random test data
  24. 24. Collaboration
  25. 25. Development environments Image http://imgs.xkcd.com/comics/compiling.png http://img.dailymail.co.uk/i/pix/2007/07_01/hammerDM0607_468x584.jpg
  26. 26. Development tools Image http://www.cornetdesign.com/images/bowling_all2s.jpg http://4.bp.blogspot.com/_9kQQgQD35rY/SaV5p8YBGhI/AAAAAAAAAkg/HOvlhIo7yGI/s1600- h/06_Red_Green_Refactor.JPG
  27. 27. Clover
  28. 28. IDE Plugins
  29. 29. RYO IDE Plugins
  30. 30. • d VCS: FishEye/SVNStat
  31. 31. Testing tools Image http://blogs.msdn.com/blogfiles/willy- peter_schaub/WindowsLiveWriter/VSTSRangersProjectsWCFLoadTestToo.0Ships_7D80/CLIPART_OF_13165_SM_2 .jpg
  32. 32. Selenium
  33. 33. JMeter
  34. 34. Continuous integration
  35. 35. Hudson
  36. 36. Deployment tools Image http://www.serena.com/images/products/dimensions-deploy/deploy-illustration2-286-23.jpg
  37. 37. Tableaux
  38. 38. [...] <configuration> <container> > mvn cargo:deploy <containerId>tomcat5x</containerId> <type>remote</type> </container> <configuration> <type>runtime</type> <properties> <cargo.remote.username>username</cargo.remote.username> <cargo.remote.password>password</cargo.remote.password> </properties> </configuration> <deployer> <type>remote</type> <deployables> <deployable> <groupId>war group id</groupId> <artifactId>war artifact id</artifactId> <type>war</type> <properties> <context>optional root context</context> </properties> <pingURL>opt. url to ping to know deployed</pingURL> <pingTimeout>opt. timeout (default 20000ms)</pingTimeout> </deployable> [...] Cargo
  39. 39. Cucumber Feature Feature: Deployment In order to use the latest version of testApp A support officer should be able to Check that testApp.war has been deployed to the remote machine Scenario: User deploys Given app testApp When I deploy Then the testApp.war file should be deployed to remote Cucumber / Capistrano Step Definition [...] When /^I deploy$/ do Dir.chdir(@app_dir) do system "cap deploy:setup" system "cap deploy" end end Then /^ the testApp.war file should be deployed to remote$/ do [...] Deployment Tests
  40. 40. Monitoring tools Image http://www.monitoringsoftwareonline.com/files/QuickSiteImages/computer_plus_magnifying.jpg
  41. 41. Splunk
  42. 42. Tools Maturity Beginner Intermediate Advanced Collaboration Storycards & Deployment iteration Development tools management Monitoring Testing Development environments Continuous integration
  43. 43. Project Characteristics
  44. 44. Project Duration Image http://kenyonreview.org/blog/wp-content/uploads/2008/12/daylight-savings-time.jpg
  45. 45. Image http:// www.dilbert.com Project Type
  46. 46. Resistance Image http://www.espacelaurent.com/pushback.jpg
  47. 47. Image http://www.community-links.org/linksuk/wp-content/images/kiss.jpg Design Constraints
  48. 48. Equipment Tools Facilities Image http://api.ning.com/files/IR6j1-Mhm*VYT3GrA0Sw3H8BN8oNNT0dmyiVrzFELl*K2Jytrg4DWxeivLmwsB-LCSzEcB9YlM- My5vti1VmjGIRgnFy6rgd/thecubes.jpg
  49. 49. Distributed Teams Image http://www.geos.ed.ac.uk/homes/tcrowley/earth.jpg
  50. 50. Distributed Pairing: DocShare
  51. 51. Distributed Pairing: Virtual Dev
  52. 52. Collaboration: Story Walls
  53. 53. Virtual Collaboration: XPlanner
  54. 54. Virtual Collaboration: Jira
  55. 55. Virtual Collaboration: Agilo
  56. 56. Virtual Collaboration: Confluence
  57. 57. Distributed Retrospectives
  58. 58. Virtual Planning poker
  59. 59. Facilities
  60. 60. People & Roles Image http://i.telegraph.co.uk/telegraph/multimedia/archive/00998/Tesco-bread_998381c.jpg
  61. 61. Influence (@waterfalldave) Image http://www.vimeo.com/user1195135/videos
  62. 62. Image http://www.flickr.com/photos/10916984@N03/998818127/ Agile Coach / Experience
  63. 63. Co-Located Customer Image http://tulsatimeapr.files.wordpress.com/2009/09/customer-service.jpg
  64. 64. Image http://www.agile-software-development.com/2007/03/what-if-my-agile-development-colleagues.html Embracing The Wider Team
  65. 65. Wider Team: Test / QA Image http://tucowsinc.com/news/wp-content/uploads/2007/03/qa-analyst.jpg
  66. 66. Image http://www.stellman-greene.com/blog/wp-content/uploads/2007/08/business-analyst.png Wider Team: Business Analyst
  67. 67. Wider Team: Infrastructure Image http://incredimazing.com/static/media/2009/03/15/a236aad0d04d6fe/So_You_Want_To_Be_A_Network_Engineer.jpg
  68. 68. Image http://www.icef.com/uploads/pics/berlin_2007_training_03.JPG Wider Team: Change Manager
  69. 69. Wider Team: Usability Image http://www.infodesign.com.au/images/usabtest.gif
  70. 70. Image http://www.ekidnaworld.com/media/image/explore_characters_pickme_05-01-2009-10-19-37_large.jpg Attracting Quality Staff
  71. 71. Third Party Vendors Image http://www.investmentz.co.in/ImagesAsit/VendorsL.jpg
  72. 72. Change Image http://www.freefoto.com/images/04/33/04_33_13---Euro-Coins_web.jpg
  73. 73. Bottom Up Image http://www.xqa.com.ar/visualmanagement http://home.pacbell.net/fantomdj/dk/donkey_kong_barrel.gif
  74. 74. Top Down Image http://www.xqa.com.ar/visualmanagement http://www.greenenergyinvestors.com/index.php?act=Print&client=printer&f=2&t=2991
  75. 75. Share & learn from experiences Image http://www.sourcejuice.com/wp-content/uploads/2008/03/share-expertise1.jpg
  76. 76. That’s Time... Image http://www.northshorecity.govt.nz/SiteCollectionImages/Services/Transport/Public%20Transport/transit-lane-sign.jpg
  77. 77. Want More Information? Craig Smith http://www.suncorp.com.au http://www.agileacademy.com.au craig.smith@suncorp.com.au @smithcdau Dr. Paul King http://www.asert.com.au paulk@asert.com.au @paulk_asert
  78. 78. Acknowledgments Suncorp is one of Australia and New Zealand's largest diversified financial services providers, supplying banking, insurance and wealth management products to around 7 million customers through well-established and recognised brands such as AAMI, Australian Pensioners Insurance Agency, Shannons, Vero, Asteron and Tyndall, as well as Suncorp and GIO. Today, Suncorp is Australia's fifth largest bank and second largest domestic general insurance group, with over 16,000 staff. Suncorp has representation in 450 offices, branches and agencies throughout Australia and New Zealand. ASERT is one of Australia’s leading suppliers of development services, mentoring and training in Agile, Web Services, Web Applications, Java, Groovy and Grails.

×