In this interview, TechWell speaks with Citrix Systems tester David Bradley. At STARWEST, he gave a presentation titled "Graphical Test Planning: A Method for Real Impact."
Jennifer Bonine: All right, we are back with one more virtual interview before we head over to another presentation. I have the pleasure of sitting here with David. David, glad to have you.
David Bradley: Thank you. Glad to be here. Enjoying it. It's good.
Jennifer Bonine: Good. We were just chatting before we started that this is your first time at STAR, one of the STAR conferences.
David Bradley: Yes, indeed. It is my first time at any of the STAR conferences, so I'm quite lucky, I suppose, in a respect, to come here as an attendee and also as a speaker. That's quite good.
Jennifer Bonine: Right, yeah. You had a double win, right?
David Bradley: I did, indeed.
Jennifer Bonine: You got to come and you spoke, and experience all of it. Maybe for those out there who have never been to one and who are just kind of getting this virtual experience, and don't actually get to walk around and attend sessions, maybe kind of give us, since it's your first time here, your perspective on—I'm sure you've attended a lot of other conferences, you know—just kind of your thoughts on this one and anything that maybe stands out to you about it.
David Bradley: I think, what I like, part of it's the size—the size and the diversity of people that come here. You just walk around and you stop and talk to people, introduce yourself, have a chat about things, see where they're from, see what they're doing—listen to what their little stories are and sort of talking that and things. I think it's that diversity and number of people, just that kind of interaction with testers and testing people, people who love what they're doing. That, I think, is one of the things I love, and what I've enjoyed a lot about this is having that interaction—literally just walking up to people and just saying, "Hi, I'm Dave. What do you do? Where are you from?"
Jennifer Bonine: Exactly.
David Bradley: Having all that and listening to what they have to tell you as well. I love that sort of thing. I think it's really, really good. The number of people just makes that so nice. There's lots of people, who, like me, are here on their own. Just being able to walk up to people and talk to them …
Jennifer Bonine: Yeah, because they're not in big groups. There's a lot of people that just are the only person from their company or organization that are here and experiencing it. That is what's really nice about when you are live here at the event, is that networking and that interaction.
David Bradley: Absolutely.
Jennifer Bonine: Last night, I went out in the evening, and outside one of the hotels, there's sitting areas with chairs and couches, and you would see groups of people just chatting about things and the conference and what they had talked about. The nice thing is the learning, which is the sessions and getting new ideas, but then you immediately have a forum to go take that out to a bunch of people for opinions and ask, "What do you think? Have you tried this? Is it working?" You can get feedback instantly from lots of organizations, lots of companies, and you kind of see, "I'm not alone."
David Bradley: That's it. You do, when you talk to people, it's like, oh, it's not just us who are facing this, we're not the only people in this situation. It's many more people having the same, similar sort of issue.
Jennifer Bonine: It is.
David Bradley: Really good.
Jennifer Bonine: I think it's kind of a morale booster sometimes, because sometimes in our world, people always tell us, "No, you're wrong, that's not right, that's not really an issue," or whatever. It's nice just to be able to get that boost of, OK, I'm not alone. There's other people out here struggling with the same things.
David Bradley: A lot of them are going through similar kind of problems, similar issues with things, and trying to do the best we can with what resources we've got and all those sorts of things.
Jennifer Bonine: Yeah, absolutely.
David Bradley: Just trying to make sure we're delivering the best we can in terms of products, we're doing the right testing and the right timing and all that kind of thing. I love it. It's really good, really nice and glad to be here. Fantastic.
Jennifer Bonine: Good. Well, and not just attending, but you spoke. You had a session, and our interview we did right before this was talking about what she's hearing is a lot about models and finding models for testing and, ironically, leading right into you and what you talked about. Maybe tell them a little bit, since they didn't get to see it, what you talked about around the models.
David Bradley: Yeah, so what I was talking about was something called graphical test planning, or GTP, and this is a methodology we've sort of—was created in Citrix by someone called Hardeep Sharma, who I work very, very closely with. It was done to address the problems we have in terms of the complexity of systems getting bigger, ranges increasing, costs are going up, and we've got to keep them down but we've got to keep quality up.
The way this was tackled was to look at it from in terms of how to improve things, not just by going left a little bit, but from the start of the project. How do we tackle this? How do we find design issues very, very early on? The way we found to do it was through creating a model—going out and looking at a problem from the bigger perspective. Rather than focus on little individual components, but taking a step back to right to the beginning of the project, having an idea what that project's going to be, and then breaking that down in a very sort of hierarchical manner—building a model out, so that that information is then communicated, can be shared with others. They can read it, understand it, give you more input, refine it, and improve it in some way.
Jennifer Bonine: Way up front, so you're not missing some of those things.
David Bradley: Way, way, way up front, and rapidly about to iterate through this thing, adapt to changes and take feedback from many sources—customers if you need to, business analysts, architects …
Jennifer Bonine: Putting it in a format that they can all provide feedback.
David Bradley: Absolutely, and in a way that it's written out, such that it's written in a language that's easy to understand. That is a good point. That's key to it.
Jennifer Bonine: That's key, right? Because that's some of where we've fallen down, I think, in the past. There's almost, you could call them proprietary languages, spoken in development and QA and on the business side, so you have to break down those walls of those languages and speak a common language where people can ...
David Bradley: Absolutely. That's the way we talk about it. We have this common language written, and we call it observable behavior, because we're looking at the system, we're looking at the interaction with the world and the people around it. It's not just focused on the system itself, but it's that interaction. What do we observe when we do something, when we see, when we interact with that system? It is that language that many people don't understand. It's all sorts of people, across from customers through to testers, developers, architects ... It works very, very well and it gives us that validation and understanding—makes us validate with designers, make sure we're building the right thing.
Jennifer Bonine: Yeah, and as we all know, we've all talked about shift left. Get farther left, and like you said, you're not just shifting. You're going all the way to the beginning.
David Bradley: Absolutely. Yeah.
Jennifer Bonine: Like you started stuff. No shifting, we're there.
David Bradley: Not going a little bit. We've gone the whole Hulk. We don't want to mess around here.
Jennifer Bonine: Right, exactly. Well, and I think that's important for folks out there watching. You say, you know, "Gosh, if we could have just caught this sooner," or we feel like we just catch everything at the tail end and there's no time to fix or it's too expensive or we're going to miss release dates, or whatever else. It's taking that time and—how much, would you say? Because the other question people say then is, how much time is that going to take me, and is that going to slow me significantly down to do this? How does that work for me?
David Bradley: It doesn't, it takes very little time. It's very, very quick and easy to build these models out. I've sat in with people, and I've worked on features when I've been training people and working with new people, and, in a couple of hours, you get a good understanding of what's going on.
The thing is, if you're blocked, if you can't have any more information, you can stop. You can go and do something else. You've got an opportunity to move resources around and focus on things. Projects aren't just one thing. There's lots of things happening, and there's prioritizing going on, all sorts of things in terms of tasks. It gives you that opportunity to do a little bit of work somewhere, go somewhere else. Because it's a model, if someone's busy somewhere else, someone can take up that other piece and continue with it as more information comes available. It's very, very ... It's not that costly to do. The gains you get from doing it are pretty significant.
Jennifer Bonine: We all know, you spend the time in the right places, it can save tons of time later on.
David Bradley: Absolutely, it can. It then can help you in terms of, later on, prioritizing, knowing what tests do I run, because I haven't got the time to do everything I need. I can pick the ones that I know make sense to run and leave the ones out, maybe for another time, depending on where we are on resources and so and so. It doesn't cost a lot to do. It's quick. It's very lightweight, extremely agile in terms of just turning around. It something changes, you come in, you model it. You change your model. That's the beauty of models, is you can constantly evolve them, make them better.
Jennifer Bonine: Yeah, and if someone wants more information on this—because we're probably piquing their interest and they're saying, "OK, I need this, how do I get it? It sounds spectacular." What's the best way for them to get more information on how to start? Conceptually, they like the concept of how to start with, how to apply it now?
David Bradley: I think the probably best thing is to initially just contact me.
Jennifer Bonine: Okay.
David Bradley: [email protected].
Jennifer Bonine: David dot bradley at citrix dot com.
David Bradley: Just contact me. We have a website. Off the top of my head, I cannot remember the URL unfortunately, I'm sorry about that, but if you contact me, I can share that website. We're adding more and more information to it all the time. Get in contact with me, and I'll share what I can. We'll let you know when there's more and more stuff coming available. If you want to talk more, let us know. Happy to talk about this. This is why we're here—to talk, share this with other people. If it helps them do their job better and so on, fantastic.
Jennifer Bonine: Right, so it sounds like make sure you contact [email protected] to be able to get more information on it. I think it's a great idea. As she mentioned earlier, Pamela, the models are a big thing right now and a lot of people are talking about it, and for exactly the reasons you're saying: that common language, getting the feedback from all the groups, making sure that you're not only shifting but going to the front of the train. A lot of times, people out there testing, we all know, we sometimes complain we're at the back end, so this is shifting everything up way to the beginning.
This has been hugely helpful. I can't believe we're out of time already. It's gone so fast.
David Bradley: It has indeed. I'm surprised. I'm just getting warmed up.
Jennifer Bonine: I know, right? We're going to stay longer.
We'll turn you guys over to your next session, but thank you, David, for spending the time.
David Bradley: Thank you very much for giving me the opportunity to chat to the people out there. Thank you very much. Cheers.
David Bradley has more than twenty-five years of experience in the software industry. Before becoming a professional tester at Citrix in 2007, he worked as a software engineer on a variety of embedded and distributed systems, primarily for the defense sector. As the senior test process lead for the Desktop and Application Group at Citrix Systems, David has been involved in successfully delivering multiple test projects using graphical test planning (GTP). As a proponent of its use, he regularly provides talks and training on GTP to teams worldwide, challenging and changing their views on testing.