The fundamentals of software testing

· Static black-box testing involves examining the specification and looking for problems before they get written into the software.

· Dynamic black-box testing involves testing the software without knowing how it works.

· Static white-box testing involves examining the details of the written code through formal reviews and inspections.

· Dynamic white-box testing involves testing the software when you can see how it works and basing your tests on that information.

Here's a list of seven important traits common to a good UI. It doesn't matter if the UI is on a digital watch or is the Mac OS X interface, they all still apply.

· Follows standards and guidelines

· Intuitive

· Consistent

· Flexible

· Comfortable

· Correct

· Useful

When you're testing a user interface, consider the following things and how they might apply to gauging how intuitive your software is:

· Is the user interface clean, unobtrusive, not busy? The UI shouldn't get in the way of what you want to do. The functions you need or the response you're looking for should be obvious and be there when you expect them.

· Is the UI organized and laid out well? Does it allow you to easily get from one function to another? Is what to do next obvious? At any point can you decide to do nothing or even back up or back out? Are your inputs acknowledged? Do the menus or windows go too deep?

· Is there excessive functionality? Does the software attempt to do too much, either as a whole or in part? Do too many features complicate your work? Do you feel like you're getting information overload?

· If all else fails, does the help system really help you?