The document discusses the agile (scrum) development process, highlighting its advantages over traditional models, such as flexibility and iterative progress through 'sprints'. It details the roles within the scrum framework, including the product owner, scrum master, and team members, while also emphasizing the changing role of testers who collaborate with cross-functional teams. Key success factors for agile testing include comfort with iterative development, strong communication skills, and the ability to adapt to rapid changes.
Activities in Agiletesting Changing role of tester Key success factors Q&A Agile development process
3.
Activities in Agile testing Changing role of tester Key success factors Q&A Agile development process
4.
Traditional Development Requires knowing everything upfront Fixed requirements, estimated time and resources Freezing requirements and controlling changes from early stage Status measured at life cycle phases Working software delivered only at end of development cycle
5.
Traditional Model LimitationsImpossible to anticipate and estimate all tasks early in big projects Difficult to define requirements precisely without customers getting Hands On feel of product Changes later in the development cycle could be expensive to handle Different roles engaged in different phases thereby losing continuity across development cycle Working software delivered only at end of cycle
6.
The Agile ManifestoSource: www.agilemanifesto.org Process and tools Individuals and interactions over Following a plan Responding to change over Comprehensive documentation Working software over Contract negotiation Customer collaboration over
7.
Popular Agile MethodologiesScrum Project Management framework Crystal Clear Focus on people and not processes or artifacts Extreme Programming Dev centric, focus on reducing cost of change Feature Driven Development Dev based on client valued functionality Lean Applying lean manufacturing practices to SW engg. We would explore Scrum in detail today
Scrum Characteristics Productprogresses in a series of month-long “sprints” Requirements are captured as items in a list of “product backlog” No specific engineering practices prescribed Uses generative rules to create an agile environment for delivering projects Self-organizing teams
10.
Sprints Scrum projectsmake progress in a series of “sprints” Analogous to Extreme Programming iterations Typical duration is 2–4 weeks or a calendar month at most A constant duration leads to a better rhythm Product is designed, coded, and tested during the sprint
Roles Product OwnerDefines features and release plans Prioritize features every iteration as needed Accept or reject work results Scrum Master Responsible for enacting Scrum values and practices Ensure that the team is fully functional and productive Enable close cooperation across all roles and functions Team Cross-functional:Programmers, testers, user experience designers, etc. Members should be full-time Teams are self-organizing
Sprint planning meetingSprint prioritization Analyze and evaluate product backlog Select sprint goal Sprint planning Decide how to achieve sprint goal (design) Create sprint backlog (tasks) from product backlog items (user stories / features) Estimate sprint backlog in hours Sprint goal Sprint backlog Business conditions Team capacity Product backlog Technology Current product Sprint planning
16.
Sprint Events Daily scrum meeting Daily review meeting for 10-15 mins Status review and not for problem solving All sprint team members participate Sprint review Demo of new features to customer/product owner Team presents work accomplished during the sprint All major stakeholders participate Sprint retrospective Periodic post mortem to review what's working and what's not Done after every sprint All major stakeholders participate
Product backlog A list of all desired work on the project Ideally expressed such that each item has value to the users or customers of the product Prioritized by the product owner Reprioritized at the start of each sprint This is the product backlog
Activities in Agiletesting Changing role of tester Key success factors Q&A Agile development process
22.
QA Activities in Agile Testing Provide effort estimates during release and sprint plan Collaborate with business analysts and developers in defining requirements and designs Prepare test conditions based on design discussions Just in time test cases only for current sprint and not entire project Execute test conditions and report issues Usually, test driven development Automate feature specific test cases Report status, impediments in daily standup meetings Participate in Sprint review meeting
23.
Activities in Agiletesting Changing role of tester Key success factors Q&A Agile development process
24.
Changing role oftester Waterfall Agile Work in homogeneous team of testing pro ’ s Work in cross functional team of biz analysts, developers, testers etc. Role predominantly involves testing Expanded role involves design def/review, write/review code and testing Quality Cop: Last line of defense for Software Quality Quality Partner: Quality responsibility of entire sprint team Test cases prepared from well documented req ’ s and designs Test cases prepared from user stories, req & design discussions, minimal documentation. Clearly defined entry and exit criteria for testing phase Testing is collaborative effort with other functions, no phase gates
25.
Changing role of tester Agile Test execution after code complete for project, back loaded Iterative testing by feature and not entire project, evenly spread Waterfall Testing essentially Top Down – Business flows, Integration points and then units Testing essentially Bottom Up – Units, Integration points and then flows Minimal involvement in Unit testing Active participation in unit testing System level Automation test scripts, after code is stabilized Automation from unit testing level, as code is getting built Report progress by testing phase Report progress by Feature complete rather than testing completion
26.
Activities in Agiletesting Changing role of tester Key success factors Q&A Agile development process
27.
Key success factors Comfort in incremental and Iterative development Test in small packages but do not lose sight of big picture Comfortable with speed and just in time delivery Design and Coding skills At minimum, good analytical and review skills Handling Abstraction Requirements and designs are evolved rather than assumed to be an input
28.
Key success factors Minimal reliance on documentary support Rely on meetings and interactions for requirements and design specifications rather than structured documents Interpersonal skills Ability to get things done in a group which is self organized Communication and Collaboration skills Focus on project deliverable and not phase deliverable