Top Banner
Load and Performance tests in Agile Scrum framework S Ravindra S R V Subrahmaniam Siemens Limited An approach for complex product development context Scrum Gathering India Regional 2013
26

Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

May 24, 2015

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Load and Performance tests in Agile Scrum

framework

S Ravindra

S R V Subrahmaniam

Siemens Limited

An approach for complex product development context

Scrum Gathering India Regional 2013

Page 2: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 2

Siemens

Siemens a MNC with over 400000 people in more than 150 countries

Siemens in India over 18000 people across locations

Over 5000 people in software development in India

Agile journey started in 2005

Today more than 45% of the projects following agile scrum

Basic Agile practices include: Time-boxed iterations, Continuous integration, test early & Self-organized, cross-functional teams

Page 3: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 3

Agenda

Context

Challenges

Discussion

Solution

Further actions

Page 4: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 4

New Product development – project context for our presentation

Enterprise grade

Not a typical web

application

Niche product

(domain / target

users / use cases)

Critical Non-

Functional

requirements

Multiple deployment

environments

Centralized communication platform for use by emergency

intervention forces

Operators in the Command center will use it for

communication with public and on-field intervention forces

Safety critical application - used in Public safety and fire

emergency situations

Platform integrates Analog fixed, ISDN, Analog radio,

digital radio (Tetra)

Integration of heterogenous technologies

Page 5: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 5

The Product : Communication platform

Touchscreen –

Thick client

application

Linux server Web server

IP PBX Digital & Analog Radio

Database

Gateways for different types of incoming /

outgoing calls

Voice traffic carried over IP

Page 6: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 6

Product Functionality

Client operator stations

Conference

Call forward

Make / Take calls

Send messages

Listen/talk in Radio

Hold/Unhold

Page 7: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 7

Agenda

Context

Challenges

Discussion

Solution

Further actions

Page 8: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 8

Uncertainty

over the release dates

Traditional waterfall methodology

Post code freeze, critical Load and Performance test defects are uncovered – which sometime require fixes

with high impact

The calendar duration for Load and Perfomance testing took 200% more time, compared to initial estimate

Technical challenges come to the fore much later in the project, when it is tested in a close to real environment

Challenging environment

Complex interplay of different technologies including Java, .NET, messaging platform over VoIP /SIP.

Dependencies with telecom

devices and equipments

Mixing audio from various streams and verifying for voice quality

Limited scope for test automation (using conventional tools) for this kind of a product

Multiple deployment environments

Technology Process

Uncertainty over Product quality. Management wanted to strengthen the tests given the criticality of the application

Page 9: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 9

Traditional delivery model

System test

Design

Coding

Unit tests

Functional tests

Requirements

Code freeze

Critical bugs identified

Related to: Long run stability

Load and Performance Environment Heterogenous end-to-end operations

Prolongs

Page 10: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 10

Nature of Load and Performance defects pose a challenge

Defects with high turn-around time

Occurs during long run

May require architecture fixes

Bug verification – again takes time

Fixes may have functional impact

Hard to reproduce

Defect occurrance does not follow a

pattern

Page 11: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 11

Agenda

Context

Challenges

Discussion

Solution

Further actions

Page 12: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 12

Agile Scrum is the right choice

Complex technology

New product & need for early

customer feedback

Positive Organizational mandate

Late testing needs to be avoided

Internal customer – less of contracting

hassles

Page 13: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 13

Agile Scrum is fit for purpose

Niche

Generic

Simple /

Homegenous

Complex /

Heterogenous

Do

main

Technical complexity

Page 14: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 14

Key considerations in defining a methodology within Sprint framework

Thick client

application, more susceptible to

stability issues

Used in emergency call centers. Zero tolerance for failure

Given nature of application, limited automation options

Device integrations are involved

Defect turnaround time high

Page 15: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 15

Framing Agile testing for a Product in Safety critical environment

Sprint Test

Limited feasibility

to do within Sprint

Testing for NFRs take

time

Accomodating the factors in the Agile test framework which is to be carried out within a Sprint is the critical decision

NFRs need to be

tested at earliest

Page 16: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 16

Sprint testing

IN Scope for Sprint Testing

User story working at a functional level

User story working at an end-to-end level

Horses for the courses

Load and Performance tests

Stability tests run over long duration in multiple environments

Complex concurrent workflows in a full load scenario

Exploratory tests

Negative tests

Production-like environment

To be handled out of Sprint

Page 17: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 17

Testing model practiced in the project

Sprint 1 Sprint 2

Functional tested package

Sprint 3 Dedicated

test phases

NFR test

The Sprint build is taken up for long running stability, load and performance tests,

multiple enviornment tests, exploratory tests and negative tests.

Defects

NFR test

.....

Four weeks

Product

Backlog

Page 18: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 18

Testing methodology adopted

Sprint Testing

Enable test

Monitor resource utilization patterns; Focus on tooling

Do tests where feasible – even if it is partial; Use test stubs where needed

Plan the tests which need to be run; actively collaborate with Product Owner

Bugs / tasks for forthcoming sprints

Early detection will enable certainty in product release schedules

Gather data

Perform test

Act on results

Page 19: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 19

Test Organization

Within Scrum teams

- Testers part of the Scrum teams

- Operationally reporting to Scrum Master; Officially reporting to Test Manager

- Apprisal, Competency development taken care by Test Manager

- Testers need to be good in inter-personal skills

- Testers need to be aware of white box techniques, interpretation of logs, configuring and setting up parameters etc.,

System test team

- Testers do not belong to Scrum teams

- Testers report to Test Manager

- Work on testing the software at System level and for non-functional requirements

- Diversity in terms of technical skills is key. Each tester has to be a stand-alone expert in a chosen technical area as the breadth of testing would typically involve multiple areas

Page 20: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 20

Other measures to foster Agile way of working

Management focus for moving towards Agile 1

Visibility of the project status and key metrics for all stakeholders 2

A possible dip in productivity initially and a rebound afterwards 3

Facilitating the transition with suitable trainings and coaching 4

Transition with new processes and tools, in tandem 5

Co-location and office layout to reflect the new work culture 6

Page 21: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 21

Benefits accrued..1

Team

Product

Methodology

Enhanced collaboration between the development and test teams

Less stress compared to fixing critical issues, late in the project lifecycle

Formulating Test organization for different test types

Re-skilling and Competency development

Riskier aspects of the Product tested upfront

Design refactoring for performance and stability is a continuous process

NFRs are given due focus - Enhanced visibility of the NFR related test cases to development and product teams

Product is as close to being production ready

Clear separation between the different levels of testing

NFR Tests planned and executed with due rigour without getting influenced by Sprint dynamics

Will support a move towards TDD

Compliance to schedule and lesser critical bugs after code freeze

Page 22: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 22

Defect turnaround rate improved by 20%

50% defects found early – i.e. During the Sprint testing

NFR test cycles reduced by 25%

15% less of critical and major defects

Benefits accrued..2

Page 23: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 23

Agenda

Context

Challenges

Discussion

Solution

Further actions

Page 24: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 24

Next improvements – to our project

Continous review

and

improvement of

tools &

techniques

Invest in developing an

automation framework at

end-to-end and

component Integration

levels

Use of White-box tools and techniques for Load and

Performance tests

Have specific user stories to improve performance

Enhance

Automation

Sprint development

Page 25: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

Slide 25

Agenda

Context

Challenges

Discussion

Solution

Further actions

Page 26: Sgin2013 scrumfromthe trenches-loadandperformancetestsinagilescrumframework-subrahmaninamravindra

S. Ravindra ([email protected]) S R V Subrahmaniam ([email protected])

Thanks for your attention