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?

Transcript of What is Agile and how does it work with Testing

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