Rice Consulting Services specializes in software testing training and software testing consulting. We equip you to test your systems better and faster so you can focus on your business instead of technology problems.
With over 30 years experience in building and testing IT systems, we can bring the expertise you need to be successful in meeting your business goals and increasing profits.

| My Consulting Approach |
|
|
| Written by Administrator |
| Monday, 02 March 2009 20:25 |
|
A traditional approach to testing systems and software is to perform testing at the end of a project, just before the system is delivered to the customer. This is sometimes called "The Big Bang" approach to testing.
A problem with the big bang approach is that the end of a project is one of the most costly times to find and correct defects. I promote the concept of full life cycle testing to find defects throughout the development project. This includes inspections, walkthroughs, unit and integration testing.
Optimizing the Testing Process It is not unusual for an organization to spend 50% or more of the cost of developing a system on testing-related tasks. By making testing a process instead of an art or a craft, waste and redundancy can be reduced. It is possible to reduce the cost of testing while increasing the effectiveness of testing.
Who Should Perform Testing? A point of debate is, "Which is more effective - independent testing or testing by developers?" I believe that the answer depends on the organizational readiness to perform testing. In some organizations, the developers do not have the processes, training, skills, or tools to effectively perform testing. In these cases, testing might be performed by an independent group until the developers increase their testing readiness.
Ideally, Quality Control (i.e., testing and inspections) should be the responsibility of the people producing a product and should be performed throughout the construction process. A drawback of independent testing is that it sometimes fosters a mindset where developers assume that someone else will find their defects.
Since the end-users of a system are the people who will be using the information system in the real world, their involvement is critical to the project's success. I believe the end-users should be involved in verifying user requirements, reviewing system design, prototyping, system testing and user acceptance testing.
User acceptance testing is a specialty of Rice Consulting, with training courses available and a methodology for user acceptance testing.
A Process for Testing I understand that testing has many challenges. In fact, I co-wrote a book about the top ten challenges in testing. One of the challenges is testing all possible conditions. Except in very simple cases, it is impossible to test every possible combination of conditions.
The best approach is to use a defined process for testing that provides a high degree of assurance that the system will meet its intended purpose. I use testing processes that have been tried and proven in a cross section of organizations worldwide.
The Role of Automated Test Tools Automated testing tools have provided a way for testers to repeat mundane testing tasks. However, it is important to understand that an environment for automated testing must exist for automated testing tools to be effective.
I can help lead you through the maze of activities that should be performed before, during and after an automated test tool is installed.
I know test tools! My test tool database contains recent information on most test tools. I can help you find the right tool and make the the most of it. Perhaps you already have a test tool, but are not using it effectively. I can work with you to isolate the problems and get on track with automated testing!
How Much Testing Is Enough? Since there are so many conceivable test conditions, it is possible to test forever and still not completely test a software module or system. I believe that testing should be based on risk. That is, the higher risk system components are tested at a higher priority than lower risk components. A risk assessment is performed to determine where the high risk areas are in a system.
Another measure of when testing is complete is to observe defect trends. The defect rate should level off as testing nears completion.
Many times, the problem is not one of enough testing - it is a matter of not testing effectively with the resources and time at hand!
Putting It All Together You can't test quality into software. Testing can help find the defects that might exist, but much can be done to prevent defects from ever occurring. In addition, the results of testing can be used to refine the development and testing process.
Most testing problems are not technical in nature - they are human problems, such as:
The human problems often require cultural change in an organization, and cultural change takes time. I can be an independent agent of change in your organization by working with management, developers and users to actually put the principles of information quality into practice.
My approach to software quality and testing enables organizations to build and deploy quality information systems, even in times of rapid technological change. |
| Last Updated on Saturday, 07 March 2009 16:48 |
| We never sell or release your infomation to any other organization. |
"Thanks to Randy's expertise and talents our team is on their way to an improved quality product!"
Allace B. Buchmelter, Manager of Quality Assurance
CyberMetrics Corporation
"I was your student in Software Testing Foundation Level Course, and I recently successfully passed the exam with the score of 97%. I want to thank you very much for your excellent course which made me capable to achieve this certification. Without your course I could not do that. May I wish you all the best in your life and work!"
V.M. - Systems Tester
"Randy really spoke to the real world of testing - I could fully relate! I'll be back for the full basic course!"
B.K. - Structured UAT Participant