Better Software Conference & EXPO 2005


How Testers Can Fill the Requirements Gap

Testers frequently are frustrated by having to test a system without an adequate understanding of the expected results of the tests, often because the requirements are not well-documented. Therefore, good testers learn how to discover the requirements they and developers need to do their jobs. Robin Goldsmith identifies approaches that testers can use to reverse engineer requirements and also highlights the need to differentiate and focus on user (functional) and system (non-functional) requirements.

Robin Goldsmith, Go Pro Management, Inc.

Introduction to Agile Coaching Techniques

In Agile processes such as Scrum and eXtreme Programming (XP), there is a coach whose primary function is to shepherd the process along and help keep everyone on the same page. On a traditional software team, there may be a product manager, project manager, technical lead, software architect, or even a user who informally takes on the role of coach. Based on his and the experiences of others as coaches, Christian Sepulveda shares his insights on this important role and the patterns that he employs as a coach.

Christian Sepulveda, Nominum Inc
Key Project Planning and Testing Issues for Internationalization

When preparing for internationalization of software, officially called W3C Internationalization (I18N), preparation and careful planning are the keys to high productivity during and after the initial development project. By putting in more effort up front, less effort will be required in subsequent localization activities. Also, I18N pseudo-localization testing will help you ensure that you can deliver localized versions of your product in the least amount of time.

Alym Rayani, The Symbio Group
Leading Cultural Change When Implementing Process Improvements

When we are part of an improvement initiative such as CMMI®, Six Sigma, or Agile practices, we often focus on the technical aspects and pay little attention to the people and cultural issues. Major change produces a significant disruption of expectations whether the change is perceived as positive or negative. So, you need a defined process to help ensure that your improvement initiative achieves its goals.

Jennifer Bonine, Express Scripts

Lean Software Contracts

Agile development is great, but it cannot possibly be for you because your software development is done under a contract-outsourced or under an internal service agreement. Right? Wrong! Similar to the way automobile manufacturers have embraced lean manufacturing, you can escape the deadly waterfall development process even in contracted development environments. Lean manufacturing companies have learned over the past twenty years that trust with suppliers lies in specific actions and expectations, not in interpersonal relationships.

Mary Poppendieck, Poppendieck LLC

Let's Do It Over Again: Configuration Mismanagement Techniques

Being told about good configuration management practices is boring and does not do this vital process justice. What if you do it badly, as many development groups do today? The ultimate failure in managing the configuration of a software product is having it so horribly out of control that it cannot be rebuilt and must be rewritten from scratch. Few developers can claim this spectacular achievement, but many projects employ configuration management practices that result in rework and a loss of reputation with customers.

Mark Pellegrini, Georgia Tech Research Institute
Life Rafts for a Drowning Project

When time is of the essence and stress is high, it's easy to find your team drowning under the weight of impossible deadlines and spiraling requirements. Unfortunately, more projects go under due to poor management than for any other reason-and common responses to problems often make the situation worse, rather than better. The original sin of the software industry is the “tight, but doable” project schedule, caused by everything from market pressures to management perversity.

Peter Clark, Jervis B. Webb Co
Lipstick on a Pig - How Illusion Leads to Crisis in Real World Projects

Change, ambiguity, and risk are key issues whether you are running a software project, managing a development team, or leading an entire organization. We learn it over and over again. It's not a matter of "if" change will happen-it's a matter of "when." When a crisis inevitably arrives, how do you respond?

Andy Kaufman, Institute for Leadership Excellence and Development

Managing and Sizing Functional Requirements

The ability to clearly define user requirements is critical to the overall success of many software projects. You need effective requirements development and management skills and processes to identify, describe, and record the functions requested by end users. With these in place you have the information necessary to assess project complexity and make reasonable size and effort estimates. David Herron describes reliable requirements gathering and documentation techniques including context diagrams, use cases, and mind maps.

David Herron, The David Consulting Group

Model Driven Architecture (MDA) - What's in it for Developers and Testers?

According to the Object Management Group (OMG), the benefits of Model Driven Architecture (MDA) are significant to businesses and developers alike: reduced overall product life costs, faster development, better application quality, rapid deployment of new technology, and a higher ROI on new technology. In short, the hype is that MDA enables system integration strategies that are better, faster, and cheaper.

Timothy Korson, QualSys Solutions


CMCrossroads is a TechWell community.

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