Articles

Deception and Self-deception in Software Testing

Untruths about software testing are common. Managers, programmers, and other people on software projects don't always mean to deceive. Quite often, they fool themselves into believing what they want to believe. But sometimes they lie deliberately and even pressure testers to lie. And testers can also practice deceptions and self-deceptions of their own. In this column, Fiona Charles describes four categories of common deceptions and self-deceptions in testing and outlines what testers need to do to address them.

Fiona Charles's picture Fiona Charles
Distributed Agile Day to Day

"Distributed" isn't a word that always has appeared favorably in works about agile methodology. After all, the proximity of agile team members while working is highly regarded. In this article, an excerpt of which originally appeared in the May 2009 Iterations eNewsletter, Chris McMahon takes a look at how "agile" and "distributed" can work together successfully.

Chris McMahon's picture Chris McMahon
Time to Let Go of Obsolete Jobs

Town crier, elevator operator, gas lamp lighter, carbon paper distributor, telegraph operator—you probably haven't seen many help wanted ads for these occupations lately. Why? Because these occupations are gone—obsolete, unnecessary, outdated. We just don't need them anymore. When new paradigms are created, new jobs are often created with them. And sometimes, existing jobs are no longer relevant.

Lee Copeland's picture Lee Copeland
Scrum: Using High-impact Teamwork to Tackle Software Development Projects

For organizations trying to do more with less in the current economy, knowing where to turn for help can be a big question mark. But as Laszlo Szalvay of Danube explains, Scrum is one possible solution. This agile method of project management is quickly transforming the way software is developed by bringing teams together through frequent communication and high-impact collaboration, resulting in increased productivity and an ability to build a better product faster.

Laszlo Szalvay's picture Laszlo Szalvay
What's So Special About Specialists?

If two projects in your organization require specific expertise that only one employee has, what do you do? Projects need to stay on track, but one person certainly can't be everywhere—or even two places—at once. In this column, Johanna Rothman shares a story of an organization stuck in the specialist mindset and offers some tips on how to escape if you're stuck there, too.

Johanna Rothman's picture Johanna Rothman
Do You Know Why You Are Doing That?

It's easy to get caught up in the inertia of a project and forget to ask exactly what we are developing, who our customers are, and what their goals with our software might be. Few software projects have the time and budget to figure out what their project is through trial and error. Getting clarity on project focus not only helps productivity, working to create software that people actually need increases our chances for success.

Jonathan Kohl's picture Jonathan Kohl
Three Pounds of Manure in a Two-Pound Sack

Multitasking is not a magical cure for getting too much work done by too few resources. Listen in as Payson Hall eavesdrops on a coaching session between two managers about how to assign and prioritize work.

Payson Hall's picture Payson Hall
Learning from Experience: Software Testers Need More than Book Learning

People often point to requirements documents and process manuals as ways to guide a new tester. Research into knowledge transfer, as described in The Social Life of Information, suggests that there is much more to the process of learning. Michael Bolton describes his own experiences on a new project, noting how the documentation helped ... and didn't.

Michael Bolton's picture Michael Bolton
Resistance Is Futile

Why do so many people resist change, even when that change will be for the better? It's simple, really. Every change ends something, and endings mean loss. People don't like loss. Even the best changes mean something familiar will end.

Lee Copeland's picture Lee Copeland
What's It Mean? ...Reducing Imprecision to Improve Verification

Imprecise language makes understanding and, therefore, software verification more difficult. This article describes techniques for detecting and repairing vague and ambiguous software requirements.

David Gelperin's picture David Gelperin

Pages

AgileConnection is a TechWell community.

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