Conference Presentations

SOX and HIPPA and RESPA, Oh My! Mastering Software Compliance

Determining whether legal and contractual issues apply to your development efforts isn't always simple. There may be some obvious factors-industry regulations, service level agreements (SLAs), and state or federal agency oversight. However, other factors may not be so obvious. Even today, the Sarbanes-Oxley Act is largely legally untested, subjecting your company to unknown legal risks. Examining legal, compliance, and audit issues throughout the QA process lifecycle, Elle Ringham discusses the right questions to ask and what to do with the answers. She provides guidelines you need to work with stakeholders, developers, attorneys, and auditors. Incorporate legal requirements and compliance issues as part of the architecture, development process, and for all strategic business initiatives.

Elle Ringham, Cognizant
A Toolkit for Assessing SOA Readiness

Before charging "full speed ahead" into the land of service-oriented architecture (SOA), you need help to ensure success and mitigate the risks inherent in such major systems changes. Jerry Smith provides proven tools for assessing SOA readiness and outlines the essential steps to implementing SOA. Jerry presents reference SOA architectures that demonstrate solid standards and specifications to compare with your implementation plans. He introduces an SOA Maturity Model to help you understand your current organizational and technological state. The SOA Maturity Model is a communications tool that outlines how the organization’s SOA implementation will evolve along both business and technical lines. Jerry outlines the various stages the model entails and how to apply it so that technical and organizational changes are easily coordinated across the enterprise.

Jerry Smith, Symphony Services
Eight Steps to a Virtualized Test Environment

Virtualized software test environments deliver quantifiable benefits-lower lab costs, faster test cycles, and lower IT support overhead. New capabilities in virtualization and virtual test lab solutions are being brought to market by vendors such as VMWare, Surgient, VM Logix, and illumita. These tools promise compelling productivity improvements: richer test scope, tighter lab integration with test tools and processes, and on-demand test infrastructure. John Janakiraman describes capabilities and benefits of virtual test lab environments, offers guidance in adopting a virtual test lab, and shares lessons learned from real-world implementations. John walks you through eight important steps to adopting a virtualized environment in your test lab. As John shares the lessons he's learned implementing virtual test labs, find out if a virtualized lab environment is right for your organization.

John Janakiraman, Illumita
Ten Principles of an Agile Tester

Everyone on an agile team does testing. If that's true, what's so special about an agile tester? If I define myself as a tester on an agile team, what does that really mean? Do agile testers need skill sets different from testers on traditional teams? What guides agile testers in their daily activities? Lisa Crispin believes that when it comes to agile testers, skills are important-but attitude is everything. The best agile testers have a results-oriented, customer-focused, collaborative, and creative mindset that makes them successful in an agile development environment. Lisa explains how you can apply ten agile principles to add value on agile teams, or on any software development team for that matter. The ten principles of an agile tester include areas such as feedback, communication, simplicity, continuous improvement, and responding to change.

Lisa Crispin, ePlan Services, Inc.
Early Defect Detection for Software Analysis and Design

For large software development projects, the most important decisions-and the most expensive mistakes-are made at the beginning of the project. At the same time, the initial quality assurance activity is minimal but grows as development moves forward. This results in costly rework (often hidden) in the later stages of the project. Vladimir Pavlov explains how to reduce delays between bug insertions and bug fixes by allocating quality activities over the entire project in proportion to the importance of potential errors. Vladimir describes practical techniques to discover and fix critical analysis and design mistakes almost immediately after their introduction-not in the late phases where they are the most expensive to resolve. He also explains how to integrate these techniques into software development lifecycles including, Rational Unified Process, Open Unified Process, and Microsoft Solutions Framework.

Vladimir Pavlov, International Software & Productivity Engineer Institution
Lessons Learned in Programmer Testing

It has been more than six years since the first release of NUnit 2.0, an open source unit testing tool. In that time, literally millions of tests have been written using the tool. Many of these tests have become and continue to be invaluable resources for their teams. Unfortunately, many other NUnit-based tests have not been maintained and are now viewed as having been a waste of effort from the beginning. What separates tests that are used, maintained, and highly valued from tests that are quickly discarded? James Newkirk describes seven key ideas that are proven to increase the readability of NUnit tests and make them much easier to maintain. Learn about the impact of test fixture size and dependency injection on unit testing. James demonstrates how to use the attributes [ExpectedException], [Setup], and [TearDown] to make tests more readable.

James Newkirk, Microsoft Corporation
Attacking Waste in Software: Three Practices We Must Embrace Now

One of the seven principles of Lean Thinking is "eliminate waste." Eliminating waste means minimizing the cost of the resources we use to deliver software to our stakeholders. Jean Tabaka proposes three pivotal practices that we must embrace to aggressively attack waste in software delivery—Software as a Service (SaaS), Community, and Fast Feature Throughput. SaaS eliminates waste by deploying software-based services without the cost inherent in traditional software delivery—materials, shipping, time delay, and more. Community involves stakeholders working together to create products rather than competing among themselves for limited resources. Community eliminates waste by democratizing software development to obviate the need for multiple systems with the same functionality. Fast Feature Throughput refers to development methods that embrace change and quickly deliver value to customers.

Jean Tabaka, Rally Software Development
Man and Machine: Combining Automation Tools with the Human Mind

When we think of automated testing, we usually think of unattended tests that are executed by computer software. When we think of manual testing, we think of a human being executing tests without the aid of a machine. These activities need not be mutually exclusive-we can use automation tools to help us as we undertake manual testing. Instead of thinking of tests as either automated or manual, Jonathan Kohl explores areas where you can blend the activities. You might ask questions such as: "To what extent will test automation help me in my testing work?" or "What do we lose if we run these tests without human supervision?" Jonathan discusses and demonstrates a different way to think about test automation, as an intersection between automated and manual testing. He highlights techniques of this hybrid testing approach, providing examples from other disciplines and from his own experiences.

Jonathan Kohl, Kohl Concepts Inc.
Making User Acceptance a Testing Process, Not a Testing Phase

Historically, the user acceptance test (UAT) is the last test we perform before product delivery. Because UAT traditionally demonstrates the entire product, it cannot be done until all other development and testing activities have been completed. This means we are not receiving crucial customer feedback on product acceptability until late in the project life cycle-often much too late to stay on time and within budget when critical design gaps are discovered. Donna McLeod knows it doesn't have to be this way. We can change that mind set and perform UAT on parts of the system as it is being developed. By beginning UAT earlier, we get user feedback earlier when there is still time to make changes. Learn to build confidence earlier and become champions for success by bringing customers and solutions together early and often.

  • What is subject to user acceptance test
Donna McLeod, Safeway Inc
Root Cause Analysis: Dealing with Problems, Not Symptoms

Test managers often choose solutions to problems without sufficient analysis, resulting in a cover-up of the symptom rather than a solution to the underlying problem. Later, the problem may surface again in a different disguise, and we may mishandle it again, just as we did initially. Alon Linetzki describes a simple process you can use to identify the root causes of problems and create an appropriate solution to eliminate them. Alon shows how he enhanced the classic root cause analysis method to create an approach to finding insidious problems in software and processes. His method includes ways to differentiate symptoms from problems, understand the connection between them, and determine the strength and direction of that connection. Alon illustrates this method with data from two testing projects and shares the lessons learned along the way.

Alon Linetzki, The Sela Group

Pages

CMCrossroads is a TechWell community.

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