Professional Documents
Culture Documents
1
Skill Category 2
• Building the Test Environment .............................................................. 133
• Management Support ............................................................................. 133
• Management Tone ..................................................................... 134
• Integrity and Ethical Values ..................................................................... 135
• Commitment to Competence ..................................................................... 137
• Management’s Philosophy and Operating Style .............................................................
137
• Organizational Structure ...................................................................... 138
• Test Work Processes .............................................................................. 140
• The Importance of Work Processes ...................................................................... 140
• Responsibility for Building Work Processes ....................................................................
142
• Developing Work Processes ...................................................................... 149
• Tester’s Workbench ...................................................................... 150
• Analysis and Improvement of the Test Process ..............................................................
153
• Test Tools .............................................................................. 167
• Tool Development and Acquisition ...................................................................... 167
• Tool Usage ...................................................................... 179
• Testers Competency .............................................................................. 180
2
The test Environment is comprised of the
following conditions within the organization:
• policies
• procedures
• culture
• attitudes
• rewards
• test processes
• test tools
• methods for developing and improving test processes
• management’s support of software testing
• test labs developed for the purpose of testing software
• multiple operating environments
• assuring the test environment fairly represents the
production environment to enable realistic testing to occur 3
Management Support = Good for testers.
4
Testers need to know 3 things
about the control environment:
1. The control environment is established by the
highest levels of management and works
downward through the organization.
2. The test function cannot create the
organization’s control environment, but can
influence how that environment is implemented
within the test function.
3. The control environment will influence the way
in which testers perform the work which may
be ethical or unethical.
5
Integrity and Ethical Values
Excerpt:
“Integrity is a prerequisite for ethical
behavior in all aspects of an enterprise’s
activities. A strong corporate ethical
climate at all levels is vital to the well-
being of the corporation, all of its
constituencies, and the public at large.”
6
Incentives and Temptations
7
Incentives cited for engaging in fraudulent unethical
behavior:
• Pressure to meet unrealistic performance targets, particularly for
short-term results
• High performance-dependent rewards.
8
Providing and Communicating
Moral Guidance
9
Commitment to Competence
11
Organizational Structure
• An entity’s organizational structure provides the framework within
which its activities for achieving entity-wide objectives are planned,
executed, controlled and monitored.
• Support Functions:
– administration,
– human resources
– Technology development
12
Assignment of Authority and
Responsibility
13
Human Resource Policies and
Practices
Messages to employees:
• Standards for hiring the most qualified individuals, with emphasis on educational
background, prior work experience, past accomplishments and evidence of
integrity and ethical behavior, demonstrate an organization’s commitment to
competent and trustworthy people.
• Recruiting practices that include formal, in-depth employment interviews and
informative and insightful presentations on the organization’s history, culture and
operating style send a message that the organization is committed to its people.
• Training policies that communicate prospective roles and responsibilities and
include practices such as training schools and seminars, simulated case studies
and role-play exercises, illustrate expected levels of performance and behavior.
• Rotation of personnel and promotions driven by periodic performance appraisals
demonstrate the entity’s commitment to the advancement of qualified personnel
to higher levels of responsibility.
• Competitive compensation programs that include bonus incentives serve to
motivate and reinforce outstanding performance. Disciplinary actions send a
message that violations of expected behavior will not be tolerated.
14
Test Work Processes
• Work processes are the policies, standards and
procedures in a quality IT environment. Test work
processes are those work processes specific to the
testing activity.
15
The Importance of Work
Processes
• It is important to a quality IT environment
to establish, adhere to, and maintain work
processes in the testing activity. It is also
critical that the work processes represent
sound policies, standards and procedures.
16
Major purposes and advantages
to having work processes
• Improves communication
• Enables knowledge transfer
• Improves productivity
• Assists with mastering new technology
• Reduces defects and cost
17
Responsibility for Building Work
Processes
• IT management is responsible for issuing IT policy. Policies
define direction and by definition are general rules or
principles. It is the standards, which will add the specificity
needed for implementation of policies.
• Policies are needed in:
– Building Systems
– Testing Systems
– Maintaining Systems
– Operating Systems
– Quality of Systems
– Security of Systems
– Allocation of Resources
– Planning for Systems
– Training Personnel
18
Responsibility for Standards and
Procedures
The workers who use the procedures and
are required to comply with the standards
should be responsible for the development
of those standards and procedures.
Management sets the direction and the
workers define that direction. This division
permits each to do what they are
best qualified to do.
19
The key concepts of a process
engineering program are:
• Management provides an organizational
structure for the workers to develop their own
standards and procedures.
• The program is driven by management policies.
• Absolute compliance to standards and
procedures is required.
• A mechanism is provided for the continual
maintenance of standards and procedures to
make them more effective.
20
Test Process Selection
Selecting, developing, and acquiring work
processes is an overall IT organization
responsibility. Software testers need to both
understand how the activity operates AND
participate when test processes, and
related processes, are selected and put
into practice.
21
Test Process Selection (cont’d)
IT groups should develop a plan for implementing and
operating a process engineering
program. This would require a policy for standards, and
a charter or job description for the
function. These need to be customized for each
organization. The specific components that
need to be addressed include:
– Building a Process Engineering Organization
– Developing a Standard and Procedure for Standards
– Planning for Standards
– Writing, Storing, and Retrieving Standards and Procedures
– Enforcing Standards
22
Building a Process Engineering
Organization
23
Building a Process Engineering
Organization (cont’d)
Some guidelines on establishing an organizational
structure for process engineering are:
25
Organizational chart for process engineering
26
Role of Process Engineering
Manager
• Promote the concept of process
engineering.
• Be the driving force behind processes.
• Administer the standards program defined
by the Process Engineering Committee.
• Be a resource to the Process Engineering
Committee and Ad Hoc Committees.
• Ensure involved parties are adequately
trained.
27
Role of the Process Engineering
Committee
28
Role of the Ad Hoc Committee
• Gain representatives from all involved areas.
• Ensure that the committee has between three
and eight members in size.
• Create the standard and procedure.
• Coordinate reviews of the standard with involved
parties.
• Periodically review and update the standards
and procedures previously developed by
• the Ad Hoc Committee.
29
Selecting Process Engineering
Committee Members
The makeup of the Process Engineering Committee
is important. Some guidelines in selecting
members are:
• Select the highest-level manager who will accept the
position.
• Assign individuals who are supportive and enthusiastic
over standards.
• Make long-term assignments to the Process Engineering
Committee.
• Select individuals who are respected by their peers and
subordinates.
• Ensure the appropriate areas of interest are involved.
30
Selecting Process Engineering
Committee Members (cont’d)
Some guidelines to ensure the appropriate areas of
interest are included in developing
standards are:
32
Defining the Attributes of a
Standard for a Standard
The standard for a standard and a standard for a
procedure, define the format, style, and
attributes of a document called a standard and a
document called a procedure. This standard
for a standard and standard for a procedure become the
prototype that will be used by the Ad
Hoc Committees in developing standards and
accompanying procedure(s).
This standard should define the following:
– A testing policy
– A test workbench to support the policy (i.e., standards and
processes)
33
Establishing a Testing Policy
• A testing policy is management’s objective for testing. It
is the objective to be accomplished.
• Good testing does not just happen, it must be planned,
and a testing policy should be the cornerstone of that
plan.
34
Tester’s Workbench
• The tester’s workbench shows that input products drive the
workbench, which uses procedures and standards to produce
output products.
35
Professional Test Standards
Test professionals should be familiar with the
standards published by organizations
such as the International Standards Organization
(ISO), U.S. Department of Commerce
(National Institute of Standards and Technology),
and IEEE. In addition, testers should know
when these standards apply, and how to obtain the
latest versions.
36
Professional Test Standards
(cont’d)
• IEEE publishes a body of standards that address software engineering and
maintenance. A portion of these standards addresses software testing and
test reporting. Listed below are the current standards that apply to the test
process.
37
Analysis and Improvement of the
Test Process
• Test Process Analysis: Test quality control is performed during the
execution of the process. Analysis is performed after the test
process is completed.
38
Continuous Improvement
• A testing process assessment is one excellent way to determine the
status of your current test process.
• Process assessment is applicable in the following circumstances:
– Understanding the state of processes for improvement.
– Determining the suitability of processes for a particular requirement or class of
requirements.
– Determining the suitability of another organization’s processes for a particular
contract or class of contracts.
• The framework for process assessment:
– Encourages self-assessment.
– Takes into account the context in which the assessed process operates.
– Produces a set of process ratings (a process profile) rather than a pass or fail
result.
– Addresses the adequacy of the management of the assessed processes through
generic practices.
– Is appropriate across all application categories and sizes of organization.
39
Test Process Improvement
Model
• A model for test process improvement has
these eight steps:
1. Examine the Organization’s Needs and Business
Goals
2. Conduct Assessment
3. Initiate Process Improvement
4. Analyze Assessment Output and Derive Action Plan
5. Implement Improvements
6. Confirm Improvements
7. Sustain Improvement Gains
8. Monitor Performance
40
Test Process Alignment
• In establishing the test environment management must assure that
the mission/goals of the test function are aligned to the
mission/goals of the organization.
41
Adapting the Test Process to Different
Software Development Methodologies
• Understanding the software development
process used in his/her organization is
important in conducting software testing
for the following three reasons:
– Understanding the developmental timetable
and deliverables.
– Integrating software
– Understanding how software is developed
42
Six major categories of
developmental methodologies
• Waterfall
• D-shaped
• Prototype
• Spiral
• RAD
• Incremental
43
Testers testing software developed by a specific
software development methodology need to:
44
Test Tools
• It is difficult to perform testing
economically without the aid of automated
tools.
• The most important aspect of software
testing tools is the process used to acquire
those tools. Most of this component of the
environment will focus on acquiring or
developing testing tools.
45
Tool Development and
Acquisition
• Difficulties surrounding the introduction of tools can arise in three
areas:
– Organizational obstacles
– Problems arising from the tools
– Obstacles in the computer environment
46
Tool Development and
Acquisition (cont’d)
• Test management is assigned responsibility for:
– Identifying tool objectives.
– Approving the acquisition plan (it may also require approval by funding
management).
– Defining selection criteria.
– Making the final selection of the tool or the source.
47
Tool Development and
Acquisition (cont’d)
• This distribution of responsibilities reduces
the chances of selecting a tool that:
– Does not meet the recognized needs of the
organization
– Is difficult to use
– Requires excessive computer resources
– Lacks adequate documentation
48
Event Sequencing
49
Event Sequence Steps
• Goals
• Tool Objectives
• Acquisition Activities for Informal Procurement
• Acquisition Plan
• Selection Criteria
• Identify Candidate Tools
• User Review of Candidates
• Score Candidates
• Select Tool
B. Acquisition Activities for Formal Procurement
• Acquisition Plan
• Technical Requirements Document
• User Review of Requirements
• RFP Generation
• Solicitation of Proposals
• B6 – Technical Evaluation should be Consistent
• Source Selection
• Procure Tool
• Evaluation Plan
• Implementation Plan
• Training Plan
• Tool Received
• Acceptance Test
• Orientation
• Modifications
• Training
• Use in the Operating Environment
• Evaluation Report 50
• Determine if Goals Are Met
Tool Usage
The most commonly used tools can be
grouped into these eight areas:
51
Tool Usage (cont’d)
• Most testing organizations agree that if the
following three guidelines are adhered to tool
usage will be more effective and efficient.
– Guideline 1 – Testers should not be permitted to use
tools for which they have not received formal training.
– Guideline 2 – The use of test tools should be
incorporated into test processes so that the use of
tools is mandatory, not optional.
– Guideline 3 – Testers should have access to an
individual in their organization, or the organization that
developed the tool, to answer questions or provide
guidance on using the tool.
52
Testers Competency
• Test competency is a direct responsibility
of the individual and the organization that
employs that individual.
• Software testing organizations should
develop a roadmap for testers to pursue to
advance their competencies. The
roadmap will have these two paths:
– Skill Sets
– Performance Skills
53
This figure is typical of how a software testing
organization may measure an individual tester’s
competency.
54