Quality Assurance as Service – QAAS
Like all areas of software development, the one traditionally known as Quality Assurance (QA) has evolved over time and we’ve continued to adjust our approach and process to support this change. Here’s an update.. We’ve been able to create a framework that strikes the right balance between process and progress, allowing us to set clear expectations without sacrificing flexibility: the four Es.
“Our QA is embedded, empowered, engaged & ever evolving”
Benefits of QAAS
- Improved ability to manage and prevent defects during production.
- Reduced rework and costs.
- Improved productivity.
- Sustained quality of deliverable throughout a project’s life cycle.
- Early detection and fixing of defects in a software life cycle.
- Maximized Quality of the project.
- Parallel Reporting
- Flexible Testing Services
- Optimized Software Standards
Industry Standard QA Process
We follow standardized iterative quality assurance process to achieve high quality levels. We divide its in A, B and C Plan , Create and Execute. Refer to the workflow below
A (Create Test Strategy)
- Identify components/products to be tested.
- Select the method of testing for specific component.
- Prepare a test plan and submits the plan to be integrated with project plan.
- Archive Test plan.
B ( Create Test Plan/ Design)
- Create test scenarios
- Create manual test cases
- Automate test cases
- Document & archive test cases
C (Perform Tests)
- Execute Test cases
- Analyze results if it passes, result is documented. If it fails then bug/defect is reported to respective department, QA team keeps track of the fixes and verifies them.
Following are the different types of testing we apply
- Smoke Test Planning
- System/Functional Test Planning
- Integration Test Planning
- Minimum Acceptance Planning: MAT
- Security & Ethical hacking Tests
- Performance Test planning
- Regression Test Planning
- Negative Test Planning
- Browser Compatibility Test
- Shipment Assurance Test Planning: SAT
- Progression Test & UAT
Following metrics would be developed and maintained during testing activities.
- Acceptance Test 1 Results
- Test Results – Release 1
- Test Results – Release 2
- Test Results – Release 3
- Performance Test 1 Results
- Regression 1 & 2 Results
- Test Results – Release v0.4
- Technical Test Results
This sections describes what types of test documents would be maintained, what are the relationships between these documents and what would be the contents of each document.
Following documents would be developed during the project development life cycle.
- Test Plan
- a) Test plan identifier;
- b) Introduction;
- c) Test items;
- d) Features to be tested;
- e) Features not to be tested;
- f) Approach;
- g) Item pass/fail criteria;
- h) Suspension criteria and resumption requirements;
- i) Test deliverable;
- j) Testing tasks;
- k) Environmental needs;
- l) Responsibilities;
- m) Staffing and training needs;
- n) Schedule;
- o) Risks and contingencies;
- p) Approvals.
- Test Design Specification
- a) Test design specification identifier;
- b) Features to be tested;
- c) Approach refinements;
- d) Test identification;
- e) Feature pass/fail criteria.
- Test Case Specification
- a) Test case specification identifier;
- b) Test items;
- c) Input specifications;
- d) Output specifications;
- e) Environmental needs;
- f) Special procedural requirements;
- g) Intercase dependencies.
- Test Procedure Specification
- a) Test procedure specification identifier.
- b) Purpose;
- c) Special requirements;
- d) Procedure steps.
- Test Log
- a) Test log identifier;
- b) Description;
- c) Activity and event entries.
- Test Incident Report
- a) Test incident report identifier;
- b) Summary;
- c) Incident description;
- d) Impact.
- Test Summary Report
- a) Test summary report identifier;
- b) Summary;
- c) Variances;
- d) Comprehensive assessment;
- e) Summary of results;
- f) Evaluation;
- g) Summary of activities;
- h) Approvals.
- Test Item Transmittal Report
The top priority of our QA department is to provide the best quality out of the project to achieve this we work build by build in iterative manner, refer to the tabular details below.
Different kind of testing techniques are used at each level to meet the need of the clients.
In build 1 Minimum Acceptance testing 1 MAT is done which checks weather the software qualifies the minimum requirement or not after that Functional Testing in which detailed software is tested including every bit of it and defects/ bugs are recorded and reported.
2nd iteration for acceptance and functional testing is done .after successful completion we move on to integration testing which involves all the newly integrated modules. Confidentiality of the information is the prime most when it comes to Quality assurance; Security testing is especially focused when it comes to sensitive data such as Banks information. To keep the security factor high software has to undergo with our strong security testing which involves series of Vulnerability checks.
- Password Cracking
- URL Manipulations through http GET methods
- Checking for cross site scripting.
- SQL Injections
If application passes above checks we call the software a secured one.
Another iteration of acceptance, functional, integration, security and regression testing is performed. At build three negative testing is done to see the software behavior when invalid data is provided to the software, after that software goes under load testing which determines its capacity to handle bulk data and bulk users at the same time.
The final build in which 80 percent of the quality is already achieved now regressions are done including all the modules that have ripple effects, each module is tested again to see all is working properly and bugs are fixed. After that once again application is tested (Shipment Assurance Testing) to assure the quality product that is going to be delivered to client
QA Team & Roles
QA Manager – Responsible for the strategic implementation of testing, resource management and the bureaucracy associated with their team and keeps an eye throughout the testing activity
Senior QA Engineer/ Test Lead – This person will be responsible for the design of the test approach and supervise the successful execution of quality assurance process.
Intermediate QA Engineer – this person will create test scenarios for defined areas, based on a test design created for them and execute the test cases
Junior SQA Engineer – this person assist intermediate QA Engineers to run some basic test cases only that have been created by someone else.