We take every care to ensure that the software we build satisfies
our client's requirements. The only way to ensure that is to perform
quality assurance throughout the software lifecycle. We typically involve
a lead quality engineer in the early phases of a project to participate
in requirements elicitation and analysis, to ensure that our quality
assurance team understands the business objectives and the detailed
requirements. This understanding enables the team to develop a comprehensive
quality assurance plan for the project that includes the following elements:
- Test Plan and Test Cases - We develop a complete
testing plan based on the requirements. The test plan includes unit,
integration and system testing. The test plan includes all the test
cases that typically cover functionality, error handling, performance,
scalability, and fail over, among other required tests. The test plan
and test cases are validated with the client during the early stages
of a project, and are refined and enhanced during the downstream activities
(detailed design and coding).
- Traceability Matrix - During the software lifecycle
we trace the requirements to the design components, to the code modules,
and to the test cases. This enables us to track changes to the requirements
and to validate the test plan covers all requirements and all design
elements.
- Peer reviews of designs and code - Depending on
the size and duration of a project, we conduct design and code reviews
with architects and engineers from outside the project. These reviews
provide an opportunity for valuable feedback and independent perspective.
- Acceptance Plan - At the beginning of each iteration
of a project, we develop a detailed acceptance plan that describes
all the expected deliverables during or at the end of the iteration.
The client signs off on the acceptance plan to indicate agreement
on the expected results.
The quality engineers staffed on a project are responsible for implementing,
tracking and adjusting the quality assurance plan to make sure that
it is completed successfully by the delivery date. They often use test
automation tools to help them in conducting the required testing and
establishing a complete regression test suite for the product that is
as automated as possible.
If
you like to learn more about ISHIR, please contact us |