Simplicity


The state of being simple, uncomplicated, or uncompounded; directness of expression

In Extreme Programming Explained, Kent Beck advises Extreme Programmers to always do the simplest thing that could possibly work. Please note that this not the "simplest thing that works" but the "simplest thing that could possibly work." In other words, nothing requires that the first thing you try must work. The admonishment is to make sure that the first thing you try is simple.

This can be hard for those who have worked as testers in traditional software development environments who may feel an obligation to test every line of software as thoroughly as possible, to make sure it meets the highest standard for quality. The truth is, though, it's not about your standards. It's about the customer's standards. Do the simplest test you can to verify that a piece of functionality is there or that the software meets the customer's standard for robustness. If a unit test covers an acceptance test, don't repeat the test. If the customer raises the quality bar in the next iteration, you can add more tests or more complexity to existing tests to handle it. Why not test as much as you want (or more than the minimum necessary)? Because you don't own your resources, the customer does.

Simplicity with respect to testing also means choosing test tools lightweight enough for XP. Your tools should let you quickly automate testing for critical business functions and then add tests as your resources permit.

Embracing simplicity also requires a lot of courage. Testing "just enough," gaining the best value in a competitive situation without exceeding available resources, is tough. It feels safer to try to test everything. Deciding what needs to be verified can be daunting.



Testing Extreme Programming
Testing Extreme Programming
ISBN: 0321113551
EAN: 2147483647
Year: 2005
Pages: 238

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net