|
|
|
|
Wednesday, May 7, 2008, 11:30 a.m. |
 |
|
The Angels and Devils of Software
Testing
Jonathan Kohl, Kohl Concepts, Inc. & Michael Bolton, DevelopSense

It's never been easier to fool your
manager into thinking you're doing a great job testing! Does that sound tempting?
Some would rather spend time playing Spider Solitaire, Foosball, or watching online
videos of cats begging for cheeseburgers instead of doing their testing work. Jonathan
Kohl and Michael Bolton discuss the types of test fakery that are out there—and
that you need to avoid. These temptations include banishing critical thinking, using
misleading test case metrics, generating impressive looking but useless test documentation,
maintaining obsolete tests (so we have something to count and display), engaging
in methodology doublespeak, tinkering endlessly with expensive test automation tools,
and taking credit for a great product that would have been great even if no one
had tested it. Jonathan and Michael present these and other testing fakery temptations
using a format of a tester's tempter (the little devil on your shoulder) and a tester's
conscience (the corresponding little angel).

|
- Testing—a service, not an obstacle to delivery
- Metrics as a tool for deception
- Critical thinking to reduce self-deception
|
|
|
|
|
Branch Out: Using Classification
Trees for Test Case Design
Julie Gardiner, Grove Consultants

A structured, visual approach to identify
and categorize equivalence partitions for test objects, classification trees offer
a unique way for you to document test requirements so that anyone can understand
them and quickly build test cases. Join Julie Gardiner to look at the fundamentals
of classification trees and how they can be applied in both traditional and agile
test and development environments. Using real-world examples, Julie shows you how
to use the classification tree test technique, how it complements other testing
techniques, and its value at every stage of testing. She demonstrates one classification
tree editor from among the free and commercial tools now available to help you build,
maintain, and display classification trees.

|
- How to develop classification trees for test objects
- Benefits and rewards of using classification trees
- When—and when not—to use classification trees
|
|
|
|
|
The Ten Principles of an Agile Tester
Lisa Crispin, ePlan Services, Inc.

On an agile team, everyone is a tester—anyone
can and often does take on testing tasks. If that’s true, then what is special
about being an agile tester? If I’m a tester on an agile team, what does that
really mean? Do agile testers need different skill sets than testers on traditional
teams? What guides agile testers in their daily activities? An agile tester embraces
change, collaborates well with both technical and business people, and understands
the concept of using tests to document requirements and help drive development.
Agile testers have good technical skills, know how to collaborate with others to
automate tests, and are experienced exploratory testers. How do they get that way?
Skills are important, but mindset and attitude count even more. Learn how the agile
principles of feedback, courage, simplicity, improvement, and others will help you
create your “agile testing mindset” and bring more value to your agile—or
not so agile—team.

|
- The agile principles that enhance testing
- How agile testers add value to their development teams
- The “agile mindset” for improved testing efficiency and effectiveness
|
|
|
|
|
Testing SOA Applications: A Guide
for Functional Testers
Brian Bryson, IBM

Functional testers assigned to their
first SOA application can easily be caught off guard by some of the challenges posed
by the SOA architecture. Testing without a user interface, the importance of security
and performance, and the heavy emphasis on negative testing all require testers
to approach SOA applications with new tools, techniques, and a different attitude.
Through practical demonstrations of open source and commercial tools, Brian Bryson
demonstrates techniques to test SOA applications. Brian starts by building and deploying
a Web service, the main building block of SOA applications. Then, he tests this
Web service from the ground up beginning with functional unit testing using jUnit
and progressing to infrastructure testing using SoapClient and Eclipse. Brian concludes
with a discussion of security and performance testing issues. Take away an SOA testing
checklist and the practices IBM consultants use for testing large scale SOA implementations.

|
- Understand SOA architectures from a tester’s perspective
- Differences between testing traditional and SOA applications
- A proven checklist for testing SOA applications
|
|
|
|
|
Fundamentals of Data Warehouse
Testing
Marc Bloom, Capital One

In today’s connected world, nearly
every action we take involves a data stream. Online banking, credit card transactions,
brokerage, e-commerce, bill pay—the list is endless. Yet few testing
strategies specifically focus on this crucial aspect of our systems and, thereby,
forego the business benefits that may be gained. Although data warehouse testing
starts with the same basic fundamentals as typical application testing, it introduces
additional nuance and complexity that make data warehouse testing both more challenging
and exciting for testing and development professionals. Marc Bloom describes the
differences between data warehouses and traditional IT applications, reviews the
basic principles of “extract, transform, load,” and shares proven testing
strategies, techniques, tips, and lessons learned. Improve your data testing skills
and increase your value to the business by implementing focused data warehouse testing
in your organization.

|
- Components of a data warehouse
- Differences between data warehouse and typical application testing
- Important strategies for formal data warehouse testing
|
|
|
Wednesday, May 7, 2008, 1:45 p.m. |
 |
|
|
|
|
The Rise of the Customer Champions
Mike Tholfsen, Microsoft

The customer champion model is a new
way for test teams to systematically collect, organize, and act on customer feedback.
This model helps test teams think more strategically about their overall customer
connection approach, in addition to growing the test discipline in the long term.
Mike Tholfsen describes how the Office OneNote test team employed innovative customer
connection techniques to improve product quality and customer satisfaction during
the Microsoft Office 2007 release. Mike will also talk about how the Office "14"
development team brought together test customer champions across forty client, server,
service, and shared teams to ensure there is a unified Office voice when gathering
user feedback and customer data. Mike describes and demonstrates the four key pillars
of this new customer champion model—creating the customer encyclopedia, making
the right resource investments, writing better customer commitments, and building
the champion discipline.

|
- Ways for testers to explore customer connections
- Methods to map customer connection activities to specific tester goals, objectives,
and commitments
- How the Microsoft Office test group uses the Test Customer Champion model
|
|
|
|
|
|
Test Cases as Executable Specifications
Andy Campbell and Ronelle Landy, The Mathworks, Inc.

While testing major architectural changes
to a legacy product, it became clear to Andy and Ronelle’s team that without
a close association between test cases and application requirements there was no
assurance that these requirement were met.. They detail the processes, tools, and
workflows their team developed to produce high quality, searchable, well documented
test suites that provided direct transfer of testing requirements from developers
to test engineers. These test suites now serve as a continuous verification that
the product functions remain current in their dynamic development environment. Any
test failure is a clear indicator that the product does not implement the functionality
called for in the specification. Reporting capabilities of the tools provide insight
into the progress of testing throughout the development cycle. In addition, the
ability to view the test suite as a matrix of test cases allows the test writer
to optimize testing efforts by locating testing holes as well as areas of over coverage.
Learn how to build and use automated test suites as a set of executable “specs”
for your existing applications.

|
- A methodology for keeping source code and specs in sync
- How to structure a test bed to separate independent test characteristics
- A searchable, multi-dimensional map of test code to product source
|
|
|
|
|
|
Agile Testing: Traditional Testing
Meets Agile Development
Dietmar Strasser, Borland Software

Agile development methodologies are
taking center stage in many software organizations today. Testing in a highly iterative
environment adds great opportunities for success but it also brings challenges.
Dietmar Strasser explains how to successfully transform testing from a traditional
process to a highly iterative approach that aligns testing efforts around requirements
while fostering communication and collaboration among all team members in a distributed
development environment. Dietmar describes how to move to an iterative, SCRUM-based
development approach and, at the same time, align testing activities around it while
dealing with an ever-evolving set of processes and technologies. Lessons learned,
tips, and tricks will be shared based on Borland’s experiences moving to an
iterative approach. If one thing is certain, the path to agile development from
traditional waterfall is far from perfectly straight, and we are learning as we
go.
|
- Common challenges faced by testers embracing agile development
- How visibility and agile frameworks can assure improved productivity
- Start on the path to agile testing today
|
|
|
|
|
Assuring Web Service Quality
David Fern, Social Security
Administration

David Fern demystifies Web services
technology, explaining that Web services are loosely coupled, language independent
processes that communicate following SOAP standards using XML messages. He describes
how to ensure the quality and compatibility of these unique applications by addressing
their specific challenges and risk mitigation test strategies. David shares some
of the tools that help him perform functional testing as you would with a GUI application—compare
and validate the request and response XML files, ensure language independence and
cross platform compatibility with .NET and Java services, and ensure that the Web
Service Definition Language (WSDL) specifications meet the Web Service Interoperability
Organization (WS-I) standards. Finally, David describes how to integrate these tools
and strategies to support and automate your Web service testing process.

|
- Web services and how they work
- Testing Web services
- A Web services testing strategy for your organization
|
|
 |
|
Growing Our Industry: Cultivating
Testing
Isabel Evans, Testing Solutions Group Ltd

Although software testing is a relatively
young discipline, immaturity is not the only reason we are still developing our
methods, professional qualifications, trade associations, and its position in the
software industry and society. All successful professions must continuously evolve
and grow. For example, horticulture has been practiced for about 8,000 years longer
than software testing. During those millennia, horticultural practices have continued
to develop, supported by accidental discovery, increased scientific understanding,
and improved technology. Horticulture has brought many benefits and, at the same
time, dangers and environmental damage. Just like horticulture, software testing
is a multi-discipline, science- and technology-driven industry with political, sociological,
and economic implications. Isabel Evans, gardener and expert software tester, compares
the two disciplines to see how commercial, legislative, and social concerns affect
risk, working practices, and changing skills in the two industries dear to her heart.

|
- How good practices evolve over time
- Practices that can be beneficial and dangerous at the same time
- The risks of our actions in testing today
|
|
 |
|
Wednesday, May 7, 2008, 3:00 p.m. |
 |
|
|
|
|
Testing Disasters and Turnarounds
Randall Rice, Rice Consulting Services

It’s good to learn from your own
mistakes, but even better to learn from the mistakes of others. Randy Rice presents
case studies of testing projects that have gone horribly wrong and reveals the one
characteristic they all have in common. Although many of these projects ultimately
ended in failure, Randy presents examples where mid-course corrective actions were
very successful. Learn important lessons that address test team organization, test
environment design, working with software developers, test outsourcing, test tool
integration, team building, and the importance of strong leadership to the success
of your testing. Find out how to become a change agent and what you need to do in
order to turn around testing projects that are headed toward disaster. Avoid the
mistakes of others and focus your efforts in leading your test team to get the best
possible results.
|
- Testing mistakes that will put your project at risk
- Corrective actions that can save a failing test project
- On becoming an agent for change in your test team and organization
|
|
 |
|
Systematic Test Design . . . All
on One Page
Peter Zimmerer, Siemens AG

Good test design is a key ingredient
for effective and efficient testing. Although there are many different test design
methods and a number of books explaining them in detail, studies have shown that
the regular use of these methods is actually quite limited. What are the reasons
behind our neglecting to use these methods? How can we improve our practices to
design better tests? Peter Zimmerer shares a poster-sized document, “Test
Design Methods on One Page,” that displays the big picture of test design
through a systematic, structured, and categorized overview of different test design
methods. When designing test cases, testers in his organization systematically consider
each technique as they design and develop tests. He urges you to give this poster
to every developer and tester on your team and put it on the wall in your office.
It serves to remind you and your team of the valuable test design methods and helps
you select the right ones for each situation. Trust Peter, you’ll deliver
better and smarter test designs instantly.
|
- How to systematically select test design techniques
- A concise representation of test design methods
- When to apply different design techniques
|
|
 |
|
Perils and Pitfalls of the New Agile
Tester
Janet Gregory, DragonFire, Inc.

If your background is testing on traditional
projects, you are used to receiving something called “requirements”
to develop test cases—and sometime later receiving an operational system to
test. In an agile project, you are expected to continually test changing code based
on requirements that are being uncovered in almost real time. Many perils and pitfalls
await testers new to agile development. For example, as a tester new to agile, you
might think, “I’ll test the latest ‘stories’ on Tuesday
when I get my next build.” And you would be WRONG! Waiting for a new build
will almost always put you at least one iteration behind the developers and in a
schedule hole from which you cannot recover. To avoid this trap, you must start
testing as soon as the developer has completed a feature story, even before coding
begins. Janet Gregory discusses the new when’s, how’s, and what’s
of agile testing and helps you begin to change your mindset so you can become the
new agile tester in such high demand today.

|
- Pitfalls of agile waiting for unsuspecting testers
- Ways to avoid traps that test teams fall into when agile practices are introduced
- Tools and techniques for testing in an agile development environment
|
|
 |
|
GUI Testing for Multi-language Applications
Marco Torres, Citrix Systems Japan R&D K.K.
An analysis of defect reports on several multi-language projects demonstrated that,
for localization, almost 80% of the bugs were cosmetic issues. Because of this tendency,
GUI tests are always an important part of the localization testing process. However,
manual GUI testing is time consuming, labor intensive, and therefore expensive.
For testers, it is boring, tedious, and error prone. An automated test suite is
the most efficient method to automate detection of these defects, especially for
multi-language applications. Marco Torres demonstrates how to simultaneously verify
the quality of the GUI in all the languages supported by an application. Using real-world
examples, he shows you how to create automated tests for multi-language environments.
Join Marco and learn how to write test scripts that consider future language additions.
Take away the key development rules and test practices that Citrix uses for developing
internationalized and localized products.

|
- Testing the quality of the user interface in multi-language applications
- Platform, site, and language-independent test automation
- A data-driven automation process for localization testing
|
|
| |
|
Today's Top Ten Controversies in
Testing
Lloyd Roden, Grove Consultants

Having been in the IT industry for thirty
years, Lloyd Roden believes that we often adopt behaviors even though there is little
evidence that they are correct or beneficial. Some of these are “that’s
the way we’ve always done it” so they must be right. Others come from
the latest development and testing philosophies (fads). Lloyd suggests we challenge
our assumptions on a regular basis. His “top ten” list includes ideas
such as “managers should be judged on product quality rather than delivery
date”, “acceptance testing should not find bugs”, “defect
logs are crucial – even in agile developments”, “certification
plays a vital role in defining our profession”, “we define entry and
exit criteria but we don’t follow them” and five others. You may not
agree with everything Lloyd suggests, but this session will help you understand
whether what you do is based on evidence, and what are habits you’ve adopted
without testing them.
|
- Why we adopt behaviors without evaluating them
- Ten testing behaviors that may, or may not, be beneficial
- Choosing useful behaviors in your organizational context
|
|
Top of Page
|
|