development lifecycles

Conference Presentations

Navigating the Minefield of Open Source Test Tools

Each year more and more open source development tools, including test tools, are available. By choosing to use open source test tools, companies expect to save money and take advantage of the community of shared development. Recently, there seems to be an abundance of open source testing tools being released, including tools for automated regression, load testing, test management, and defect tracking. But how do you know which tools are right for you? Based on his real-world experiences using such tools, Jeff Jewell covers the issues that you are likely to encounter as you evaluate open source testing tools. Learn where to find open source test tools, the challenges you
face in choosing these tools, and what you will need to do once you find the right tools. Find out if your organization is ready to use open source tools and how to find the right tools for you.

Jeff Jewell, ProtoTest LLC
Can You Find Bugs in Your Pajamas? Becoming an Effective Telecommuting Tester

Distributed development teams, including test engineers, are becoming more the norm than the
exception. Many individual testers and test managers perform some of their job duties from
home. Test engineer Andy Roth is an extreme example of this situation-telecommuting from his
Maryland home 300 miles from his company’s office. As a “tele-tester” Andy has become a
manager in addition to his testing duties, managing his personal test lab, his time, his peer
relationships, and even managing his manager. If you are considering becoming a tele-tester,
already are one, or manage tele-testers, join Andy for a discussion of what it takes to survive and
flourish in this environment. Find out the necessary prerequisites and qualities of successful teletesters
and the tools of the trade that make life easier and most productive.

  • The case for tele-testing and its limitations
Andy Roth, IBM Rational Software
Test Improvement for Highly Reliable NYSE Trading Systems

With billions of dollars changing hands every day, financial trading systems demand extremely high accuracy and reliability. So, how do you improve test process performance in the areas of time to market and efficiency and at the same time reduce failures? Over the last three years, using process and project measurement data as a guide, SIAC has focused on doing exactly that. Steve Boycan highlights the key elements of the process changes that have led to SIAC's current performance: the use of a rigorous requirements engineering process; controlled parallel and iterative work flows; changes to the level of abstraction in test documentation; emphasis on test planning, analysis, and design; causal analysis; and improving the test team's skills.

Steve Boycan, SIAC
It's Too Darn Big: Test Techniques for Gigantic Systems

Structuring test designs and prioritizing your test effort for large and complex software systems are daunting tasks, ones that have beaten many, very good test engineers. If you add concurrency issues and a distributed system architecture to the mix, some would simply throw up their hands. At Microsoft, where Keith Stobie plies his trade, that is not an option. Keith and others have reengineered their testing, employing dependency analysis for test design, model property static checking, "all pairs" configuration testing, robust unit testing, and more. They employ coverage to successfully help select and prioritize tests and make effective use of random testing including fuzz testing security. Finally, models of their systems help them generate good stochastic tests and act as test oracles for automation.

  • Test checklists for large, complex, distributed systems
Keith Stobie, Microsoft Corporation
Automate Acceptance Testing using Open Source FitNesse

FitNesse is an open source testing tool based on the Wiki Wiki Web and FIT (Framework for Integrated Tests). The Wiki Wiki Web is a collaboration tool in which anyone can create or change new pages to document or share any information. FIT is a framework and tool for creating automated acceptance tests. Joined together, FitNesse is a Web server-based tool for teams to easily and collaboratively create documents, specify tests, and run them. Micah Martin, co-creator of FitNesse, demonstrates how FitNesse can be used to create high-level feature tests that will drive development. Walk away with an understanding of how to automate acceptance testing in agile development and how it fits in with test-driven development.

  • What a Wiki is and how to use it
  • An introduction to the free FIT acceptance testing tool
  • Acceptance testing as part of the test-driven development practice
Micah Martin, Object Mentor, Inc.
Free Test Tools are Like a Box of Chocolates

You never know what you are going to get! Until you explore, it can be hard to tell whether a free, shareware, or open source tool is an abandoned and poorly documented research project or a robust powerhouse of a tool. In this information-filled presentation, Danny Faught shows you where open source and freeware tools fit within the overall test tool landscape. During this double session, Danny installs and tries out several tools right on the spot and shares tips on how to evaluate tools you find on the Web. Find out about licensing, maintenance, documentation, Web forums, bugs, and more. Discover the many different types of testing tools that are available for free and where to find them. Danny demonstrates examples of tools that you can put to use as soon as you get back to the office.

Danny Faught, Tejas Software Consulting
Using Personas to Improve Testing

Too often testers are thrown into the testing process without direct knowledge of the customers' behaviors and business process. As a tester, you need to think and act like a customer to make sure the software does-in an easy-to-use way-what the customer expects. By defining personas and using them to model the way real customers will use the software, you can have the complete customer view in designing test cases. Get the basics of how to implement customer personas, their limitations, and ways to create tests using them. See examples of good bugs found using personas while learning to write bug reports based on them.

  • What you need to know to develop customer personas
  • Use customer personas for designing test cases
  • The types of bugs found by using personas but missed by other techniques
Robyn Edgar, Microsoft
Mainframe-Class Recoverability Testing

The corollary to the axiom "all software has bugs" is "you will never find them all." Even if you could, hardware and environmental failures always are lurking about, waiting to crash the software. If you accept the premise that failures are inevitable, then part of your testing should confirm that the software gracefully recovers from failures, protecting customer data and minimizing downtime. In this presentation Scott Loveland helps you face the issue head-on by explaining novel ways to force failures and then test the software's ability to recover. Having spent his career with IBM in test for z/OS and its predecessors, MVS and OS/390, and most recently Linux, Scott reveals the tools and techniques proven for testing recoverability of industrial-strength software in the trenches of the IBM mainframe development lab.

  • Methods for injecting errors and monitoring recovery of large, complex systems
Scott Loveland, IBM Corporation
Testers and Testing in the Agile Development

You have heard about agile software development techniques such as eXtreme Programming (XP), Scrum, and Agile Modeling (AM). The industry is buzzing with everything from "this is the greatest thing ever" to "it's just hacking with a fancy new name." Comments like "there is no place for testers because developers and users do the testing now" and "testers play an important role in the agile methods" are both common. Scott Ambler, an early proponent of the agile movement, explains the fundamentals, values, and principles of agile development. He describes a range of agile techniques and explores many myths and misconceptions surrounding agility. Agile software development is real, it works, and it may be an important part of your future in testing. Better testing and improved quality are critical aspects of agile software development, but the roles of traditional testers and QA professionals on agile projects remain unclear.

Scott Ambler, Ronin International, Inc.
A Strategic Approach - "Beta the Business"

Beta testing is an industry standard practice to obtain user feedback prior to general availability of software. Have you ever considered that the Beta release can be used to validate the software's value to customers and application users? Extending the Beta concept will result in higher customer satisfaction (and higher revenue for commercial products). Also, you can employ Beta testing to evaluate not only the software product, but the distribution (and sales) process, training, customer support, and usage within your customers' environments. Far beyond just finding defects in the product, you can focus Beta testing on how well the software is meeting your customers' needs. What does that mean to the Development team and the organization as a whole? What are the risks and challenges that we face? What are the rewards?

Pete Conway, EMC Corporation

Pages

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.