Phát triển tốt hơn với Scrum

2,337 views
2,232 views

Published on

Slide cho buổi nói chuyện của SV FPT University Tp. HCM về Scrum.

Published in: Technology
1 Comment
2 Likes
Statistics
Notes
No Downloads
Views
Total views
2,337
On SlideShare
0
From Embeds
0
Number of Embeds
249
Actions
Shares
0
Downloads
150
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide
  • LàkhunglàmviệcTriếtlýmớitrongsảnxuấtphầnmềmTiếpcậnmớiđểlàmviệckhôngkểlàphầnmềm hay khôngs“Transforming the world of work”Scrum hướngđếnviệctổchứccôngviệc, khôngđềcậpgìđếncác Engineering Practices
  • 1 phútdànhchoquảngcáoGiớihạncủaphiên “nhậpmôn”: giớithiệu Scrum “sáchvở”, phiênthứ 2 trongbuổingàyhôm nay tasẽnóivề Scrum “thựctế”, trong 1h thuyếttrìnhsẽcóíthỏiđáp – đểdànhphần 2.
  • Steps Production Company
  • Chuyệncủa Toyota: Lean – Toyota Production System : the Toyota wayCónhậnđịnh:”thằng Toy lean quánênnómớithế” – cóliênhệnàogiữa lean vớichấtlượngthấpkhông?
  • Bạnnghĩtôicaobaonhiêu?Tạisaobạnlạicóthểướclượngđược?Bạncócầnthướcđokhông?Câutrảlời: Không => thựcnghiệmcũnghàmchứatrítuệ - “trítuệthựctiễn” – empiricism – thuyếtthựcnghiệm
  • 3 phút
  • Benefits & Advantages“Hyper-Productive”Thếnàolà sustainable?
  • Vẽrađồhình Scrum3 PhútBạnnàocóthểgiúptôicắtnghĩatừ framework nhỉ? “độtnhiêntôithấybítừ”Kháiniệmkhunglàmviệc (framework) làgì?Tạisaokhônggọi Scrum làquytrình?
  • 3 phútĐốilậpvớitrườngpháiquảnlýkĩthuật.
  • Vẽtaymột Sprint, rồihiệndầnratheochiềuthờigian, nóitừngphầnmột
  • 5phútAnimation: Độibóngbầudục => ĐộisảnxuấtHuấnluyệnviên => ScrumMasterÔngchủtịchđộibóng => Product Owner
  • 3 phút
  • 3 phútVềcácgiátrị: Customer, BusinessSửdụnglýthuyếthàngđợi
  • 3 phút
  • 15 phút.Tầm quan trọngcủathờigianvàviệcđóngkhungLuônluônthiếuthờigian => đặtrakháiniệm time-box (còngọilà ceremony) và time-boxingGiớithiệusơlượcvềcáckhungthờigianAnimation: khidiễngiảnsơlượcxongxuôi (5 phút) chuyển qua diễngiải chi tiết: Lậpkếhoạch, Sprint, Daily Scrum, Sơkết, Ràsoát – cảitiến ; khiđó thu nhỏhìnhvẽxuốngdưới footer, nổracái pop-up ghi chi tiếtvềtimebox. Tổngthờigiankhoảng 15 phút
  • 10 míns
  • Tạisaokhônggọi Requirement chorồi?Lýthuyết
  • Tạisaolạikhônggọilà plan?Nhắcđến agile manifesto.
  • XemảnhScrumLab, IbelisXemthêm: http://judykat.com/ken-judy/our-team-room/
  • Scrum thiênvềtổchứchoạtđộng, quảnlýtổngthể. Scrum khôngmôtả chi tiếtcácsảnphẩmđượclàmrathếnào. Đólàcác low-level practices (mứcthấphơn): simple design, TDD, ..
  • Introduced in XP
  • Introduced in XP
  • Kểra XP, Kanban, Crystal clear, Scrumban v.v.
  • Phát triển tốt hơn với Scrum

    1. 1. LàmviệctốthơnvớiScrum<br />Dương Trọng Tấn<br />tandt@fpt.edu.vn<br />9-2011<br />
    2. 2. 9/23/2011<br />Làm việc tốt hơn với Scrum<br />2<br />“Tất cả mọi người sẽ thích Scrum; nó thực sự là những gì mà chúng ta sẽ làm khi bị dồn đến chân tường” <br />Jim Coplien<br />“Scrum làmộtcáchtiếpcậnmớimẻvàsángtạođểgiảiquyếtnhữngcôngviệckhókhăn, phứctạp”<br />
    3. 3. Lịchtrình<br />Trảinghiệm Agile<br />Khunglàmviệc Scrum<br />Mộtsốvấnđềmở<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />3<br />
    4. 4. Trảinghiệm Agile 1<br />Ảnh: Hoa hậuThùy Lâm tạicuộc thi HHHV 2008.<br />Nguồn: Dantri.vn <br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />4<br />
    5. 5. Lean & TPS<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />5<br />Giảmthiểutới 80% cáclãngphíkhôngcầnthiết<br />Kiểmsoáttiếntrìnhthựcnghiệm (Empirical Process Management)<br />LýthuyếtHàngđợi (Queuing Theory)<br />Nhómtựquản<br />Tại Toyota, quátrìnhsảnxuấtxehơibịảnhhưởngbởitriếtlý “ lean manufactoring” – làmíthơn, gặtháinhiềuhơn.<br />
    6. 6. Trảinghiệm Agile 2<br />Cao-Thấp<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />6<br />
    7. 7. Bóngbầudục<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />7<br />Bạnnghĩgìvềtròchơinày?<br />Ảnh: Greenandgoldrugby.com<br />
    8. 8. Sao lạitốthơnkhicóScrum?<br />Giảmthiểulãngphívàtốiưuhóagiátrịcủadựán<br />Đảmbảochấtlượngcao<br />Năng suấthơnrấtnhiều<br />Scrum giúpthayđổitổchứctheohướngbềnvữnghơn<br />Scrum rấtdễhiểuvàthúvị<br />“Scrum rấtđẹpvềlýthuyếtvàhiệuquảtrongthựctiễn”<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />8<br />
    9. 9. Scrum Framework<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />9<br />Nhóm Scrum<br />Quytắc<br />Quytắc<br />Scrum<br />Minh bạch<br />Thanh tra<br />Thíchnghi<br />Đồnghề<br />Sựkiện Scrum<br />Quytắc<br />
    10. 10. Ba châncủa Scrum<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />10<br />Scrum<br />Minh bạch<br />Thanh tra<br />Thíchnghi<br />Ba châncủa Scrum >> Empirical process control<br />
    11. 11. 9/23/2011<br />Làm việc tốt hơn với Scrum<br />11<br />
    12. 12. [Scrum ‘Process’]<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />12<br />
    13. 13. Nhóm Scrum<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />13<br />Product Owner<br />liênchứcnăng<br />Nhóm Phát triển<br />Scrum Master<br />
    14. 14. Scrum Master<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />14<br />ScrumMaster đảm bảo toàn bộ Nhóm Scrum tuân thủvà hưởng lợi từ Scrum.<br />Côngviệcđặcthù: loạibỏtrởlực<br />Vừalãnhđạo, vừalàđầytớ<br />KhôngphảilàProject Manager!<br />“Dọnđường”, <br />IMG:http://www.denverlawnaeration.com/snowremoval.html<br />
    15. 15. Product Owner<br />Làngườiduynhất<br />chịu trách nhiệm cho việc quản lý Product Backlog <br />và đảm bảo các giá trị cho Đội sản xuất làm việc<br />Tốiưuhóagiátrịchosảnphẩm<br />Sửdụnglýthuyếthàngđợiđểquảnlý Product Backlog<br />KhôngphảilàProject Manager!<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />15<br />
    16. 16. Nhóm Phát triển<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />16<br />Nhómcácnhàpháttriển (developer) vớinhiệmvụ<br />biếnđổi Product Backlog thànhgóisảnphẩmsẵnsàngchuyểngiao(Potentially Shippable Product Increment) ở cuốimỗi Sprint <br />Tựquản<br />Liênchứcnăng<br />
    17. 17. Vậnhành<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />17<br />Deemer el al.<br />
    18. 18. Video<br />Day of Agile Developers Life<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />18<br />
    19. 19. ĐịnhnghĩaHoànthành<br />Được đồng thuận giữa tất cả các bên và phù hợp với tiêu chuẩn, quy ước của tổ chức cũng như các chỉ dẫn khác.<br />Khi một công việc được ghi nhậnlà “hoàn thành" tại cuộc họp Sơ kết Sprint, nó phải thỏamãn “Định nghĩa Hoàn thành”. <br />Làcôngcụkiểmđểnhómtựkiểmtracôngviệccủamình<br />Thườngphảnánhtrìnhđộkĩthuậtcủanhóm<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />19<br />
    20. 20. Đồnghề<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />20<br />Burndown Chart<br />
    21. 21. Product Backlog<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />21<br />Tạisaolạikhônggọilà Requirement document hay Product Plan?<br />
    22. 22. Sprint Backlog<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />22<br />Tạisaolạikhônggọilà Plan?<br />
    23. 23. BiểuđồBurndown<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />23<br />Biểuđồnàydùngchocả Product (gọilà Release Burndown) và Sprint (gọilà Sprint Burndown)<br />
    24. 24. Cácđồnghềkhác<br />Scrum Poker Card<br />User Story<br />Agile Project Management Systems<br />VersionOne, Redmine, Assembla, ScrumSprintMonitor, v.v.<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />24<br />
    25. 25. Cácđồnghềkhác<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />25<br />
    26. 26. Khókhănkhitiếpcận Scrum<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />26<br />Ngạithayđổi<br />Thiếuhiểubiếtthấuđáo Scrum<br />Yếuthực thi<br />Thiếu cam kết<br />Khôngkiêntrì<br />
    27. 27. Mở: Engineering Practices<br />Scrum thiênvềtổchứccôngviệc, đểsảnxuất, Nhóm Phát triểncònphảisửdụngcáckĩthuậtkhác:<br />Thiếtkếtiếnhóa (Evolutional Design)<br />Táicấutrúc (Refactoring),<br />Ướclượng (agile estimation),<br />Lậptrìnhtheocặp (Pair Programming),<br />Tíchhợpliêntục (Continuous Integration),<br />TDD (test-driven development),<br />v.v.<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />27<br />
    28. 28. Test Driven Development<br />Nguyêntắc: Test trướckhi Code<br />Đểviệc test điềuhướngquátrìnhpháttriển<br />Chiếnthuật<br />Make it Fail<br />Chỉgồmtoàn test fail<br />Make it Work<br />Đơngiảnnhấtcóthể<br />Make it Better<br />Táicấutrúc (code, design, test, documentation)<br />Believe in testing<br />
    29. 29. TDD Rationale<br />
    30. 30. 30<br />TDD StepsDemo vớiJUnit<br />Image by Excirial(http://upload.wikimedia.org/wikipedia/en/9/9c/Test-driven_development.PNG)<br />
    31. 31. Pair Programming<br />31<br /> Hai người chia sẻ 1 máytính, cùng code<br /> 2 vai: Driver& Navigator:<br />Driver thườngkhôngthấy “big picture”<br />=> Driver nên“tránhxa keyboard”<br />Navigator dùng “pattern-matching problem solving “ => manglạihiệuquả<br />
    32. 32. Mở: “Bà con” của Scrum<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />32<br />eXtreme Programming<br />Kanban<br />AgileUP<br />TDD<br />Crystal Clear<br />BDD<br />
    33. 33. Hỏi-Đáp<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />33<br />
    34. 34. Thamkhảo<br />Ken Schwaber & Jeff Sutherland, Scrum Guide, Scrum.org<br />Pete Deemer, Gabrielle Benefield, Craig Larman & Bas Vodde, Scrum Primer, GoodAgile.com <br />HanoiScrum.net<br />AgileVietnam.org<br />ScrumAlliance.org<br />AgileAlliance.org<br />9/23/2011<br />Làm việc tốt hơn với Scrum<br />34<br />
    35. 35. 9/23/2011<br />Làm việc tốt hơn với Scrum<br />35<br />Chânthànhcảmơn!<br />Hãykếtbạnvới Scrum <br />

    ×