Better Software Magazine Articles

That's No Reason to Automate!

Automating test execution is supposed to give tremendous benefits, but often gives disappointing results—because it hasn’t met the objectives set for it. The fault may not lie with the automation itself, but with the objectives you are attempting to achieve. Aiming at the wrong target does not bring success! For example, objectives for automation are often confused with objectives for testing, but they should be different. In this article, learn how to avoid the most insidious traps and how to recognize good objectives for automation.

Software to Go: Developing Applications for a Wireless World

The mobile arena is in constant evolution, changing the way we approach software development both from a business and a technical perspective. Taking the time to set your plan can make the difference between success and just a good idea. In this article, Luis Carvalho shares some guidelines for bringing new applications into the mobile ecosystem.

Luis Miguel Carvalho
Testing the Contract Metaphor

A contract represents a service agreement between two parties, the bounded provision of service by one party to the other. This metaphor also applies to how we can think about the relationship between unit tests and code. A contractual mindset encourages test names and partitioning based on clear propositions, backed up with executable examples.

Kevlin Henney's picture Kevlin Henney
Independent Testers? Or Independent Thinkers?

In this article, Lisa Crispin recalls a time when testers alone were solely responsible for software quality, and compares that to more modern thinking where collaboration between developers and testers is king. Software quality is everyone's job, sometimes it takes independence to get there.

Lisa Crispin's picture Lisa Crispin
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
Crash Course in Proficient Presenting

Ben has to make a presentation at the next all-hands meeting. It'll be his very first presentation, and just thinking about it has sent him into a panic. Fortunately, he has the support of an experienced speaker and coach who offers advice and encouragement to help him become a proficient, panic-free presenter.

Naomi Karten's picture Naomi Karten
GUT Instinct

Whether or not a unit test is considered good is not simply about what it tests: It is also very much about "how" it tests. Is the test readable and maintainable? Does it define the expected behavior or merely assume it? To be sustainable, the style of a unit test is just as important as the style of any other code. Perhaps a little surprisingly, the most commonly favored test partitioning style does not meet these expectations.

Kevlin Henney's picture Kevlin Henney
Virtual Realities: Best Practices and Common Pitfalls of Adopting Virtual Lab Automation

Virtual Lab Automation (VLA) is a ground-breaking technology that promises quantifiable benefits for application development and test organizations, including faster lab deployment, less manual setup work, greater resource flexibility and utilization, and easier reproduction of defects. In this article, Skytap's Ian Knox discusses the best practices and common pitfalls associated with adopting a VLA solution. In addition, he outlines the steps to evaluate a virtualization solution for your test organization and provides further resources to help you get started.

Ian Knox's picture Ian Knox
Continuous Integration and Testing

Lisa Crispin explains in this article how CI has become an absolute necessity for any software development team in this day and age. For those who have yet to fully embrace CI, this article gives you some great reasons you should, along with some helpful resources to get you started.

Lisa Crispin's picture Lisa Crispin
The Trouble with Derivation

This article discusses the dark underbelly of derivation: the fragile base class. It's possible to modify a base class in such a way that, even though you've improved its implementation and all your tests work just fine, you've nonetheless damaged the derived classes, perhaps fatally.

Allen I. Holub's picture Allen I. Holub

Pages

AgileConnection is a TechWell community.

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