Docstoc

QUALITY ASSURANCE

Document Sample
QUALITY ASSURANCE Powered By Docstoc
					QUALITY ASSURANCE

  By G.C.Reddy
  www.gcreddy.net
The QA Philosophy
The inherent philosophy of Quality
  Assurance for software systems
development is to ensure the system
 meets or exceeds the agreed upon
requirements of the end-users; thus
   creating a high-quality, fully-
    functional and user-friendly
            application.
           Quality Assurance
       is more than just Testing

   Quality Assurance is involved in the
      entire project development life cycle

   Quality Assurance is a commitment by
      all project participants to the
      Total Quality of the Project
                     Quality Assurance Focus Early in Life Cycle
                                                                   Machine-based testing performed

No machine-based testing performed


                     30

                     25                                                                                                      Project   The objective
 % Defects Removed




                                                                                                                             Data
                     20
                                                                                                                             Target
                                                                                                                                       is to
                     15
                                                                                                                                       “buy” time and
                     10
                                                                                                                                       reduce costs
                     5                                                                                                                 by finding
                     0                                                                                                                 problems
                                                                                    Function   System       Quality
                     Requirements   High Level
                                    Design
                                                 Low Level
                                                 Design
                                                              Code      Unit Test
                                                              Development
                                                                                    Test       Integraton   Assurance Regression       earlier
                                                                                                Test        Test
                          by focusing
                                                             Development Life Cycle
                              here


Relative Cost
Of Defect Repair - $1                                                 $100                                                    $1000+
The QA Process Cycle
          Phase I: Requirements Gathering,
           Documentation and Agreement

          Phase II: Establishing Project
           Standards

          Phase III: Test Planning

          Phase IV: Test Case Development

          Phase V: QA Testing

          Phase VI: User Acceptance Testing

          Phase VII: System Validation
               Phase I:
Requirements and Project Scope
   The system requirements are collected
    and analyzed based on input and direction
    from each of the project groups
   The requirements documents are drafted,
    reviewed, finalized and agreed upon by all
    project participants
   The scope of the project is established
    and agreed upon
              Phase II:
    Establishing Project Standards

 The QA team will assist in establishing
  and setting the standards for the
  project
 The standards will be established for:
     Development Methodology
     System Design
     Quality Assurance Methodology
     Methodology Compliance
                Phase III:
               Test Planning
The Quality Assurance Team will:
   Write the Test Plans which detail the QA
    involvement for the entire project life cycle

   Develop test conditions based on the
    business needs and business scenarios

   Implement a defect-tracking mechanism
       Phase III (con’t):
         QA Methodology


 The QA team will establish Quality
  Assurance methods, practices and
  standards
 The overall QA methodology will assist
  in creating a controlled product release
  and greatly reduce the risk of errors
  being introduced into the product
          Phase IV:
    Developing Test Cases
   Write test cases that entirely test the
    scenarios covered in the test conditions

   Review the test conditions and
    subsequent test cases with the project
    users

   Write test cases that will cover
    all phases of the QA life cycle
             Phase V:
            QA Testing
 QA Life Cycle consists of 5 types of
          testing regimens:
1. Unit Testing
2. Functional Testing
3. System Integration Testing
4. Regression Testing
5. User Acceptance Testing
     1. Unit Testing

The testing, by development, of the
 application modules to verify each
   unit (module) itself meets the
  accepted user requirements and
 design and development standards
2. Functional Testing

The testing of all the application’s
modules individually to ensure the
    modules, as released from
development to QA, work together
as designed and meet the accepted
  user requirements and system
             standards
3. System Integration
       Testing

 Testing of all of the application
modules in the same environment,
 database instance, network and
  inter-related applications, as it
would function in production. This
   includes security, volume and
           stress testing
4. Regression Testing

This is the testing of each of the
  application’s system builds to
   confirm that all aspects of a
system remain functionally correct
after program modifications. Using
automated regression testing tools
     is the preferred method.
Testing Automation

 Automated Testing Tools

  Mercury Interactive (WinRunner)

  Rational (Robot)

  Segue (Silk)
            Phase VI:
    User Acceptance Testing
             (UAT)

The testing of the entire application
    by the end-users ensuring the
 application functions as set forth in
      the system requirements
   documents and that the system
      meets the business needs
        Phase VII:
        Validation

All systems should go through a
 validation process which
 maintains the project
 documentation library.
Validation Documentation


All software systems that are developed
  or used for FDA submissions are subject
  to review by the FDA. All phases of the
  Project Life Cycle are required to
  maintain FDA validation documents.
  MGD Services is experienced in FDA
  Validation and 21 CFR Part 11.
             Staffing
The Staffing Requirements for the QA Functions:

   QA Manager
   Business Analyst
   Quality Assurance Analyst
   Technical Writer
   Instructional Designer/System
    Trainer
            QA Manager
   Established and implements the QA
    Methodology for project Total Quality

   Acts as the project lead liaison between
    all project areas to ensure all areas are
    completely and correctly engaged

   Oversees the entire QA Life Cycle and
    QA staff
     Business Analyst
   Writes the User Requirements and
    Functional Specs and assists in
    writing the system documentation
   Acts as a liaison between the QA
    Team and the other project team
    members
   Assists in the QA test conditions
    development
       Quality Assurance
            Analyst
   Develops test conditions
   Writes test cases
   Performs Functional, Regression, and
    System Integration Testing
   Assists in development of user guides and
    training manuals
   Assists or performs the System Training
       Technical Writer

   Assists in writing the user and system
    documentation

   Maintains validation documentation

   Writes on-line help

   Writes the User Guide and Training
    Manuals
      Instructional Designer/
          Systems Trainer


   Assists in writing the user guides and
    training manuals

   Trains users on production system

   Subject Matter Expert on Adult Learning
    Theories and learning assessment
In Closing...

QA’s involvement must be from the
beginning to the end of the project life
cycle. Properly managed, the QA
process will bring the system to
production with cost and time savings.

				
DOCUMENT INFO
Shared By:
Stats:
views:4721
posted:3/13/2010
language:English
pages:26
Description: this presentation explains software quality assurance