what is agile and how does it work with testing

8
WHAT IS AGILE AND HOW DOES IT WORK WITH TESTING? WHAT IS AGILE? BASIC PRINCIPLES HOW DOES TESTING FIT?

Upload: tony-barber

Post on 14-Apr-2017

29 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: What is Agile and how does it work with Testing

WHAT IS AGILE AND HOW DOES IT WORK WITH TESTING?

WHAT IS AGILE?

BASIC PRINCIPLES

HOW DOES TESTING FIT?

Page 2: What is Agile and how does it work with Testing

WHAT IS AGILE?

• AGILE IS A TERM FOR A DEVELOPMENT LIFECYCLE USED TO DELIVER

CHANGE QUICKLY

• IT IS A FLEXIBLE WAY OF WORKING THAT ALLOWS THE CHANGE TO

EVOLVE AS IT PROGRESSES

• IT CAN RAPIDLY INTRODUCE SMALL INCREMENTAL CHANGES WHICH CAN

BE REVISED QUICKLY IF UNSUITABLE

• HOWEVER

• IT IS RESOURCE INTENSIVE

• REQUIRES CONSTANT COMMUNICATION AND DECISION MAKING

• DOCUMENTATION STILL NEEDS TO BE PRODUCED AT THE END

Page 3: What is Agile and how does it work with Testing

BASIC PRINCIPLES

• EVERYONE MUST KNOW WHAT THEIR ROLE AND RESPONSIBILITIES

ARE.

• EACH DAY EVERYONE NEEDS TO BE CLEAR ON WHAT THEY NEED TO

DO, WHAT ARE THE PRIORITIES.

• DEVELOPMENT SPRINTS MUST BE TIME BOXED. DEVELOPMENT AND

DEFECT FIXING WILL OCCUR IN PARALLEL AND MUST BE FACTORED IN

• SOMEONE MUST HAVE THE AUTHORITY TO CONFIRM IF A CHANGE IS

SUITABLE (PRODUCT OWNER).

• THE TEAM NEED TO THINK AS MUCH ABOUT HOW A CHANGE CAN BE

TESTED AS TO HOW IT CAN BE DEVELOPED

• THE VOLUME OF CHANGE NEEDS TO BE REALISTIC

Page 4: What is Agile and how does it work with Testing

HOW DOES TESTING FIT?

AS WITH ANY CHANGE LIFECYCLE THERE ARE DIFFERENT ASPECTS TO

TESTING. THIS COVERS THE GENERAL AREAS;

• FUNCTIONAL TESTING OF THE CHANGE

• DONE BY TESTERS IN THE TEAM WORKING WITH THE DEVELOPERS AND

BUSINESS ANALYSTS

• REQUIRES A SUITABLE ENVIRONMENT AND DATA THAT CHANGES CAN BE

DEPLOYED QUICKLY TO.

• CAN BE COMBINED WITH BUSINESS / USER ACCEPTANCE TESTING

UNDER THE RIGHT CIRCUMSTANCES

Page 5: What is Agile and how does it work with Testing

HOW DOES TESTING FIT?

• REGRESSION TESTING

• AFTER EACH ITERATION (EXCEPT THE FIRST) REGRESSION TESTING NEEDS

TO BE UNDERTAKEN TO ENSURE SUBSEQUENT CHANGES DON’T

INTRODUCE NEW DEFECTS

• IDEALLY SHOULD BE AUTOMATED TO REDUCE TIME REQUIRED TO

UNDERTAKE

• ALL PREVIOUS ITERATIONS SHOULD BE REGRESSION TESTED AT THE END

OF EACH ITERATION

• NON FUNCTIONAL TESTING

• SIMILAR TO REGRESSION TESTING NEEDS TO BE UNDERTAKEN AFTER

EACH SPRINT, IN PARALLEL TO NEW SPRINTS

Page 6: What is Agile and how does it work with Testing

HOW DOES TESTING FIT?

• INTEGRATION TESTING

• INITIALLY TESTED AS PART OF THE SPRINT, IN TERMS OF ENSURING THE

CHANGE INTEGRATES CORRECTLY

• SHOULD ALSO BE UNDERTAKEN AFTER A SPRINT TO ENSURE THE

CHANGE DOES NOT IMPACT OTHER SYSTEMS

• OPERATIONAL ACCEPTANCE TESTING

• MUST STILL BE UNDERTAKEN PRIOR TO ANY CHANGES BEING DEPLOYED

INTO PRODUCTION.

• THIS SHOULD ENSURE THE CHANGES DO NOT BREAK ANYTHING IN

PRODUCTION

Page 7: What is Agile and how does it work with Testing

OPTIONS?

• WHERE POSSIBLE AUTOMATE AS MUCH AS YOU CAN. THIS WILL

REDUCE ANY EFFORT AROUND REWORK, BUT CAN BE EXPENSIVE

• NON FUNCTIONAL TEST SHOULD BE UNDERTAKEN ON FROZEN CODE

SO ONCE NFT AND OAT HAS BEEN UNDERTAKEN NO FURTHER

CHANGES SHOULD BE APPLIED TO THAT CODE

• YOU DON’T NEED TO COLLOCATE TEAMS BUT THEY MUST HAVE

DEDICATED LINES OF COMMUNICATION, SUCH AS INSTANT

MESSAGING OR VIDEO CONFERENCE

Page 8: What is Agile and how does it work with Testing

CHALLENGES?

• SCOPE CREEP CAUSING ITERATIONS TO BECOME LONGER. PRIORITISE

THE CHANGES AND DESCOPED FOR LATER ITERATIONS

• NOT HAVING DEDICATED RESOURCES CAN RESULT IN DELAYS AND

WASTED TIME AND EFFORT

• ASSUMING NO DOCUMENTATION. DOCUMENTATION MUST BE

PRODUCED SO YOU HAVE A BASELINE FOR ANY FUTURE PROJECTS TO

START FROM

• JUST FOCUSING ON FUNCTIONAL TESTING AND FORGETTING

INTEGRATION, REGRESSION AND NFT