What is Agile and how does it work with Testing
-
Upload
tony-barber -
Category
Documents
-
view
29 -
download
2
Transcript of 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?
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
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
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
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
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
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
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