Tom Delmonte has been in software testing since 1988. Involved with TCoE (Test Center of Excellence) guidance at...
Progressive Insurance, he spoke on May 5 in a session with Ross Collard at STAREAST about TCoEs.
Tom, can you start by telling us a little about your background? How and when did you first get involved with software quality?
Tom Delmonte: My first job was in 1988 in a Silicon Valley company that is now extinct, Mirus Corporation. They had no testing processes, systems or other testers, I was hired to test -- I’m not sure I would call it that at this point in my life -- their printer drivers and set up their testing processes. The bulk of the testing effort was to validate the output from many Mac and PC applications, mostly compatibility testing.
It was a great job because I got to work with a lot of technologies that were not even available in the market at that point; for example, 24-bit color, font technologies were just becoming a reality. This was prior to Apple’s first laser printer, so we had to build in our own fonts and map them to what was available on the desktop, stuff that now we could not imagine living without.
You have a lot of passion around education for quality and software test. What types of offerings are available today?
Delmonte: Education is essential in any job, but I think that is especially the case with software testers because we do not have a formal degree in the field. Self-education is essential because of that, but I would like to see the industry and educational entities have a more proactive dialog with each other; I am convinced there are many opportunities that could be explored if both entities sat down at the same table and engaged each other.
You’ve been leading some efforts to influence the training of testers. Can you tell us more about that?
Delmonte: I’m very involved in the training and development of the testing role at Progressive, but also have started to engage other companies and educational entities and am noticing that both have some very valuable insights as well as needs; on one side, the industry needs testers with an agreed upon set of skills, and on the other side, educational systems should focus on creating programs that produce students that have those types of skills.
In many ways it is a chicken and egg situation that, as I mentioned, if a dialog was facilitated would prove to be beneficial to both parties.
Let’s talk about Test Centers of Excellence. What exactly are TCoEs?
Delmonte: A TCoE is a movement within an organization where the main goal is to focus on improving software testing and is usually seen under that name in larger companies; one could easily argue that similar efforts can and should occur in medium to smaller companies as well, but I have not seen them called a TCoE in those circumstances.
There are many parameters that need to be taken into consideration when trying to implement a TCoE. I would strongly suggest reviewing Ross Collard’s work in this area, specifically his article in the March 2010 issue of Software Test and Performance Magazine.
Do you recommend that each organization set up their own custom TCoE and if so, where do they begin?
Delmonte: Testers by nature are always looking at improving their skills, tools and other processes that support their efforts. By that simple definition I would say that almost any organization should consider efforts such as a TCoE or something analogous to it.
There are two things that I would say are essential to begin any such effort:
1) Find individuals in your organization who are passionate about testing and improving the craft.
2) Identify an officer or other person of influence in your organization that is willing to sponsor and support your effort.
Once you have that in place, reviewing what a TCoE entails, such as the article I mentioned above, would be the next step, but if you don’t have the support of committed individuals in the company, especially at the executive level , it will be very hard to implement with a large level of success.
Are there tools available that will prompt an organization through the steps of establishing a TCoE? What are the essential pieces?
Delmonte: There are no tools that I know of, but as I alluded to above you need a strong level of commitment by key individuals, as well as materials written on the subject combined with consultation with other colleagues who have been involved in similar efforts. All of that then needs to be used in your analysis to come up with an implementation that best fits your specific context. You will have a successful TCoE implementation when it is unique to your organization not a re-implementation of a successful TCoE effort in another organization.
Do TCoEs exist within companies using Agile methodologies where QA and development are on the same team?
Delmonte: A successful TCoE implementation is one in which the software testing efforts are continuously improving in large part because they take into consideration the context in which they are implemented. That means that it is not important when you start your efforts whether you are an Agile shop or not, or if your testers and developers are on the same team or not. What’s important is that your testing is on a constant improvement path, that your processes are constantly being evaluated to make sure that you reinforce what is working, and that you’re improving what is not, making the appropriate adjustments when needed based on the guidance that the TCoE is providing.
Whether you are a waterfall or Agile shop is only important based on your context; what is more important is that you select the process that is appropriate for you at any given point in time, and that software testing is adding the best possible value to the stakeholders that matter to you.
In the presentation summary, it’s noted that, “Test centers have no guarantees and plenty of risks -- they are not a panacea and certainly are not for everyone.” Can you tell us more about the risks and cases in which you would not recommend TCoEs.
Delmonte: The first step is to do some homework, and once you clearly understand what a TCoE is all about, decide if you want to move forward. If you do, make sure you have adequate support as I mentioned earlier in this article.
Once you are on that path, the biggest risk that I have been exposed to is one in which the context, and it changes on a regular basis, is not taken in consideration.
A TCoE when it has adequate support (risk factor), will have an influence on a pretty relevant part of the organization, that in itself will help clarify and even change priorities over time (risk factor). If you don’t take that into consideration and adjust your direction but still maintain your core values (risk factor), you will quickly become obsolete if you don’t adjust , or become terribly confused if you lose sight of the core values.
You also need the help of folks from the outside, and I would recommend a combination of individual consultants as well as larger consulting organizations if you can afford them because their priorities are very different (risk factor) and it will afford you the best possible number of insights.
If that is not possible, I would invite peers from other organizations to come and see what you are doing and be willing to ask questions that give you clear and actionable actions. Don’t shy away from difficult or painful answers (risk factor). Success is rarely immune to some level of failure -- I think it is impossible not to make mistakes along the way. The key is to identify them as soon as possible and be willing to deal with them in a timely manner.
Who do you think would most benefit from your presentation and what will be their biggest takeaway?
Anyone who has a strong desire to improve their testing efforts will benefit. If you are in a small company, you will walk away with some ideas that you can start implementing yourself. If you are a part of a larger organization you may get some ideas that may help you start on the path to setting up a TCoE or get some additional insights if you already have started one.