User Acceptance Testing CSTE Skill Category 7 PowerPoint PPT Presentation

presentation player overlay
1 / 23
About This Presentation
Transcript and Presenter's Notes

Title: User Acceptance Testing CSTE Skill Category 7


1
User Acceptance TestingCSTE- Skill Category 7
  • Acceptance Testing Concepts
  • Roles and Responsibilities
  • Acceptance Test Planning
  • Acceptance Test Execution

Presented by Deanna Benton QA/QC Infrastructure
Lead, Albertsons
2
I. Acceptance Testing Concepts1.Acceptance
testing concepts2.Difference between system test
acceptance test
  • Acceptance testing concepts
  • Acceptance Testing is formal testing conducted to
    determine whether a software system satisfies its
    acceptance criteria and to enable the buyer to
    determine whether to accept the system.

3
  • SOFTWARE ACCEPTANCE is an incremental process of
    approving or rejecting software systems during
    development or maintenance, according to how well
    the software satisfies predefined criteria.
  • Final software acceptance testing must occur at
    the end of the development process
  • ACCEPTANCE DECISIONS occur at pre-defined times
    when processes, support tools, interim
    documentation, segments of the software, and the
    total software system must meet accepted elements
  • Final acceptance decision occurs with
    verification that the delivered documentation is
    adequate and meets buyer requirements

4
Acceptance testing involves procedures for
identifying acceptance criteria for interim life
cycle products and for accepting them. As a life
cycle process, software acceptance enables
  • 1-Early detection of software problems
  • 2-Preparation of appropriate test facilities
  • 3-Early consideration of the users needs during
    software development
  • 4-Accountability for software acceptance belongs
    to the customer of the software whose
    responsibilities are
  • Ensure user involvement in developing system
    requirements and acceptance criteria
  • Identify interim and final products for
    acceptance, acceptance criteria and schedule
  • Plan how and by whom each acceptance activity
    will be performed
  • Plan resources for providing information on which
    to base acceptance decisions
  • Schedule adequate time for buyer staff to receive
    and examine products and evaluations prior to
    acceptance review
  • Prepare the Acceptance Plan
  • Respond to the analyses of project entities
    before accepting or rejecting
  • Approve the various interim software products
    against quantified criteria at interim points
  • Perform the final acceptance activities,
    including formal acceptance testing, at delivery
  • Make an acceptance decision for each product

5
Acceptance testing is designed to determine
whether the software is fit for use. The concept
of fit is important in both design and testing
  • The 4 components of fit are
  • Data-The reliability, timeliness, consistency and
    usefulness of the data included in the automated
    application
  • People-People should have the skills, training,
    aptitude and the desire to properly use and
    interact with the automated application
  • Structure-The structure is the proper development
    of application systems to optimize technology and
    satisfy requirements
  • Rules-The rules are the procedures to follow in
    processing the data

6
The system must fit into these four components of
the business environment. If any of the
components fails to fit properly, the success of
the application system will be diminished
7
Difference between Acceptance Test and System Test
  • Acceptance Testing is performed by user personnel
    and may include assistance by software testers.
  • System Testing is performed by developers and/or
    software testers.
  • The objective of both is to assure that it will
    be acceptable to the user in the end!
  • System Test should be performed before User
    Acceptance Testing.

8
II. Roles and Responsibilities Users
role Software testers role
  • Users role
  • Begins with the user making the determination
    whether or not acceptance testing will occur
  • If acceptance testing does occur, the user is
    responsible for planning and conducting the
    testing
  • At a minimum the user will have the following
    roles in acceptance testing
  • Defining acceptance criteria in a testable format
  • Providing the use cases that will be used in
    acceptance testing
  • Training user personnel in using the new software
    system
  • Providing the necessary resources, primarily user
    staff for acceptance testing
  • Comparing the actual acceptance testing results
    with the desired acceptance testing results
  • Making decisions whether the software is
    acceptable or whether more work needs to be
    completed

9
  • Software testers role
  • Software testers can have 3 roles
  • 1. No involvement at all. The user accepts
    full responsibility for developing and executing
    the acceptance test plan
  • 2. An advisor role. The user will develop and
    execute the test plan, but rely on software
    testers to compensate for a lack of competency on
    the part of the users or a quality control role
  • 3. Active participant in software testing
    role. This role can include any or the entire
    acceptance testing activities
  • The software tester cannot make the decision
    whether or not the software can be placed into
    production
  • The software testers should develop the
    acceptance test process.
  • Develop a process for defining acceptance
    criteria
  • Develop a process for building an acceptance test
    plan
  • Develop a process for recording and presenting
    the results of acceptance testing

10
III. Acceptance Test Planning
  • The acceptance test plan follows the practices
    used for developing an overall system test plan
  • Acceptance Criteria
  • Acceptance Test Plan
  • Use Case Test Data

11
Acceptance Criteria
  • The user must assign the criteria the software
    must meet to be deemed acceptable. In preparing
    for developing the acceptance criteria, the user
    should
  • Acquire full knowledge of the application for
    which the system is intended
  • Become fully acquainted with the application as
    it is currently implemented by the users
    organization
  • Understand the risks and benefits of the
    development methodology that is to be used in
    correcting the software system
  • Fully understand the consequences of adding new
    functions to enhance the system

12
Acceptance requirements that a system must meet
can be divided into 4 categories
  • 1- Functional Requirements- this relates to the
    business rules that the system must execute
  • 2- Performance Requirements- this relates to
    operational aspects, such as time or resource
    constraints
  • 3- Interface Quality Requirements- this relates
    to connections from one component to another
    component of processing
  • 4- Overall Software Quality Requirements- these
    specify limits for factors or attributes such as
    reliability, testability, correctness and
    usability

13
  • All safety criteria are critical and by law,
    certain security requirements are critical. Some
    typical factors affecting criticality include
  • Importance of the system to organization or
    industry
  • Consequence of failure
  • Complexity of the project
  • Technology risk
  • Complexity of the user environment

14
  • USER RESPONSIBILITIES
  • The user has the responsibility of ensuring that
    acceptance criteria contain pass or fail criteria
  • For specific software systems, users must examine
    their projects characteristics and criticality
    in order to develop expanded lists of acceptance
    criteria for those software systems
  • The user must also establish acceptance criteria
    for individual elements of a product (should be
    numeric value or a range of values)

15
Acceptance Test Plan
  • The first step to achieve software acceptance is
    the simultaneous development of a Software
    Acceptance Plan, general project plans, and
    software requirements to ensure that user needs
    are represented correctly and completely. This
    simultaneous development will provide an overview
    of the acceptance activities, to ensure that
    resources for them are included in the project
    plans.

16
  • Acceptance managers define the objectives of the
    acceptance activities and a plan for meeting them
  • After the initial Software Acceptance Plan has
    been prepared, reviewed and approved, the
    acceptance manager is responsible for
    implementing the plan and assuring that the
    plans objectives are met

17
What should be included in a Software Acceptance
Plan?
  • The first section of the plan is an overview of
    the software development or maintenance project,
    followed by major sections for management
    responsibilities and administrative matters
  • The plans overview section describes the
    technical program for software acceptance
  • The plan must include the techniques and tools
    that will be utilized in acceptance testing
  • Two categories of testing techniques can be used
    in acceptance testing structural and functional
  • Functional testing techniques help ensure that
    the requirements/specifications are properly
    satisfied by the software system
  • Structural testing ensures sufficient checking of
    the implementation of the function by finding
    test data that will force sufficient coverage of
    the structured presence in the implemented
    software

18
Use Case Test Data
  • A use case is a test case which represents how
    the software will be used in operation
  • A use case is built on a business transaction and
    can be test data or a test script
  • Unit testing will attempt to determine whether
    there are any variances between unit
    specifications and the unit as it is executed
  • Integration testing will attempt to determine if
    there is a variance between specified integration
    and actual integration
  • System testing will validate that the system will
    perform as specified
  • The test cases and scripts used for these three
    levels of testing are focused more on the
    components of the software than business
    transactions

19
An individual use case consists of
  • Preconditions that set the stage for the series
    of events that should occur for the use case
  • Post-conditions that state the expected outcomes
    of the above process
  • Sequential narrative of the execution of the use
    case

20
IV. Acceptance Test Execution Execute the
Acceptance Test Plan Acceptance Decision
  • Execute the Acceptance Test Plan
  • The objective is to determine whether the
    acceptance criteria have been met in a delivered
    product
  • Through reviews, which involve looking at the
    interim products and partially developed
    deliverables at various points throughout the
    dev. Process.
  • Through testing the executable software system
  • The determination of which of these techniques to
    use will depend on the criticality of the
    software, the size of the software program, the
    resources involved, and the time period over
    which the software is being developed

21
  • Software acceptance criteria should be specified
    in the formal project plan
  • Acceptance decisions need a framework in which to
    operate
  • A disciplined acceptance program for software of
    any type may include reviews as a formal
    mechanism
  • Some software acceptance activities may include
    testing pieces of the software formal software
    acceptance testing occurs at the point in the
    development life cycle when the user accepts or
    rejects the software

22
  • Acceptance Decision
  • Final acceptance of software based on software
    acceptance testing usually means that the
    software project has been completed, with the
    exception of any caveats or contingencies
  • Final acceptance for the software occurs and the
    developer has no further development obligations

23
  • Typical acceptance decisions include
  • Required changes are accepted before progressing
    to the next activity
  • Some changes must be made and accepted before
    further development of that section of the
    product other changes may be made and accepted
    at the next major review
  • Progress may continue and changes may be accepted
    at the next review
  • No changes are required and progress may continue
  • The goal is to achieve and accept perfect
    software!
Write a Comment
User Comments (0)
About PowerShow.com