| |August 20209mode. True defect prevention can be achieved only when QA starts left, not just by a leftward shift. Termed DevQA integration or Quality Assistance, this new model focuses on streamlining the devel-opment process itself and creat-ing tools and environments that outline bugs or defects that can be avoided. In short, it is all about defect prevention. DevQA integration advocates an enhanced model where the role of the SDET (Software Development Engi-neer in Test) moves beyond just crea-tion and execution of unit tests. The SDET will now be involved in the creation of:· Unit tests and TDD (test driven development) scripts which will inte-grate with entire solution· Stubs and services around the application in development· Methods for synthetic data gen-eration through services/back-end automation· Definition of testing toolsets/environments early in the lifecycleUnlike the traditional notion of testing where QA specialists are ac-tive only after development, SDETs work in tandem with developers and understand the underlying code, thereby enabling testing at the unit level and extending it to the function-al level with acceptance and product performance testing. Significant benefits of enhancing the role of SDET across the lifecycle will be evident only in the develop-ment and operations side of the life-cycle. The efficiencies gained during the development phase creates in-direct, yet significant impact on the QA space. Disruptions by Behavior-driven and Test-driven development (BDD and TDD):Developers often commence devel-opment with ambiguous test expec-tations since requirements tend to be loosely structured or unstructured at the beginning. The use of non-stand-ardized methods of defining require-ments, interdependencies, work-flows, business, and data rules often result in improper and incomplete impact assessment, leading to modifi-cations and changes after many stages of development, or during the first stage of testing. The DevQA model disrupts the existing practice with the introduc-tion of BDD and TDD implemen-tation right from the requirements stage. Feature analysts are injected into the requirements phase to define BDD scripts from user stories and SDET is introduced in the develop-ment stage to define TDD scripts from BDD scripts. The most significant benefit of a BDD+TDD approach is the overall reduction in cost of quality by:· Structured and automatable script definitions from both require-ments/test design automation feed-ing into execution automation.· Early detection of defects in re-quirements and test.· Facilitating early UAT (user-ac-ceptance testing) due to elaboration of requirements at a granular level. Be it in an exclusively digital or legacy context, or in the more prev-alent digital front-end and legacy back-end model, DevQA integration will help increase efficiencies tre-mendously. As the entire process of validation starts left and plays a more strategic role by incorporating BDD when defining features, development in itself becomes more accurate, thereby setting the stage for effective defect prevention.The subsequent BDD+TDD ap-proach for all subsequent stages, new initiatives, and enhancements, fur-ther strengthens the SDLC, and im-plementation by a skilled SDET with development capabilities, unit and functional testing, as well as perfor-mance testing, enables organizations to implement the ideal Agile setup that truly prevents errors. Kishan Sundar
< Page 8 | Page 10 >