08 April 2016

Quality Management At Sapient

Quality Management At Sapient
Sapient|Approach emphasizes on quality delivery being the responsibility of each team member. Our processes and tools are geared towards enabling each team member in ensuring quality of their respective deliverables.
The guiding principles of Sapient’s Quality Management approach are to “make quality a way of life” and to “catch defects as early as possible”. To this end, our QM approach includes industry best practices for Quality Planning, Quality Assurance, Quality Control and Quality Improvement, and covers the entire life cycle of a product/software.
Below is a representation of the focus areas of our Quality Management approach: 
Test Driven Development: Test Driven Development (TDD) is a technique whereby developers code unit tests first. The tests determine what system code needs to get written. Using this technique ensures that there is unit test coverage for each functionality that gets developed and that there are no system code changes unless there is a failing test case. This technique also enables us to develop functionality in incremental steps and refactor as we go along, always ensuring that the developed code is of good quality. This leads our teams to maintain an exhaustive suite of automated unit tests using the best practices tools available.

Continuous Delivery: The design principle behind Continuous Delivery (CD) is to that “every change is releasable”. Continuous Delivery is about having a deployment pipeline and a team that work towards ensuring that the software is releasable at any point of time. This technique enforces discipline within the software project team and ensures that the continuous integration and deployment infrastructure required is setup - including version control, automated builds, automated unit, functional, acceptance and regression testing, and builds packaging. Sapient has a dedicated Delivery Agility team that has expertise in the industry leading tools that enable us to setup a continuous delivery framework for a project team.

Automation: Automation is an integral part of our delivery approach and helps increase efficiency by automating repeatable tasks. Listed below are some of the candidates for automation:
·         Test Automation: The design principles built into our test automation framework are to “Support multitude of test cases without linearly increasing level of effort” and to “Make the framework keyword driven, extensible and modular”.  Test Automation using industry best practices and tools enables our teams to shorten testing times, ensure consistency, allow for extensibility and improve predictability.
·         Process Automation: Our teams always look for opportunities to automate repeatable components of project processes. Our teams have also built excel macro-based program dashboards that present a snapshot of project status on demand.

Full Life Cycle Quality Assurance: Each project team has dedicated Quality Assurance personnel embedded within, that ensure quality of deliverables throughout the lifecycle of the project. Test lead and QA engineers work in parallel with the developers, business analysts from the beginning of the project until final acceptance. Test lead is responsible for test strategy plan (including tool selection) and its execution. Testers are responsible for designing, executing and automating functional/integration/system tests.

These focus areas, along with quality gates and continuous improvement enabled by our iterative development approach ensure that quality is given prime consideration throughout the project lifecycle.


No comments:

Post a Comment