Title: CSTE Domain 2
1CSTEDomain 2
The Testers Role in Software Development and
Acquisition
2Agenda
- Life Cycle Testing / V Testing (pg. 19)
- Structural vs. Functional Test Techniques (pg.
24) - Quality attributes (pg. 46)
3Life Cycle Testing
- Involves continuous testing of the system during
the development process. - Dependent upon deliverables in the development
lifecycle.
4Test Team
- Comprised of people who may be both implementing
and testing the system. - Must use a formal test methodology to prevent
using the same methodology as the development
team.
5V Testing
6(No Transcript)
7Step 1 Assess developmentplan and status
- PreReq to building the test plan.
- Used to evaluate the software solution.
- Testers challenge the completeness and
correctness of the development plan. - Testers estimate the amount of resources.
8Step 2 Develop the Test Plan
- Follow the same pattern as any software planning
process. - Structure of all plans should be the same, but
content will vary based on risk perceived by the
testers.
9Step 3 Test Software Requirements
- Look for incomplete, inaccurate, or inconsistent
requirements lead to most software failures. - Increases cost of implementation
10Step 4 Test Software Design
- Tests both external and internal designs
primarily through verification techniques. - Goals
- Achieve the objectives of the requirements.
- Verify the design is effective and efficient on
the hardware.
11Step 5 Test software construction
- Method to build the software determines the
extensiveness of the tests needed. - Manual construction requires more testing
- Automated construction requires less testing
- Cheaper to find defects here than later in the
process.
12Step 6 Execute Tests
- Based on the test plan.
- Involves testing of code in a dynamic state.
- Verify the requirements are met.
- Validate the structural specifications of the
design.
13Step 7 Acceptance Test
- Evaluate the applicability and usability in
day-to-day functions. - As a user, the software should perform
(regardless of the specifications and
requirements).
14Step 8 Report Test Results
- Continuous process.
- Oral or written.
- Defects must be reported as early as possible so
the correction cost will be as low as possible.
15Step 9 Test Software Installation
- Execute the software in a production environment.
- Test the interface to the operating software,
related software, and operating procedures.
16Step 10 Test Software Changes
- Actually occurs through the entire implementation
process. - Anytime the requirements change, the test plan
changes must retest.
17Step 11 Evaluate Test Effectiveness
- Look for improvements within the test process.
- Primarily performed by the testers should also
include developers, users, and QA professionals.
18Structural vs. Functional
- Structural
- Tend to uncover errors that occur during coding
of the program. - Ensures sufficient testing of the implementation
of the a function. - Concerned that it is structurally sound.
- Functional
- Tend to uncover errors that occur in implementing
requirement or design specifications. - Ensures that the requirements are properly
satisfied by the application system. - Concerned with the results of processing.
19Structural Test Techniques
- Stress subject system to above normal
conditions. - Execution test for designed proficiency in a
production state. - Recovery ability to restart operations after a
disaster. - Operations execute using customer staff,
procedures, and documentation. - Compliance complies with technology standards,
procedures, and guidelines. - Security protect confidential information.
20Functional Test Techniques
- Requirements system can perform its function
correctly and the correctness can be sustained
over a continuous period of time. - Regression ensure previously tested segments
still function properly after a change to another
segment. - Error Handling test the introduction of the
error, processing of the error, control
condition, and reentry of the condition properly
corrected. - Manual Support manually entering realistic
data ideally the testers are real users. - Intersystems interconnection between systems
function properly. - Control mgmt tool to ensure processing is
performed in accordance with the intent of
management. - Parallel determine the results of the new
application are consistent with the processing of
the previous application / version.
21Quality Attributes
- Problem Dont have software quality requirements
or goals - Purpose Apply quality attributes in a
development program to improve quality of the
software product. - Process Decision makes complete a SW Quality
Requirements Survey based on 11 quality factors.
22SW Quality Requirements Survey
- Thing to consider
- Basic characteristics of the application (eg
human lives affected, long life cycle, real time
application) - Life cycle implications (product operation,
product revision, and product transition)
23Quality Factors
- Correctiveness extent to which a program
satisfies its specifications and fulfills the
users mission objectives. - Reliability Extent to which a program can be
expected to perform its intended function with
required precision. - Efficiency The amount to computing resources
and code required by a program to perform a
function. - Integrity Extent to which access to software or
data by unauthorized persons can be controlled. - Usability Effort required to learn, operate,
prepare input, and interpret output of a program
24Quality Factors
- Maintainability Effort required to locate and
fix an error in an operational program. - Testability Effort required to test a program
to ensure that it performs its intended function. - Flexibility Effort required to modify an
operational program. - Reusability Extent to which a program can be
used in other applications. - Interoperability Effort required to couple one
system with another.