|
Specification Phase:
One mark of a good product specification and/or software specification is that every requirement is testable and everything that should be tested should be listed as a requirement. In fact, the first draft of the test plan can and should be written alongside the specification. (The first draft of the user manual can and should be written at this time as well. It is a crucial part of the testing.)
MicroTools can help you make sure your specification/s is/are test ready by translating the specification/s and user documentation into a test plan. MicroTools can also help you in not getting bogged down during the specification phase with issues which are really design questions subject to prototyping and feasibility testing that should be reserved to the next phase.
Design Phase:
The design plan needs to be firmly rooted in reality. How is this done? You bet - testing. This is the time to reduce your risk. Can your specification be met with today's technologies? Will it be fast enough? Strong enough? Can it handle the capacity needed? Will the tool-sets you plan to use work together? It is far less expensive and embarrassing to learn now that the answer to these questions is no.
As areas of risk are identified, the final test plan is modified to put more pressure on those areas.
MicroTools can help you build prototypes, utilities and benchmarking tools to test the assumptions of your design. MicroTools can also help you plan your coding strategy, recommending areas of particular risk that should be coded first so as to reduce their potential impact.
Coding Phase:
Testing should be done throughout coding. This includes module testing, iterative testing of features as portions of the product are completed and code reviews at major milestones.
Again, as areas of risk are identified, the final test plan is modified to put more pressure on those areas.
We completely agree with the Extreme Programming principle that all modules should be unit tested. But is anyone doing it?
We are developers ourselves and we can complete all these tasks for you. Our experience in real-time embedded systems will be of particular benefit to your project during code reviews.
Testing Phase:
Hopefully, we've convinced you that every phase is the testing phase. Still, there is no avoiding the need for the conventional "final" test.
Here, MicroTools brings together the best of industry standards; your company's quality assurance process and documentation; and our creativity and tools. MicroTools works with companies with all different quality assurance philosophies, from Six Sigma to completely in-house standards. We will test every aspect of your product: Unit Testing, Integration Testing, System Testing, Performance Testing, Acceptance Testing, Documentation Testing…even the packaging, web site and shipment methods, if you would like. We use the test plans we developed in the specification phase as well as creatively (deviously) beating on the product to find problems. We use both black box and white box methods to shake the problems loose. We use testing tools we have developed in-house like Poc-it and Key Commander. We also use your company's problem tracking system rather than pushing you to change to ours.
Maintenance Phase:
Once the product is in the field, when problems arise, it is critical to be able to reproduce and isolate a problem in the field. Our automated testing tools as well as the White Box methods available to us as developers can be very effective in this process. Often times, our customers prefer to stay out of maintenance altogether and rely on us to interface with dealers, distributors or even customers directly to find and solve problems.
We can provide you a fixed price proposal to perform any or all of these functions.
|