Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Working Agile with Scrum and TFS 2013


Published on

Published in: Technology, Business
  • Login to see the comments

Working Agile with Scrum and TFS 2013

  1. 1. Egyptian Automation Testers Work Agile with Scrum and Visual Studio Online 2013 Moataz Nabil Senior QC Engineer | Cequens | Egypt MCSD - MCTS - ISTQB Certified @moatazeldebsy |
  2. 2. Part 1 Introduction to Agile
  3. 3. Project Management Methodologies
  4. 4. Waterfall Model Requirement Analysis System Design Implementation Testing Deployment Maintenance
  5. 5. Every Project Story The customer knows nothing The developer thinks about new technologies The PM thinks about the deadline The analyst thinks he knows everything He got ―everything‖ from the customer, who knows ―nothing‖ ;-)
  6. 6. Every Project Story The developer: ―I can do it in 3 months‖ The PM: ―You’ll do it in 2 months‖ The project takes 4-5 month
  7. 7. Every Project Story 1st Month: Everybody is happy 2nd Month: Customer sees ―something‖ 3rd Month: Customer makes tons of changes The developer screams The project manager blames …. ??? Last Month: Everybody is at office till 8-10 PM Every DAY: The PM: Developer, you’re not done yet? LOSER!!
  8. 8. Why does it happen? Requirements are not fully understood at the beginning of the process. Requirements change during the process. The process becomes unpredictable when new tools and technologies are used.
  9. 9. Other Methodologies CMMI Agile
  10. 10. Agile Who’s this ???
  11. 11. Agile Manifesto Individuals and interactions Over processes and tools Working software Over comprehensive documentation Customer collaboration Over contract negotiation Responding to change Over following a plan
  12. 12. Agile Methodologies eXtreme Programming (XP) Pair Programming Test Driven Development Continuous Integration Refactoring, Coding Standards, etc… Scrum
  13. 13. Scrum??
  14. 14. Prerequisites Small Team Good People Common Sense
  15. 15. SCRUM provide a structure of Scrum Roles Scrum Process Artifacts
  16. 16. Roles Product Owner Scrum Master Scrum Team
  17. 17. Scrum Roles: Product Owner Possibly a Product Manager or Project Sponsor That’s what we call an ―analyst‖ Marketing Internal Customer etc. Not a technical guy, BUT ….
  18. 18. Scrum Roles: Scrum Master Responsible for enacting Scrum values and practices Manages the sprint meeting Does the sprint reporting Typically a Project Manager or Team Leader
  19. 19. Scrum Roles: Scrum Team Cross-functional QA Developers UI Designers Architect etc 5-10 members
  20. 20. Scrum Process Backlog Refinement Sprint Retrospective Sprint Sprint Planning Daily Scrums Sprint Review All Scrum Meetings are facilitated by the ScrumMaster, who has no decision-making authority at these meetings.
  21. 21. Backlog Refinement Meeting Most Product Backlog Items (PBIs) initially need refinement because they are too large and poorly understood. Teams have found it useful to take a little time out of Sprint Execution — every Sprint — to help prepare the Product Backlog for the next Sprint Planning Meeting. In the Backlog Refinement Meeting, the team estimates the amount of effort they would expend to complete items in the Product Backlog and provides other technical information to help the Product Owner prioritize them.
  22. 22. Sprint A certain period of time with specific deliverables Lasts for 2-4 weeks – NO MORE NO LESS
  23. 23. Sprint Before Start: Sprint Planning Starts with Sprint Backlog Choose highest priority items remaining in product backlog Ends with Deliverables New Features Developed / Old Bugs Fixed Sprint Zero and Sprint One might deliver documents! Architecture Documents UI Prototype After End: Sprint Review Product Demonstration Product Owner declares what’s done (Optional) Measure velocity Stakeholder feedback
  24. 24. Sprint Daily Meetings What did you do Yesterday ? What will you do today ? Do you have any problems ?
  25. 25. Sprint Daily Meetings Stand up Meetings 15 Minutes Max. Well, don’t exceed 30 minutes at least Entire Team + Scrum Master
  26. 26. Sprint Review Meeting After Sprint execution, the team holds a Sprint Review Meeting to demonstrate a working product increment to the Product Owner and everyone else who is interested. The meeting should feature a live demonstration, not a report. After the demonstration, the Product Owner reviews the commitments made at the Sprint Planning Meeting and declares which items he now considers done.
  27. 27. Sprint Retrospective Meeting Each Sprint ends with a retrospective. At this meeting, the team reflects on its own process. They inspect their behavior and take action to adapt it for future Sprints.
  28. 28. Time-Boxes The Time-Boxes in Scrum are the: Release Planning Meeting Sprint – 2 – 4 weeks Sprint Planning Meeting – What and how, each 4 hours for one month sprints Daily Scrum – 15 minutes Stand up Sprint Review – 4 hours for one month sprints Sprint Retrospective 3 hours
  29. 29. Artifacts Product backlog Sprint backlog Burndown Chart
  30. 30. Product Backlog List of work items during the entire project
  31. 31. The Product Backlog represents everything necessary to develop and launch a successful product. It is a list of all features, functions, technologies, enhancements, and bug fixes that constitute the changes that will be made to the product for future releases.
  32. 32. Product backlog item Workflow & Characteristics Independent Negotiable Valuable Estimable Small Testable
  33. 33. Sprint backlog
  34. 34. Sprint backlog • At the beginning of each Sprint, the Product Owner and team hold a Sprint Planning Meeting to negotiate which Product Backlog Items they will attempt to convert to working product during the Sprint. • The Product Owner is responsible for declaring which items are the most important to the business. The team is responsible for selecting the amount of work they feel they can implement without accruing technical debt. The team ―pulls‖ work from the Product Backlog to the Sprint Backlog.
  35. 35. Definition of Done Designed Refactored Coded Code review Design review Unit tested Functional tested Unit test harness Integration tested Regression tested Performance tested Security tested User Acceptance tested
  36. 36. Task Dashboard
  37. 37. Burndown Chart
  38. 38. Practices Test early and often Build and deploy continuously Acceptance Test Driven Development Emergent Architectures Refactor Test Driven Development Agile Database Development Pair Programming
  39. 39. Practices Business Analyst Gather Requirements Analyze Requirements Create Product Backlog Project Manager Work Breakdown Monitor Tasks Task Control Decisions Architect Conceptual Design Logical Design Physical Design Developer Generate Code Write Custom Code Analyze and Review Code Check-in Tester Create Test Cases Run Tests File Bugs Verify Bug Fixes Report Project Status
  40. 40. Part 2 ALM With Visual Studio Online
  41. 41. Application Lifecycle Management Removing the impediments to continuous value delivery Continuous value delivery
  42. 42. TFS enables Visual Studio ALM Team Foundation Server Full lifecycle control for mission critical IT projects REQUIREMENTS Define • • Agile planning tools for stakeholder engagement Backlog management and capacity planning Develop • • Developer productivity enhancements Continuous stakeholder feedback Operate • • • Automated build-deploy-test Detailed Reporting and Metrics Strong integration with Microsoft on-premises offerings WORKING SOFTWARE
  43. 43. Visual Studio Online 2013 Cloud-hosted application lifecycle management
  44. 44. What is Visual Studio Online?
  45. 45. Plan details and subscriber benefits Free Plan for up to 5 users Included for eligible MSDN subscribers:       Unlimited number of projects Version control Work item tracking Agile planning tools Build (limits apply) Cloud Load Testing (limits apply) Additional information at
  46. 46. Team Foundation Service • • • • • • • Source code and work items are accessible from any modern web browser Integrates with Visual Studio and Eclipse, includes command-line client for Xcode / other developer tools Create an account in minutes, set up continuous integration in a few easy steps Data is stored in the cloud, making server configuration a thing of the past Request and manage stakeholder feedback from anyone with a Live ID/Microsoft account From C# to Python, from Windows to Android, developers can use a variety of languages and target a variety of platforms Use the tools your development teams are familiar with today – Team Foundation Service helps developers focus on what they do best: building great applications
  47. 47. Team Foundation Service capabilities • • • • • • • • • Store and version control code in any language Integrates with Visual Studio and Eclipse, includes command-line client for Xcode / other developer tools Connectors to sync with Git repositories Work item and bug tracking Backlog management and capacity planning - Scrum, Agile, and CMMI project templates Kanban board and task boards Request and manage stakeholder feedback from anyone with a Live ID/Microsoft account Build services will build and run unit tests in the cloud (depends on project type) Supports deployment of web sites and web / worker roles directly to Azure as part of build
  48. 48. A consistent experience for developers Using Visual Studio Using Eclipse
  49. 49. Uploading code is simple Check In Once your developer tool is connected to Team Foundation Service, uploading code is easy. Gated check-in and code merging are also supported.
  50. 50. Consistent web UI Home shows a Burndown chart, task tracking and notifications
  51. 51. Demo Working with Agile and VS Online 2013
  52. 52. Contact @moatazeldebsy Egyptian Automation Testers
  53. 53. Thank you ;)