How to live with agile - Aware in BugDay Bangkok 2012
“Quality is the link to Success”
Agenda • Disadvantage of traditional SDLC • What is Agile? • Agile vs Conventional Testing • Scrum • The soft skills for a Scrum Team • Scrum Activities • Case Study • Benefits of Agile
Disadvantage of traditional SDLC Always Delayed Deployment to real time world, impacting customers business. New Requirements and Change Requirements are not considered in immediate builds. Customer’s feedback and inputs on AUT are possible at a very later stage of SDLC. Incomplete Documentation, Complete documentation is a complicated and a time consuming task.
What is Agile? A group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.
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
The way application is made Growing of application Waterfall Req. Code + UT Test Release Time Agile Growing of application feedback & change Growing of application feedback & change Growing of application UT + UT + UT + Req. Test Demo Req. Test Demo Req. Test Demo Code Code Code Iterative functionality
Difference between Agile and Conventional Testing Non- Agile Agile Requirement Specifications SRS, large effort to get it all Just-Enough, specified up front Just-In-Time Release Cycle Typically 6-18 Months 2-3 months release, 1- 4 wks Iterations Product An often bloated product that is The best product according to still missing customers features (i.e. rejected change own prioritization, incorporating requests or learning features de-scoped to meet from actual use. deadlines) Relationships Contractual. Collaborative. ROI Revenue stream initiation and Value is generated early, as soon value creation are as the minimum key feature set delayed until the lowest priority is delivered. features are Smaller projects mean lower delivered. cost per project. More projects are delivered. Greater return on investment.
Types of Agile Agile Unified Process (AUP) Crystal Clear Dynamic Systems Development Method (DSDM) Essential Unified Process (EssUP) Exia Process (ExP) Extreme Programming (XP) Feature Driven Development (FDD) Kanban (development) Open Unified Process (OpenUP) Scrum
Scrum Basic Roles: The Product Owner, who is responsible for the business value of the project; the Scrum-Master, who ensures that the team is functional and productive; and the self-organized team. Ceremonies: the sprint planning meeting, daily roles, “Scrum is made up of three three ceremonies scrum meeting, and sprint review meeting and three artifacts.” Artifacts: the product backlog, the sprint backlog, and a burn-down chart
Estimating Size with Story Points • Story Points Are Relative – Raw value not important but Relative is. 3 1 2 – Two common ways to get started Pick the smallest story then assign 1 point Pick the medium-size story then assign 5 points
Estimating Size with Story Points • Velocity – A team’s rate of progress. – Total story points completed during the iteration. 3 3 completed 5 5 not finished 3 3 not started 2 2 IT1 IT2 Velocity = 13 Velocity = 8 1 week 1 week – Size = 100 points & Velocity = 10 & 1-Week Iteration, we need 10 iterations, which equals 10 weeks on the calendar.
Scrum meeting board Total Transparency At any time the status of the project is visible for everybody
Dinning table Multi disciplinary teams are located on one “Dinning table” (PM/BAs/QAs/DEVs)
Sprint Planning and defect fixing Iteration 1 Iteration 2 Iteration N F1 F2 F3 Defects F4 F5 F6 Defects F7 F8 F9 Defects Product Backlog F ST ET RT AT ST ET RT AT F F F Defects Re-prioritization for Re-prioritization for Iteration 2 Iteration N Different Types F4 F5 F6 Defects F7 F8 F9 Defects F – Feature D- Defect of Testing ST – System Testing for Each ET – Exploratory Testing Iteration RT – Regression Testing AT- Acceptance Testing
Project Status Total Transparency At any time the status of the project is visible for everybody
Agile Tools Tools Open source Tools Commercial Tools