Software quality assurance (SQA) applied throughout a project lifecycle aims to prevent the introduction of defects and provides a pervasive assessment of software quality that is confirmed during testing. The benefits include software with fewer latent defects, resulting in reduced effort and time during testing and maintenance; a higher reliability resulting in greater customer satisfaction; reduced maintenance costs, and a reduction in the overall lifecycle cost of software. Software quality is a complex mix of factors that can vary across different applications, organizations, and customers. However, the fundamental activities required to achieve software quality encompass procedures for the effective application of methods and tools, formal technical reviews, testing strategies and techniques, procedures for change control, procedures for assuring compliance to standards, and measurement and reporting mechanisms. Methods and tools are employed according to the processes defined by a software methodology and enhance software quality by providing uniform techniques and predictable results. Formal technical reviews serve as a filter for the software development process, purifying the analysis, design and coding activities, and removing defects while they are relatively inexpensive to find and correct. Applied periodically, they aim to discover defects in function, logic and implementation, and validate that the software satisfies requirements ensuring code has been developed in a uniform manner to predefined standards. Tiered testing strategy maps the various levels of testing to specific phases of the software development process. This approach enables the testing activities to properly support and enhance the development efforts. Test planning should start at the beginning of the project and continue in parallel with development. A master test plan should be created based on general project information, and where appropriate, specific test plans should be created for certain levels of test, e.g. an acceptance test plan should be created early because it is built on the requirements. Acceptance tests help validate the requirements as well as model the system. Change control combines procedures and tools to provide a mechanism that manages and tracks alterations to software. Change requests are evaluated to assess their business and technical values, their impact, and their projected cost; they are then prioritized for implementation. Software should be stored in a repository that is maintained by a version control tool. This tool provides an environment in which changes to software can be managed using access control, which governs who can obtain access to change a piece of software, and synchronization control, which ensures that changes made in parallel to the same software do not overwrite one another and are merged safely. Measurement of software quality requires metrics to be collected throughout the software development process for key quality factors.
Standards adopted within the framework of a software methodology can facilitate the development process and the internal processes of quality assurance, helping to achieve consistency and common practices. Practical software quality assuranceInstituting a quality assurance program can bring about a cultural change, and it can require additional financial and resource commitment. Before a quality assurance program is established, it is important to adopt a software methodology that suits the project, environment and organization. We work closely with our customer to understand their organization's managerial structure, responsibilities, activities, capabilities, and resources. Using our expertise in software methodologies and engineering practices, we will help devise a balanced quality assurance program that enables projects to assimilate the quality factors desired by the customer, without introducing unnecessary process overheads. To discuss our quality assurance services further, please email or contact us. |
||
Methodologies | Project Management | Analysis & Modeling | Development | Testing | Quality Assurance |
|
Home | Services | Contact Us |
Copyright © 2008 AntonConsulting | info | webmaster | site map |