March 20, 2007

SQA Activities

SQA activities.:


SQA is composed of variety of tasks associated with 2 different constituencies. - Software Engineers who do the technical work and SQA group that has responsibility for quality assurance planning, oversight, record keeping, analysis, and reporting.

Software engineers address quality by applying solid technical methods and measures. conducting Formal Technical reviews, and performing well-planned software testing. The SQA group is to assist the software team to achieve high-quality end product.

Activities performed by SQA group:
1. Prepare an SQA plan for a project.
SQA activities are governed by the plan.It identifies
1. evolutions to be performed.
2. audits and reviews
3. standards that are applicable to project.
4. procedure for error reporting and tracking.
5. documents to be produced by the SQA group.
6. amount of feedback provided to software team.

2. Participate in the development of the project's software process description.
SQA group reviews the process of project with respect to organizational policy, external standards maintained by the company.

3. Reviews software engineering activities to verify compliance with the defined software process. SQA groups is subjected to do this work.

4. Audits designated software work products to verify compliance with those defined as part of software process.

5. Ensures that deviations in software work and work products are documented and handled according to a documented procedure.

6. Records are noncompliance and reports to senior management.

These are the SQA activities.
In addition to these activities, the SQA group also co-ordinates the control and management of change and helps to collect and analyze software metrics.

March 13, 2007

Quality Concepts

A. QUALITY.

Let we first of all define what do you mean by Quality?
As per the Rick Hover:
Quality involves entire Software Development PROCESS - monitoring and improving process, making sure that any agreed-upon standards and procedures are followed., and ensuring that problems are found and dealt with.
It means that quality refers to measurable characteristics. The characteristics of a software includes properties of the program such as cyclomatic complexity, cohesion, number of function point, lines of code and all other. We will have a look at these measures afterwards.
These characteristics leads us to two different categories of the quality.

1. Quality of Design :
It refers to the characteristics that designer specify.for a software. It includes tolerance and performance specification of a software. It encompasses requirements, specification and design of the system.

2. Quality of Conformance :
It is degree to which design specifications are followed during implementation of the software. If the implementation follows design and resulting system meets requirements and performance goals then conformance of quality is high.


B. QUALITY CONTROL:

It involves a series of inspections, reviews, and tests used throughout the software process.
It includes a feedback loop. Combination of measurement and feedback allows us to tune the process It can be automated, entirely manual or combination of both.
A key concept of quality control is that all products have defined, measurable specifications to which we may compare the output of each process.


C. QUALITY ASSURANCE:

It consist of auditing and reporting functions of management. The goal is to provide management with the data necessary to be informed about product quality. The measure concern is that the data provided by management should not have any problems. It's responsibility of the management to provide a proper data.


D. COST OF QUALITY:

It is done to provide a baseline for current cost of quality, identify opportunity for reducing cost and provide a normalized basis of comparison.
The quality cost can be divided mainly into 3 parts
1. Prevention Cost : It includes
  • Quality Planning
  • Format Technical Reviews
  • Test Equipment
  • Training

2. Appraisal Costs: Example of appraisal cost is

  • in-process and interprocess inspection
  • eqipment calibration and maintainance
  • testing

3. Failure Cost: It can be subdivided into 2 parts.

a. Internal failure cost : occurs when we detect a defect in our product prior to shipment. It includes rework, repair etc.

b. External failure cost : occurs after product is delivered to customer. It can include product shipment, help line support and warranty work.

March 5, 2007

Software Quality Assurance

The Word Quality had come from manufacturing companies. Quality in Manufacture, quality in service, and customer satisfaction have become watchword for them in the 1990s.

Now where does the Software Quality Stands??

It is somewhat similar to these manufacturing companies. It is likely that companies may be including the Total Quality Management (TQM) program but do they have a explicit approach that will enable to their employee to improve the quality of the software that they develop.

The Software Quality Assurance (SQA) encompasses following points:
1. A quality management approach.
2. Effective Software Engineering technology.
3. Formal Technical Review(FTR) applied throughout the software development process.
4. A multitiered testing technique.
5. Control over the software documentation and changes over it.
6. A procedure to ensure compliance with software development standards.
7. Measurement and Reporting mechanisms.