Better Software Conference & EXPO 2009


Creating Habitable Code

A major challenge for software organizations is to create software that can continue to adapt and change over time-a codebase the team can live with "forever." Jeffrey Fredrick and Paul Julius review the concepts and features of CruiseControl, a popular continuous integration tool that provides an architecture for habitable code. CruiseControl is an open source success story, contributed to by more than 200 different developers and downloaded more than 400,000 times.

Jeffrey Fredrick, Independent Consultant
Defining Software Quality

"Quality" is one of the most misunderstood and elusive aspects of system development. Ask five people to define quality and you'll probably get five different answers. Although everyone thinks he knows what it is, very few can really define it in context. High quality software doesn't just happen-quality must be built in from the start. In this highly interactive presentation, Tom Staab defines quality and explains why quality planning is important.

Thomas Staab, Windridge International LLC
Demystifying Virtual Lab Management

The benefits of a virtualized lab environment for development and test teams are compelling and quantifiable-rapid provisioning and tear down of environments, faster test cycles, and powerful new capabilities to resolve defects. Although some application development teams have experimented with virtual machines and have seen some of the benefits, they've also discovered issues with virtual machine "sprawl," difficulties administering the lab, and lack of virtual private networking.

Ian Knox, Skytap Inc
Ensuring Quality Requirements

Quality assurance is more than just testing software through processing a series of controlled inputs and outputs. It must also include an assessment of all the deliverables associated with the project. Developers and testers often view software documentation as merely a source of information, not as artifacts that require evaluation. All software documentation should undergo a rigorous quality assessment just as the actual software is subject to comprehensive testing.

Donald Haynes, Synova
Five Test Automation Fallacies that Will Make You Sick

Five common fallacies about test automation can leave even the most experienced test and development teams severely ill. If allowed to go unchallenged, these beliefs will almost guarantee the death of an automation effort. The five fallacies are: (1) Automated tests find many bugs-they don't. (2) Manual tests make good automated tests-they don't. (3) You know what the expected results are-often you don't. (4) Checking actual against expected is simple-it isn't. (5) More automated regression tests are always better-they aren't.

Douglas Hoffman, Software Quality Methods, LLC.
Getting Ready for Your First Iteration - Cancelled

Many agilists take little time to prepare for the first planning session of their first iteration on a new project. They dive right into the "work" and, sometimes, ultimately deliver software that lacks much value. Some newly formed teams believe that collocation breeds instant success and altogether ignore early planning. While sitting together always helps, it does not mean that people spontaneously collaborate to create sustainable value.

David Hussman, DevJam

Getting Started with Static Analysis

Static analysis is a technique for finding defects in code without executing it. Static analysis tools are easy to use because no test cases or manual code reviews are needed. Static analysis technology has advanced significantly in the past few years. Although the use of this technique is increasing, many misconceptions still exist about the capabilities of advanced static analysis tools. Paul Anderson describes the latest breed of static analysis tools, explains how they work, and clarifies their strengths and limitations.

Paul Anderson, GrammaTech, Inc.
Getting to WOW! Gathering User Feedback for Better Designs

Today's users are savvier than ever-you can't hide poor design behind fancy features. A good user experience isn't optional anymore-it's mandatory. But if you ask four users how to improve a product, you'll get four different answers, and you'll be lucky if one of those is helpful. When designing the user experience of your products, the challenge is to understand the difference between how customers say they will use a product and how they will actually use it. To accomplish this, we must research our users and gather information.

Scott Plewes, Macadamian Technologies
Guiding Your Personal Life: "Plan-driven" or "Agile"

Some interpreters of history believe that the Industrial Age could not have happened without coffee and tea. That daily jolt of caffeine enabled workers to be more in control of their waking hours-not to mention killing the nasties in the drinking water. While the Industrial Age was all about staying awake and working long hours, cognitive psychologists tell us that working short cycles with frequent breaks is not only healthier but also more productive for knowledge workers.

Linda Rising, Independent Consultant

How Others See You: Seeking Personal Feedback

Has this ever happened to you? You've just finished an important presentation. As you return to your seat, a colleague leans over and whispers, "You've got spinach in your teeth." Even if you haven't had this experience, you've probably lived through something similar in which you're the last to know something that is obvious to everyone else. Unfortunately, we never exactly see ourselves as others see us. Gaining insight into how we affect others and how they view us provides us with new awareness and greater choices about how we act.

Esther Derby, Esther Derby Associates Inc


StickyMinds is a TechWell community.

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