Saturday, November 22, 2008

When should you hire a test consultant?


You always need a test team. However, here are a few situations when you should think about hiring a test consultant:
  1. When you have tight deadlines and you need (additional) resources very fast

    Don’t waste time employing resources that may only be needed for one particular project and for a short period of time. If you are sure that the initial schedule cannot be changed and you cannot move the deadlines, the best approach is to quickly hire a test specialist who will start working on the project right away and will have all the necessary skills for testing your product. However, make sure that everything that has already been done for the project is well documented or you may find out that you are not buying extra time by hiring a test consultant.

  2. When you need a person that is highly specialized

    It takes time and money to train one of your employees to get really specialized on a certain test area. The testing training courses are not cheap. You might also find it difficult and expensive to recruit a specialized person. The most common practice in cases like this is to get a test consultant that will also train your team to use or update the already existing scripts/test cases for the next projects and releases once their project is done and their task completed.

  3. When you want to have an objective measurement of the quality of your product

    You should get test consultants to design and execute tests in System Testing or User Acceptance testing when you could benefit from having an “internal auditor” verify and validate your application before shipping it to the client. As a client, you may want someone to confirm that the level of quality is the same as the one stated by the vendor before paying the bill and marking the contract as successfully completed.

  4. When you need resources or certain skills for a short period of time

    Whenever you need a test specialist or test manager to do a certain task for a determined period of time and you know that you will not need that resource afterwards, you should pay for a test consultant. You will get someone who can start right away and cut down the costs with re-training an employee for a new position after the task is done. 

  5. When you want to have your current  testing processes and practices improved

    If you want to change or improve the current practices in your testing department, you should get a consultant specialized in test management. You will benefit from the consultant’s extensive experience in choosing the optimal and the most suitable process for your project and your company and you will give your other testers a chance to learn and improve their skills. Test management consultants will also bring their own templates for test strategy and test plan documents, as well as test reports and lessons learned presentations that you can re-use in later projects. 

Friday, November 21, 2008

Why would you want to hire a test consultant?


We think that many don't yet understand why and when they should get a test consultant and what the benefit of getting one is.

Here are some of the main reasons we consider important:
  1. Independence

    The level of independence for test consultants is very high. If they are from a different company than the one developing the application, you can get the maximum degree of independence.

    What does this independence mean in terms of software quality? In any project, there will be a pressure at some point to release the product as soon as possible. The pressure comes as budget and time are limited and most of the time companies compromise to the detriment of quality. The more independent test team members are, the more they can provide an objective measurement of the software quality. This helps the companies understand what they get for a certain price and in a certain time frame and, based on this, they can correctly evaluate risks and their impact and take the right actions.

  2. Experience with a variety of projects and applications

    You can always identify test consultants just by having a quick look at their CV. This is the only case when the fact that a candidate has more than 3 entries in their CV for the last year does not raise any questions.

    The learning curve for consultants is much steeper, they are fast learners and know how to search for the needed information, how to ask for it and how to use it. Test consultants will know what the common risks are in a project and how to mitigate them.

  3. Highly specialized

    A test consultant may be specialized on functional, performance, security, usability, automation or other type of testing, including test management. A certificate or diploma usually confirms that the needed skills have been acquired and their CVs show the experience in that test area.

    This will considerably reduce the amount of training required before the person is up to speed and can start working on the project. For example, if you want performance testing done for your application, you don’t need to start by having someone trained on how to do performance testing. You just have to get the right test consultant, provide some basic training regarding your product and to clearly communicate your expectations in terms of performance and tests.

  4. Communication

    Communication is one of the most important criteria in the recruiting process for any test consultancy company. Most test consultants, especially test managers, will have excellent communication skills and will be able to interact with all the parties involved in a project, from developers to external stakeholders.

Using Test Consultants

We have decided to write a series of articles to explain the benefits, the disadvantages and the common misconceptions regarding the use of test consultants in the software development industry.

Before going into any details, we should first understand what a Test Consultant is.

A Test Consultant is a professional that is focusing on objectively measuring and evaluating the quality level of a software product and advising project managers regarding further actions needed before a product goes live. Test Consultants may be specialized in test management, performance, security, usability, automation or functional testing, on mobile devices software, or applications specific to a particular platform etc. They may belong to organizations that do software (test) consultancy or they can be independent consultants (working on their own).

We will structure the series into 4 different articles:

  1. Why would you want to hire a test consultant?
  2. When should you hire a test consultant?
  3. What companies should not hire test consultants?
  4. What are the common misconceptions regarding test consultancy?

We would like to get our readers' opinion on this subject so please feel free to post comments or contact us directly by email at office 'at' altom.ro.