Home About Software Quality Engineering Sponsors Contact Us SQE.com
STARWEST 2008 Preconference Tutorials

GO TO:   Monday  |  Tuesday  

Tutorials for Tuesday, September 30 —  8:30 a.m. — 5:30 p.m.
Adapting to Agile
Elisabeth Hendrickson, Quality Tree Software, Inc.
When a development team adopts an agile process such as Scrum or XP, testers find that their traditional practices no longer fit. The extensive up-front test planning and heavyweight test documentation used in traditional development environments just get in the way in an agile world. In this experiential workshop, you experience the transition to agile through a paper-based simulation (no programming required). In a series of iterations, the team attempts to deliver a product that the customer is willing to buy, thus generating revenue for the company. As with real projects, producing a working product on a tight schedule can be challenging. After each iteration, your team reflects on key events and adjusts to increase productivity for the next iteration. Learn to apply the principles of visibility, feedback, communication, and collaboration to increase the team’s rate of delivery. By the end of the workshop, you will have an intuitive understanding of agile and, in particular, the shifting role of Test/QA in agile development.  Elisabeth Hendrickson
Learn more about Elisabeth Hendrickson  

How to Build, Support, and Add Value to Your Test Team
Lloyd Roden and Julie Gardiner, Grove Consultants
As a new or current test manager, you may have many questions—How do I create a new team? How can I help my current team become more efficient and effective? How can I build my organization’s confidence in our work? How can I find needed resources? Based on a people-oriented—rather than task-oriented—approach to software testing, Lloyd Roden and Julie Gardiner describe how to build and retain successful test teams. Discover the characteristics of successful testers and test managers. Identify the qualities you should look for to recruit the right people. Learn what you must do for your team and what they should do for themselves. Discuss how to promote the value of testing within the organization while building good working relationships with developers and other organizations. Discuss these relevant issues with others facing the same challenges. Lloyd and Julie provide utilities, spreadsheets, and templates to help you become a successful test manager. Lloyd Roden Julie Gardiner 
Learn more about Lloyd Roden
Learn more about Julie Gardiner

Essential Test Management and Planning
Rick Craig, Software Quality Engineering
The key to successful testing is effective and timely planning. Rick Craig introduces proven test planning methods and techniques, including the Master Test Plan and level-specific test plans for acceptance, system, integration, and unit testing. Rick explains how to customize an IEEE-829-style test plan and test summary report to fit your organization’s needs. Learn how to manage test activities, estimate test efforts, and achieve buy-in. Discover a practical risk analysis technique to prioritize your testing and help you become more effective with limited resources. Rick offers test measurement and reporting recommendations for monitoring the testing process. Discover new methods and develop renewed energy for taking test management to the next level in your organization.  Rick Craig
Learn more about Rick Craig  

Understanding Software Performance Testing
Dale Perry, Software Quality Engineering
What does it take to properly plan and implement a performance test? What factors need to be considered? What is your performance test tool telling you? Do you really need a performance test? Is it worth the cost? These questions plague all performance testers. In addition, many performance tests do not appear to be worth the time it takes to run them, and the results never seem to resemble—yet alone predict—production system behavior. Performance tests are some of the most difficult tests to create and run, and most organizations don’t fully appreciate the time and effort required to properly execute them. Dale Perry discusses the key issues and realities of performance testing—what can and cannot be done with a performance test, what is required to do a performance test, and what the test “really” tells you. Dale Perry 
Learn more about Dale Perry  

Just-In-Time Testing
Rob Sabourin, AmiBug.com, Inc.
Turbulent Web development and other market-driven projects experience almost daily requirements modifications, changes to user interfaces, and the continual integration of new functions, features, and technologies. Rob Sabourin shares proven, practical techniques to keep your testing efforts on track while reacting to fast-paced projects with changing priorities, technologies, and user needs. Rob covers test planning techniques and organization strategies, scheduling and tracking, blending scripted and exploratory testing, identifying key project workflows, and using testing and test management tools. Learn how to create key decision-making workflows for test prioritization and bug triage, adapt testing focus as priorities change, identify technical risks, and respect business importance. Come away with a new perspective on your testing challenges and discover ways to take control of the situation—rather than to be controlled by it.  Rob Sabourin
Learn more about Rob Sabourin  

Requirements-Based Testing
Richard Bender, Bender RBT, Inc.
Testers use requirements as an oracle to verify the success or failure of their tests. Richard Bender presents the principles of the Requirements-Based Testing methodology in which the software's specifications drive the testing process. Richard discusses proven techniques that ensure requirements are accurate, complete, unambiguous, and logically consistent. Requirements-based testing provides a process for first testing the integrity of the specifications. It then provides the algorithms for designing an optimized set of tests sufficient to verify the system from a black-box perspective. Find out how to design test cases to validate that the design and code fully implement all functional requirements. Determine which test design strategy—cause-effect graphing, equivalence class testing, orthogonal pairs, and more—to apply to your applications. By employing a requirements-based testing approach, you will be able to quantify test completion criteria and measure test status. Richard Bender 
Learn more about Richard Bender  

Session-Based Exploratory Testing
Jon Bach, Quardev, Inc.
The agile nature of exploratory testing makes it a widely-used and effective test approach, especially when testing time is limited. But despite the ability of testers to rapidly apply their skill, exploratory testing is often dismissed by project managers who regard exploration as unreproducible, immeasurable, and unaccountable. If you find this to be true where you work, a solution may be to use Session-Based Test Management (SBTM), developed by Jon Bach and his brother James, to solve these problems. In SBTM, testers are assigned areas of a product to explore, and testing is time-boxed in “sessions” which have mission statements called “charters.” Together, these create a meaningful and countable unit of work. Using a simulated project, you’ll practice elements of sessions, including chartering, paired testing (working with another tester on the same mission), storytelling (taking notes during your testing), and debriefing (responding to questions after your session). Jon will use a freely available, open source tool to help manage and measure testing effort done in sessions.  Jon Bach

Laptop Required
Learn more about Jon Bach  

Test Process Improvement
Martin Pol and Ruud Teunissen, POLTEQ IT Services BV
What is the maturity of your testing process? How do you compare to other organizations and to industry standards? To find out, join Martin Pol and Ruud Teunissen for an introduction to the Test Process Improvement (TPI®) model, an industry standard for testing maturity assessments. Although many organizations want to improve testing, they lack the foundations required for success. Improving your testing requires three things: (1) understanding key test process areas, (2) knowing your current position in each of these areas, and (3) having the tools and skills to implement needed improvements. Rather than guessing what to do, begin with the TPI® model as your guide. Using as examples real world TPI® assessments that they have performed, Martin and Ruud describe a practical assessment approach that is suitable for both smaller, informal organizations and larger, formal companies. Take back valuable references, templates, examples, and links to start your improvement program.

TPI® is a registered trademark of Sogeti USA LLC.
Martin Pol Ruud Teunissen 
Learn more about Martin Pol
Learn more about Ruud Teunissen

Protecting Your Applications from Web Security Vulnerabilities 
Caleb Sima, Hewlett-Packard
Does your security testing focus mainly on user identification, access control, and encryption? Although that’s a start, you also should be concerned about application security from the outside world of dangerous hackers. Caleb Sima, a white-hat hacker who has broken into countless Web applications, demonstrates popular hacking techniques, such as SQL injection, cross-site scripting, and more. Using live Web sites, he takes you step-by-step through traditional Web site and newer Ajax security vulnerabilities. Learn where these issues are present in your systems, how you can find them, and what hackers can accomplish if you don’t. Caleb describes attacks via server-side application “holes” and how phishers, boters, and worm authors use these vulnerabilities to exploit Web-based systems. He discusses browser/server interaction issues, the increasing attack surface in newer Web applications, repudiation of HTTP requests, and how hackers expose application logic. Get a “behind the scenes” look at the thought processes of hackers who are actively working to circumvent your Web applications’ security measures.  Caleb Sima
Learn more about Caleb Sima  

Scripting Techniques for Testers
Dion Johnson, DiJohn Innovative Consulting, Inc.
Automating functional tests for highly dynamic applications is a daunting task. Unfortunately, most testers rely on automation tools that produce static test suites that are difficult and expensive to change. With complex automation frameworks and expensive testing tools, it is no wonder that automated testing often fails to live up to its promise. But, there is another way that is simple and almost free! By learning basic scripting language skills, you can begin immediately to automate time-consuming, everyday testing tasks. Scripting saves valuable time doing repetitive tasks so that you can focus on more important work. Using the Ruby scripting language and Internet Explorer, you will practice scripted automation techniques on an HTML application. These techniques address many of your test automation needs, including dynamic data creation, automated input entry, and exception handling—all of which can increase the coverage, maintainability, scalability, and robustness of your tests. Participants should have scripting experience or knowledge of basic programming control-flow statements and logic—if-then-else, for-next, etc.  Dion Johnson

Laptop Required
Be sure to bring your Windows laptop with Internet Explorer and Excel. Because working in pairs is encouraged, feel free to bring a friend to share your PC.
Learn more about Dion Johnson  

Tutorials for Tuesday, September 30 —  8:30 a.m. — 12:00 p.m.
Test Automation Patterns: Best Practices and Common Pitfalls
Gerard Meszaros, Independent Consultant
The extensive use of automated testing has been a breakthrough in improving the quality of software. By now, many companies have experimented with automating functional tests and, perhaps, unit tests. Those companies that have had good experiences rave about automation and cannot imagine having been successful without it. However, for every success story, there are many untold stories of disappointment. What separates the successes from the disappointments? Join Gerard Meszaros as he describes common problems encountered when writing and running automated tests. He characterizes the problems in the form of their visible symptoms, discusses their root causes, and suggests possible solutions expressed in the form of patterns that have worked for others. Many of these causes and patterns are equally applicable to unit tests using xUnit, to automated functional and acceptance tests using tools such as Watir, and to record and playback test tools such as Mercury’s QuickTest. Gerard illustrates these concepts with demonstrations and short, hands-on exercises. Gerard Meszaros 
Learn more about Gerard Meszaros  

High Impact Software Inspections
Ed Weller, Integrated Productivity Solutions, LLC
Software inspections were first formally developed at IBM in 1972. More than three decades later, inspections remain relevant, and more importantly, they are feasible and will work in most environments. Ed Weller has successfully initiated numerous inspection programs that have stood the test of time. His experience provides the practical basis for this tutorial covering the economics of inspections and how they can improve the bottom line; the roles within the inspection process and why they are important to success; the steps in the process and how to measure their effectiveness; measurements needed to evaluate success and point out areas for improvement; the relationship of inspections to unit testing; and the impact of the global workforce on inspections and tools necessary to adapt inspections to multiple locations and time zones. Join Ed for this inspection process overview and learn more about the six critical factors you need to consider when you are thinking about or planning to implement inspections.

CMMI® is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University
SCAMPI SM is a service mark of Carnegie Mellon University
Ed Weller
Learn more about Ed Weller  

Agile Defect Reporting With User Stories and Tests
Antony Marcano, testingReflections.com
If you are part of a team that employs user stories or acceptance tests as a way to document software requirements, this presentation is for you. Join Antony Marcano to learn how to use these same tools for reporting incidents and bugs you find. Whereas user stories and acceptance tests describe the system’s desired behavior, defect reports describe misbehavior. And behind each misbehavior is a desired behavior—a hidden user story. Every agile development team has their unimplemented user stories held in the product backlog. Hiding in the shadows is the secret backlog—your defect list. As the project progresses, the secret backlog of defects can grow, never receiving as much attention as the new user stories. Through a series of exercises to build the participant’s user-story and acceptance test writing skills, Antony shows how these can be applied to represent defect reports as acceptance tests. This enables you to reverse engineer the hidden user story—helping to ensure that defects get the attention they deserve. Antony Marcano 
Learn more about Antony Marcano  

AJAX Testing: Inside and Out 
Paco Hope, Cigital
AJAX—Asynchronous, JavaScript, and XML—is a modern application development technique that allows a Web-based application to look and feel just like a full-fledged desktop or client/server program. AJAX applications pose unique testing challenges because so much of the application's logic runs inside the Web browser. To thoroughly test applications employing AJAX techniques, you need to understand the technology and adopt specific testing approaches and special testing tools. Paco Hope presents a short introduction to dynamic HTML, JSON, and the core technologies that make AJAX possible. Then, he explores the approaches required to adequately test AJAX applications—from the outside-in and the inside-out. Paco demonstrates an AJAX application and shows you his strategies to test it. Finally, he discusses trade-offs of different testing tools—some open source and some commercial—that enable you to interactively and automatically test AJAX.  Paco Hope
Learn more about Paco Hope  

Tutorials for Tuesday, September 30 —  1:00 p.m. — 5:30 p.m.
Introducing Keyword-Driven Test Automation
Hans Buwalda, LogiGear Corporation
Keyword-driven test automation has entered the mainstream of testing. Keywords is a powerful approach for you to reach a high level of automation with the lowest possible effort. This approach can bring you the flexibility, manageability, and maintainability that test automation demands. Hans Buwalda introduces keyword-driven test automation, based on his successful Action Based Testing methodology. Then, he discusses how you can implement keywords by having good test design techniques, a workable automation architecture, and the management skills for success. When properly implemented, keyword-driven test automation projects can result in high automation percentages with significant reusability and low maintenance. Learn how you can start on the path to meeting Hans’ “5% challenges” for test automation: No more than 5% of your test cases should be executed manually, and no more than 5% of your total testing effort should be used to achieve this automation. Hans Buwalda 
Learn more about Hans Buwalda  

Essential Thinking Skills for Testers and Test Managers
Krishna Iyer and Mukesh Mulchandani, ZenTEST Labs
The most important skills that testers need in their work are thinking skills. While often ignored in favor of testing techniques and automation tools, improving testers’ thinking skills has the greatest benefit. Having trained more than 5,000 testers in testing skills and more than 500 testers in essential thinking skills, Krishna Iyer and Mukesh Mulchandani have proven this fact. They present three vital thinking skills—critical thinking, creative thinking, and coverage thinking. Designed for both testers and test managers, this class helps you develop an eye to see what no one else sees, a nose to sniff out more defects, and an ear to critically evaluate every claim you hear. Join Krishna and Mukesh for the latest research in cognitive thinking; learn practical techniques such as ideational fluency, test mapping, and filtering bias; and understand the mindset of effective testers.   Krishna Iyer Mukesh Mulchandani
Learn more about Krishna Iyer
Learn more about Mukesh Mulchandani

Cover Your Testing Bases with the Agile Testing Quadrants
Lisa Crispin, ePlan Services, Inc.
Software quality has many dimensions, so we must be ready with different testing approaches. We test to find defects, ensure system reliability, check that the system is easy to use, verify that it’s secure, and much more. How do you know the different types of tests you need? How do you know when you're “done” testing? Lisa Crispin shows you how to use the four categories of the Agile Testing Quadrants method to make sure your team has covered all the bases—programmer tests (test-driven development); customer tests that help the team meet the users' requirements; business-facing tests that critique the product's behavior and find the important bugs; and technology-facing tests that examine non-functional qualities such as performance, load, scalability, reliability, and security. With Agile Testing Quadrants, you and your team will be ready to cover all the bases—no matter what testing challenges the project throws at you. Lisa Crispin 
Learn more about Lisa Crispin  

The Fundamentals of Pairwise Testing—With a Twist
Randall Rice, Rice Consulting Services, Inc.
Pairwise testing is a technique for designing test cases to include all possible discrete combinations of each pair of input parameters. Use case scenarios define a dialogue between a user and the system with a tangible result. Join Randall Rice to explore ways to employ these two techniques in combination to design tests that provide a high level of test coverage while minimizing the total number of tests needed. Learn practical ways to prioritize pairwise test scenarios by risk level and execution effort as you gain a new tool to increase both coverage and efficiency in your testing. This optimized scenario-based approach is useful for establishing a strong baseline of regression tests that are both compact and achievable in most project schedules. In addition, pairwise scenario-based test designs used together are a powerful technique for system testing, user acceptance testing, and testing new service-oriented architectures (SOAs).  Randall Rice
Learn more about Randall Rice  

Top of Page
Send us Your Feedback

Software Quality Engineering  •  330 Corporate Way, Suite 300  •  Orange Park, FL 32073
Phone: 904.278.0524  •  Toll-free: 888.268.8770  •  Fax: 904.278.4380  •  Email: [email protected]
© 2008 Software Quality Engineering, All rights reserved.