JIRA Studio: Development in the Cloud - Atlassian Summit 2010

2,909 views
2,857 views

Published on

JIRA Studio: Development in the Cloud

Kamal Nabijee, Razorfish
Shihab Hamid, Atlassian

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,909
On SlideShare
0
From Embeds
0
Number of Embeds
1,117
Actions
Shares
0
Downloads
28
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

JIRA Studio: Development in the Cloud - Atlassian Summit 2010

  1. 1. 1 1
  2. 2. JIRA Studio Development in the Cloud Kamal Nabijee Shihab Hamid Developer Atlassian 2 2
  3. 3. Razorfish Global presence Over 1,500 professionals in 21 cities in 8 countries with offshore partners in 9 locations. Full-service digital agency Top 5 interactive agency according to Advertising Age Leader in web design and digital marketing according to Forrester Technology Agnostic approach for all web site User Centered Design approach for all projects 3
  4. 4. Concept to Launch Foundatio Stabilizati Concept Iterations Launch n on 4 4
  5. 5. Establishing The Vision Business Drivers  Business  Strategy  Business  Requirements Possible  Research Solution Technical Feasibility Consumer Experience  Solu9on  Strategy  User  Scenarios  Technical  Architecture  Roadmap  Prototype 5
  6. 6. Customer-Centric Model User stories are at the center of all User Story planning and implementation activities including, design, functional specification, QA, development and user testing acceptance testing. Accp. Deplo Wire Biz Comp CMS Assign Test Tech HTML Defect Specs Criteri Tasks DCTs Code y. frames Req. s Specs ments Cases Arch Temp. s a Notes 6
  7. 7. Change is Embraced “…end users are forced to firmly state their needs before they are ready. Any changes are then frozen so a contract can be negotiated…Unfortunately, without initial agreement on the job, it is impossible to reach agreement on the scope of the changes…This process results in wasted time and money, distrust, and a poor product.” - "Managing the Software Process" by Watts S. Humphrey. 7
  8. 8. Build In Increments 8
  9. 9. 3-week Iterations 3-­‐week  Planning  Phase 3-­‐week  Implementa4on  Phase Technical  Team:  Build  feature Business  Team:  Define    the  next  set  of  features Business  Team:  Define  the  func9onal  specifica9ons  and   acceptance  criteria 9
  10. 10. 3-week Iteration Overview Itera9on  Kickoff Feature  Review Hand-­‐off  To  QA Code  Development Retrospec9ve Tasks  &  Assignments Code  Freeze Acceptance  Criteria Unit  Tes9ng Test  Case Con9nuous  Builds Ongoing  Regression   Integra9on QA  &  Stabilize Deploy Tes9ng IMPLEMENTATION Code  Review Biz Code  Review Biz Review Review Day  1 Day  2 Day  3 Day  4 Day  5 Day  6 Day  7 Day  8 Day  9 Day  10 Day  11 Day  12 Day  13 Day  14 Day  15 Biz Biz Review Review PLANNING Refactor  Design Scope  Planning  for  the   Func9onal  Specifica9on Sign-­‐off  & next  Itera9on User  Stories Itera9on   User  Flows Planning Annotated  Wireframes Visual  Design  Treatments Acceptance  Criteria HTML  Templates Test  Cases  Development 10
  11. 11. Typical Project Timeline Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan Program  Mgmt Project Management Concept User  Experience Design Visual  Design Foundational Design 2 3 4 5 Business  Analysis Story Development 2 3 4 5 Itera9ve  Planning  and  Implementa9on  Cycles Tech Tech Foundational Tech 1 2 3 4 5 Beta Fixes Strategy Design System   Tes9ng  &  UAT System  Tes9ng   UAT Test  Prep   Data  Migra9on Automated Data Migration Deploy. Deployment Planning Consumer  Beta  Planning Planning Cutover Support Support TransitionOngoing  Managed  Support 11
  12. 12. What do we need? • Bring client and Razorfish personnel to form, norm and perform rapidly • Facilitate team collaboration…not documentation! • Need a home and a structure to house project artifacts and deliverables • Manage project scope • Manage tasks, assignments, estimates and timeline • Be the system of record and contain the definition of done • Provide transparency • Provide real-time status 12
  13. 13. Using JIRA Studio Development in the Cloud 13 13
  14. 14. How The Tools Relate 14 14
  15. 15. Leverage The Cloud Easy to Setup, Fast, Secure and Reasonably Price • Create A Project Home • Assign a Group of Users • Adjust Other Configurations • Issue Type Scheme • Permission Scheme • Field Configuration Scheme • Workflow Scheme 15 15
  16. 16. Create A Document Repository 16
  17. 17. Setup Project Meetings • Daily Stand-up • Iteration Planning – Define Scope of the Iteration • Iteration Kick-off – Detail Walkthrough of the Stories • Retrospective – Incorporate Feedback 17
  18. 18. Develop & Prioritize The Project Backlog 18
  19. 19. Iteration Planning Design Artifacts 19 19
  20. 20. Iteration Planning Subtasks, Assignments, Estimates & Story Leads 20 20
  21. 21. 21 21
  22. 22. JIRA Studio Development in the Cloud Shihab Hamid, Technical Lead, Atlassian 22 22
  23. 23. JIRA Studio + Google Apps 23 23
  24. 24. JIRA Studio + Google Apps ! JIRA Studio • The best hosted development suite 23 23
  25. 25. JIRA Studio + Google Apps ! JIRA Studio • The best hosted development suite ! 23 23
  26. 26. JIRA Studio + Google Apps ! JIRA Studio • The best hosted development suite ! 23 23
  27. 27. JIRA Studio + Google Apps ! JIRA Studio • The best hosted development suite ! ! Google Apps • The best messaging and collaboration platform 23 23
  28. 28. JIRA Studio + Google Apps 24 24
  29. 29. Concept 25 25
  30. 30. Concept • Requirements • Tighter integration (?) • Cool shit (?!) 25 25
  31. 31. Concept • Requirements • Tighter integration (?) • Cool shit (?!) • Constraints • Distributed team across 3 time zones • External dependencies on Google and Contegix • Production-ready on 28th of January 2010 25 25
  32. 32. Concept to Launch Inception Planning Quickstart Iterations Polish 26 26
  33. 33. 1. Inception 27 27
  34. 34. 1. Inception Preview OpenID OAuth Google Doc Marketplace Notifications Certificates User Attach Google Synchronisation Chat Doc 27 27
  35. 35. 1. Inception • Every project needs a home • Create a Project in JIRA Studio with 3 clicks 28 28
  36. 36. 1. Inception 29 29
  37. 37. 1. Inception ! Spike • Proof of concept • Technical feasibility • Gauge project scope • Development Environment • Test Systems • Skills & Experitise 29 29
  38. 38. Concept to Launch Inception Planning Quickstart Iterations Polish 30 30
  39. 39. 2. Planning “Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.” ! Requirements • Not even the product managers know all the requirements • Try to enumerate them • Requirements will be in flux • Useful for accurate estimation 31 31
  40. 40. 2. Planning – Estimation 32 32
  41. 41. 2. Planning – Estimation 33 33
  42. 42. 2. Planning – Estimation ! 33 33
  43. 43. 2. Planning – Two Teams 34 34
  44. 44. 2. Planning – Two Teams • Sydney • Critical integration piece • More defined, but obligatory 34 34
  45. 45. 2. Planning – Two Teams • Sydney • Critical integration piece • More defined, but obligatory • San Francisco • Cool shit: UI integration • Technically risky, but all optional 34 34
  46. 46. 2. Planning – User Stories 35 35
  47. 47. 2. Planning – User Stories 36 36
  48. 48. 2. Planning – User Stories • “A user logged in to Google Apps will also be logged in to JIRA Studio” 37 37
  49. 49. 2. Planning – User Stories • “A user logged in to Google Apps will also be logged in to JIRA Studio” 37 37
  50. 50. 2. Planning – Use Cases 38 38
  51. 51. 2. Planning – Use Cases 38 38
  52. 52. 2. Planning – Use Cases 38 38
  53. 53. Concept to Launch Inception Planning Quickstart Iterations Polish 39 39
  54. 54. 3. Quickstart “Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.” 40 40
  55. 55. 3. Quickstart • How to play • Any pre-requisite tools for the project • Checking out the source • Building the source • Getting the application up and running • How to contribute • IDE integration • Code style guidelines • Automated testing guidelines • Automated builds 41 41
  56. 56. 3. Quickstart • Continuous integration • 11 build plans • 3678 builds on project • 41 builds / day 42 42
  57. 57. Concept to Launch Inception Planning Quickstart Iterations Polish 43 43
  58. 58. 4. Iterations “Working software is the primary Iteration measure of progress” Planning • 5 two-week iterations Demoing Spec’ing • Demoable software Reviewing Coding 44 44
  59. 59. 4. Iterations – Planning 45 45
  60. 60. 4. Iterations – Issues 46 46
  61. 61. 4. Iterations – Issues 46 46
  62. 62. 4. Iterations – Issues 46 46
  63. 63. 4. Iterations – Specs 47 47
  64. 64. 4. Iterations – Code Reviews 48 48
  65. 65. 4. Iterations – Activity Streams 49 49
  66. 66. 4. Iterations – Activity Streams 49 49
  67. 67. Concept to Launch Inception Planning Quickstart Iterations Polish 50 50
  68. 68. 5. Polish “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.” ! Release often • Releasing is a process, optimise and document it • Perform QA and Blitz Testing • Dogfood your software wherever possible 51 51
  69. 69. 5. Polish - Dogfooding 52 52
  70. 70. Launch! 53 53
  71. 71. Launch! • Many things to consider • Documentation • Support • Deployment • Marketing 54 54
  72. 72. Launch! • Many things to consider • Documentation • Support • Deployment • Marketing 54 54
  73. 73. Launch! • Many things to consider • Documentation • Support • Deployment • Marketing 54 54
  74. 74. Launch! • Many things to consider • Documentation • Support • Deployment • Marketing 54 54
  75. 75. Launch! • Many things to consider • Documentation • Support • Deployment • Marketing 54 54
  76. 76. Lessons Learned 55 55
  77. 77. Lessons Learned • Studio is a tool – use the aspects of it that benefit you 55 55
  78. 78. Lessons Learned • Studio is a tool – use the aspects of it that benefit you • What worked for us • Spike: jump in there, see what you need • Estimation: stories, use cases • Quickstart: everything a developer needs to start committing • Feedback: continuous integration, peer code review, demo the goods • Dog Food: use your own software before dishing it out to customers 55 55
  79. 79. Questions? 56 56
  80. 80. Image Credits 57 57
  81. 81. Image Credits • Spike • http://www.flickr.com/photos/elsie/8229790/ • User Stories • http://uncyclopedia.wikia.com/wiki/File:CaptainobviousChooseOption.jpg • Quickstart! ! • http://commons.wikimedia.org/wiki/ File:Mens_100m_finals_British_Champs_and_Olympic_Trials.jpg • Polish • http://www.flickr.com/photos/jmrosenfeld/3423241968/ 57 57
  82. 82. Infrastructure Contegix JIRA Studio SF •JIRA/Greenhopper Sydney •Confluence Team •FishEye/Crucible Team •Bamboo •Crowd Google 58 58

×