Conference Presentations

Agile Software Development: The Home of 31 Flavors

You've heard of eXtreme Programming (XP) and perhaps Scrum. How about Crystal Clear, Adaptive Software Development, Dynamic Systems Development Method, Rational Unified Process for Agile Development, and Feature Driven Development? These are some of the many variations of Agile development methods. Join Jeff McKenna as he explores the many flavors of Agile development methods and explains the similarities and differences. Find out what aspects of Agile development can help your organization’s development team in its particular environment. If you are considering Agile development and need to decide in which direction to go, this session is for you. Although a one-hour session cannot provide all the information you will need, you can explore what is common-the philosophy, the values, the characteristics-and what is different-the methods, the coverage, the costs-about different Agile approaches.

Jeff McKenna, Agile Action
The QA/Testing Perspective on Software Security

Most everyone now realizes that we cannot solve security vulnerabilities with firewalls, virus scanners, and other tactics that build an electronic “moat” around systems. According to Julian Harty, security is not an operational issue, not a developer issue, and not a testing issue. It is a systems issue that you must focus on throughout the software’s life. From a QA/testing perspective, we need to look early in the development process for adequate security requirements. Then, we should assess the designs for vulnerabilities and participate in security code reviews. When specialized, security tests find bugs that get past our early prevention efforts, causal analysis helps prevent the recurring security defects. Dig into system security issues with Julian and learn about manual techniques, commercial software, and home-brew automation tools to help you find security vulnerabilities-before the bad guys do.

Julian Harty, Commercetest Limited
Moving from Test-Last to Test-Driven Development

Has it ever happened to you? Due to an immovable delivery schedule, time for testing is squeezed and long hours are the norm at the end of a project. Well, let’s move the testing forward in the development process. In fact, teams are learning that, rather than relegating tests to near the end of a project, there are huge benefits to adopting a test-driven process-a more maintainable and robust design, testable code, fewer defects, and a cross-functional highperformance team. By combining unit test-driven and acceptance test-driven processes in a more agile setting, you can deliver on shorter schedules without sacrificing quality. Mike Cohn shares his experiences with test-driven development, including the flexibility it offers for dealing with schedule pressure, the role of documentation, and the steps for getting started. He also describes a test “pyramid” and how to separate test specifications from test writing.

Mike Cohn, Mountain Goat Software
Quality Interactions: Bulding Effective Working Relationships

As software professionals, we all care about quality. We focus our efforts on building quality into the code and testing to assess quality and find errors before our customers do. However, there is an important element of quality that comes before all that and is critical to delivering reliable software: quality working relationships and quality interactions. Esther Derby covers pragmatic strategies for building, strengthening, and maintaining working relationships with all stakeholders-managers, customers, team members, and peers. The first step is to build a foundation of trust and respect. Then, we must focus on interests rather than positions and seek joint solutions to problems. We should use the richest communication channel available for our interactions and make a generous interpretation of others’ actions.

Esther Derby, Esther Derby Associates Inc
Evaluating Requirements for Testability

For a test engineer, perhaps the most important measure of requirements quality is testability. By improving testability during requirements development, you not only will make test design easier, but you also will have gone a long way toward building better software for less cost. Learn methods to identify the requirements problems that reduce or improve testability: ambiguity, incompleteness, inconsistency, incorrectness, and "compoundness." This method first was used successfully in a very large payroll system development project and has since been practiced in both large and small development projects. From this session take away a spreadsheet-based method for tracking requirements testability throughout the project, and see examples from an Access database that can be used for further requirements analysis.

  • How to analyze requirements for attributes that increase testability
Rodger Drabick, Lockheed Martin Transportation & Security Solutions
Quality Assurance as a Service Organization

"QA is the bottleneck” ... "Why does QA take so long?" ... "You need to test faster." Often, key project stakeholders either do not understand QA or have difficulty quantifying the effects that increasing or decreasing test time will have on the project. First American CREDCO found the solution was to turn QA into a full service organization, complete with a "Quality Rainbow" menu of options to be purchased. Want it quicker and willing to accept a higher risk? Then select from Column 1. Want low risk and willing to take the time to ensure the product is pristine? Then select from Column 5. Whether your test team is small or large, you can learn to "in-source" QA services, set time and efforts expectations up front, and measure the value of QA activities so that QA does not become a roadblock to project success.

  • A method to specify and quantify the services provided by a QA group
Sandi Oswalt, First American Credco
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
STARWEST 2004: The Business Case for Software Quality

Software quality is first and foremost a business issue, and testing is often the last line of defense. The staffing, tools, and processes that we use to support our customers are fundamental to achieving quality-and their business objectives-in a cost-effective manner. Significantly improving software quality in an organization is a major project and not for the faint of heart. Such an improvement project must have a positive return on investment and a good likelihood of success. In this talk Richard Bender addresses fourteen major areas of concern for software quality and how they can impact the business. He includes industry statistics to help you make the case and weaves into the solution set the importance of good requirements and integrated testing.

  • Fourteen reasons to improve software quality
  • The ROI of software testing and quality improvement
  • How to achieve buy-in for quality improvement
Richard Bender, Bender RBT Inc.
Asia as a Test Outsource Center

Outsourcing testing software projects to countries in Asia is a trend that is here to stay. You have a growing number of choices for an outsourcing country in Asia-India, China, Taipei, Korea, and others. Although India currently dominates the scene and both Taipei and Korea have historically provided excellent quality, though at a higher cost, China is quickly moving to become the leader with even lower billing rates and a large number of experienced and educated engineers. In this session, Jacob Hsu offers an overview of the Asian outsource scene including the latest trends and data. Take away a checklist of best practices for successfully outsourcing product testing to Asia, including how to manage distributed testing teams, how to overcome language/cultural issues by country, and what types of testing should (and should not) be outsourced offshore.

Jacob Hsu, Symbio Group
The Four Schools of Software Testing

Testing experts often disagree. Why? Different testers have different understandings of the role and mission of software testing. This session presents four schools of software testing, each with a different understanding of the purpose and foundation of testing. One school sees testing based on mathematics. Another sees it as an activity that needs to be planned and managed. A third sees it as a basis for understanding and improving software process. And the fourth sees it as an intelligence service, providing actionable information. These all sound reasonable enough, but each has provided the foundation for a school of testing and different hierarchies of values. Learn more about the four schools of software testing and the effects they have on your life. You may find that you, your colleagues, and management are operating in different schools.

Bret Pettichord, ThoughtWorks

Pages

CMCrossroads is a TechWell community.

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