Category: Uncategorized

  • Software Testing Centre of Excellence

    A Software Testing Centre of Excellence seems to mean different things to different people and organizations. Over the past year, NVP Software Solutions has talked to a lot of Testing Centres of Excellence to have found that one year later these Centres have complete disappeared or have   shrunk so far down that they are now irrelevant. Because the Software Testing Centre of Excellence can mean so many different things, we wanted to define the various types we have come across. These different types of Testing Centres don’t even appear to have defined names, so here are the descriptions we’ve come up with:

    1. A research group that looks for best practices inside and outside the organization in order to become widely accepted within the organization and important to be used.
    2. A group that supplies support to testing endeavours. This type of group does not do testing; they supply expertise or a repository of information that supports other groups in their testing efforts. Sometimes they also have templates and guidelines that support the required documentation.
    3. A team that supports one or more test tools in the organization. This group may hold the administration rights to the tool; be responsible for the initial configuration; set up projects within the tool (if applicable) and generally provide support.
    4. A group that supplies resources to projects as required. This group has a pool of testers who are seconded to projects on an as needed basis and then return to the Testing Centre of Excellence when the project winds down.
    5. A team that actually delivers testing. This is like a centralized testing department through which all projects have to go in order to be certified ready for production.

    The gradations here are fairly obvious, we are moving from a purely theoretical group to a highly practical group. Many of them still do not last for an extended period of time and some are managed by people with no background (and sometimes no interest) in testing.

    Next Week: Further discussions of TCoEs.

  • Communication in Testing and QA – Message, Audience, Transmission Method

    With all of the ‘communicating’ we do in today’s world, Communication in Testing and QA may seem like a redundant addition. The methods of communication available are endless, to the point, where the pendulum might start to swing the other way, towards a world that reduces the amount of communication we have in our lives. However, when it comes to software testing, quality assurance and quality control strong COMMUNICATION is the number one skill looked for in for software testers.

    We have already discussed WHY, HOW and WHAT to communicate in other blogs within this series and the final components to tackle are Message, Audience and Transmission. When sharing information and data, it is essential that you consider your specific message, who the intended audience is and the way in which you wish to transmit that information based on the previous criteria. Those who carefully consider and plan these components of communication get their views and insights heard and acted upon much more constructively than their counterparts who do not consider these three things.

    Start by thinking about the message you are trying to send? Is it advice, a warning, a compliment or technical information that increases the efficiency and success of your department? Whatever the message, clarify it and exactly what you are intending to convey. If you can do this in a few short sentences, you’re off to a good start. Your message should be short, concise and to the point. If there’s no point, there’s no point in wasting your time or the time of your audience.

    Speaking of audience, who exactly is your audience? You need to figure that out, because your audience may be the most critical piece to consider. Who are you trying to reach and under what conditions? There are many recipients for every message and specific knowledge of who those recipients and how they react is a determining factor in how successful your message will actually be.  People speak differently to their boss then they do to a peer, subordinate or close work-friend. You speak differently to your neighbour than you would to your spouse, children or relatives. Fully understanding your audience allows to you craft the content of your message in a way in which you think they would best receive the information being shared.

    When you have identified the message you are trying to send and the audience in which you are sending to, you can determine exactly how your piece of communication should be transmitted. How is it best to attract the attention of the intended Audience and get the Message we want across. We covered a number of these in an earlier blog.

    We also need to keep Marshall McLuhan in mind when considering this. ‘The medium is the message.

    Next Blog Series: Testing Centre of Excellence

  • Communication in Testing and QA – How to Communicate

    Communication in Testing and QA may seem pointless in today’s over-communicated world. We can use so many methods of communication that the point may seem more like how to stop sending or receiving so much information rather than the reverse. That is missing the point of this particular topic. Communication is listed as the number one skill required in testers.

    The second question in our series is how to communicate. Again, this may seem like an unimportant question when there are so many methods of communication. Actually it is more important than ever. With so many methods of communication how do we make sure our message stands out to the final recipient. Clearly marketers spend a lot of their time thinking about this question and experimenting with various methods to get the attention of their target audience. Equally obviously, some Quality Assurance or Quality Control communication is mandated by the tool that exists in the organisation or the process that has been determined. For example, defects (or whatever they are called in your organisation) are often put into a tool and communicated via a workflow. There is ‘little scope for the imagination‘ in that process. However, for every other piece of communication the question of How it is communicated is critical.

    For example:

    1. We want to convince a large group of people to follow a certain path and also solicit their feedback – personal presentations to small groups may be the most effective even if it is time consuming
    2. We want to demonstrate the superiority of one methodology over another – graphs and charts may be the most effective even though we may think the answer is obvious
    3. We want to tell everyone some good news – a newsletter or announcement via electronic communication may be best even if we want to tell people in person

    We have only really scratched the surface of types and possibilities here. There are thousands more.

    Final Blog of the Series: Communication in Testing – Message; Audience; and Transmission Method

    Next Blog Series: Testing Centre of Excellence

  • Communication in Testing and QA – What to Communicate

    Communication in Testing and QA may seem pointless in today’s over-communicated world. We can use so many methods of communication that the point may seem more like how to stop sending or receiving so much information rather than the reverse. That is missing the point of this particular topic. Communication is listed as the number one skill required in testers.

    The first question is what to communicate. Again, this may seem like an unimportant question when everyone has the ability to know everything. Actually it is more important than ever. With the rise in volume of communication (although not the quality) the need to filter out extraneous information and provide the relevant information and only the relevant information is more critical. It is trivially easy to incorporate lots of material into each communication and hit Reply All. The net end result is lots of information but little content.

    So the initial question that needs to be addressed is ‘What is the content of the message’. While many people know the content of their message, few take the time to think it through in detail. It is assumed that whatever content has been placed in the message (frequently without thought) is correct, sufficient and not too much.

    The content of the message is one of the three most important items:

    1. What does the person, with whom you are communicating, need to know?
    2. How should that information be presented?
    3. What will help them make a decision or act as we want them to based on what we send them?

    These are all pieces of the content that need to be considered just before hitting that Send button.

    Next Week: Communication in Testing – How
    Final Blog of the Series: Communication in Testing – Message; Audience; and Transmission Method

    Next Blog Series: Testing Centre of Excellence

  • Communication in Testing and QA

    Communication in Testing and QA may seem pointless in today’s over-communicated world. We can use so many methods of communication that the point may seem more like how to stop sending or receiving so much information rather than the reverse. That is missing the point of this particular topic. Communication is listed as the number one skill required in testers and only yesterday employers were lamenting an inability to find personnel with the following three characteristics:

    1. Experience
    2. Soft Skills (including communication)
    3. Technical skills

    We cannot necessarily do much directly about items 1 and 3 above but we can certainly look at the second one in a general context.

    Obviously we are trying to convey information and that information is intended to allow people to make decisions as a result of that information. In the case of testers:

    1. It may be a Go/No Go decision on whether to promote a release to production
    2. It may be a priority decision on fixing a defect
    3. It may be a decision on continuing testing a particular release or set of code
    4. It may be a decision on whether to include or exclude a certain feature
    • We need to communicate.
    • We need to make sure the message reaches the right person or people.
    • We need to make sure the message is provided in the correct format.
    • We need to make sure that the message leads to the correct decision.

    Of those four points, the last one is the most important.

    Regardless of decision being made as a result of the information, there are several important questions that are even more critical in today’s over-communicated world and these will be the discussions for the next few weeks.

    Next Week: Communication in Testing – What
    Following Week: Communication in Testing – How
    Final Blog of the Series: Communication in Testing – Message; Audience; and Transmission Method

    Next Blog Series: Testing Centre of Excellence

  • Malthus on Testing – A New Paradigm

    Last week we completed our discussion of how the proposed solutions to the Malthusian Catastrophe are only postponing the inevitable. Unlike development which can always go forward and create new code, testing always has a regression component for any code that integrates with existing applications. This adds  to the testing effort but doesn’t necessarily add value.

    The proposal we outline here is not entirely new although we are carrying it to another level. Portions of this are being done and have been done for years. However, we are suggesting a more intense and more rigorous application.

    Today, we find many people integrating applications to build something. They can borrow code or entire applications and make something new from it. The statement “there is an app for that” has never been more mainstream. However, everything that is borrowed or utilized may (not always) need to be tested to some level so we can trust that it does what it says it does and operates the way we need it to in our new configuration. Add to that Security concerns dealing with applications that are not under our control and may not have been built to the same level as we need and the chance of our new application failing increases substantially.

    We are recommending that a library of code pieces are created that have the following characteristics:

    1. They carry out a known function under known conditions.
    2. They have been tested thoroughly by an independent entity to prove number 1.
    3. They are secure from being compromised.

    Number 2 above may have levels of testing just like there are levels of code today depending on the risk of the application for which they are being used but the same process applies.

    People developing applications would be able to use this library secure in the knowledge that the three points above are guaranteed.

    Next series: Communication in Testing,

  • Malthus on Testing – Rapid Testing

    Malthus on testing is not something that you hear often. Thomas Malthus was an English cleric and scholar, who said “The power of population is indefinitely greater than the power in the earth to produce subsistence for man”.

    Last week we discussed how Automated Testing has met or is going to meet its Malthusian Catastrophe fairly soon. While there is no doubt that automation has added greatly to the volume of testing that can be completed, it can be argued that the exponential increases in functionality that are easily programmed but not see easily (fully) tested will eventually overwhelm the scripts.

    Some people will advocate other methods of testing under one heading or another without explicitly mentioning the fact that everything is Risk Based. If the time or resources or both are limited, then people will use their knowledge to get as much done as possible within the available time and with the available resources. They will assess the risk and make an informed decision about what can be completed in the available time. They will assess the context in which they are working and determine what needs to be done. They will use their knowledge and experience to determine what to do. We have done this for years and there is nothing new about it. There are various techniques that can be followed to make sure that risk is reasonable. There are work processes and methodologies that will help.

    We can apply the above techniques to both are manual and automated testing and buy ourselves some more time. However, it is only a step along the way; not a solution

    Final Series Week: Malthus on Testing – New Paradigm. We will propose a new method or paradigm for testing that will address some of the problems.

    Next series: Communication in Testing,

  • Malthus on Testing – Automated

    Malthus on testing is not something that you hear often. Thomas Malthus was an English cleric and scholar, who said “The power of population is indefinitely greater than the power in the earth to produce subsistence for man”.

    Last week we discussed how Manual Testing met its Malthusian Catastrophe a long time ago. One of the proposed solutions to this issue was to Automate the testing using a variety of tools and processes. Certainly that allowed multitasking on the part of the tester. Automated tests could run on one machine ‘unattended’ while the tester concentrated on items that either could or should not be automated and new functionality that it was too early to automate. Coverage was maintained and sometimes increased.

    However, unless a large effort was made to maintain the automated tests, keep them current with the changing code and conditions, and add new scripts as new functionality was added to the system the coverage either was reduced in real terms or at least relative to complete functionality of the system. There are some organizations that actually claim to have all the automation they need to properly test yet have no idea of what is in the automated suite or what it covers. There are even those for whom the possession of the automated base, whether used or not is sufficient.

    We improved over manual testing. We did not solve the problem.

    It is quite safe to say that Automated Testing met its Malthusian Catastrophe a while ago. Unless a very large effort is made (usually beyond the efforts of most organizations), Automated Testing is not going to cover sufficient of the code either.

    Following week: Malthus on Testing – Rapid Testing
    Final Series Week: Malthus on Testing – New Paradigm. We will propose a new method or paradigm for testing that will address some of the problems.