Thursday, March 1, 2012

Is the Context Driven School of Testing - Dead?

Earlier this week, Scott Barber pointed out an update to the Context-Driven-Testing page which has served as a starting point for people who want to learn about Context Driven Testing. In this post Kem Caner, one of the 'big four' of the Context Driven School gives an impression that the idea of Context Driven Testing being a 'School' has perhaps reached a point where it no longer exists.  He goes on to cite differences in vision among the founders of the movement, and I'll let you read his post above to draw your own conclusions.  However, when I was asked this question, I felt that I didn't agree.   I've seen places where friends or close colleagues go their separate ways because of a polarizing my way or the high way sort of mentality.  I'm not sure that's quite what Kem is referring too.

I debated whether to post my response or thoughts to this here at all as no doubt everyone involved or outside this movement will have their own opinions and beliefs.   I decided that for posterity's sake that I would indeed.  I have discussed this a bit with some fellow testers in the MiagiDo group, and Michael Larsen another MiagiDo member recently made a post giving his view on things (In Support of Context Driven Testing).  It's worth a read, and his thoughts were a bit similar but also slightly different from my own initial response to this question which I gave a bit earlier.  What follows was my initial response to this question of whether Context Driven School of Testing is Dead as it was originally shared with others in MiagiDo.  The only changes are the addition of Italics, and  a few grammatical improvements.
I'll have to quote Monty Python on this one. 
"I'm not dead yet!" 
I read Scott Barber's post, and I read the information there.  I really chaffe a bit and comparing this to the polarization of a few figure heads within the American republican party.  Kaner mentions Gingrich, who no doubt is a polarizing figure. If you're an American, you likely either like him, or you hate him, there probably isn't  a middle ground for most Americans.  However, I think perhaps the 4 Founders have gotten a bit too caught up in their own mystique. 
I see the same thing within our American political discourse.  People at the so called top seem so polarizing, and the media tries to frame discussions a certain way, and yet most of us at the bottom, outside that top so called 'chosen' echelon are not polarizing, we are not so closed minded or resistant to having honest discussions about things.   
I think this is true also for the Context-Driven Community, whether we call it a School or not, to me is irrelevant.   The point is we are making a fundamental distinction in where our thinking begins.  I see this same problem in the US Education system.  A lot of people expect school, especially college to prepare them for everything they need to succeed in a career.  The reality is quite opposite, it's a base, a starting point.  If you get that strong base, I believe a strong education helps you succeed no matter what you apply your life too.  I feel the same here with Context-Driven School of testing. 
Listen, so the four founders of the movement disagree.  There are four gospels in the New Testament of the Christian Bible, (I use this as an example), and all four a bit different, varied, and share some similarities too.   Those guys were alive at the time right?  Yet they were not the same as each other, they had differences and disagreements no doubt. So let's be clear the entire point of our School (in my estimation) is to not have Drone or Fake testing right?  I believe the point, as I understand it, is to encourage people to use and develop their critical thinking skills, and to not be satisfied with testing that feels lacking in covering the real risks of a project. 
Let's look at this another way.  James Bach gave a talk (I believe this was at Oredev, see James videos posted at his site at www.satisfice.org if interested) about Renaissance thinking a few years ago.  He describes what was fundamentally different about it, and how it wasn't just what was happening In Italy, or Scotland, or wherever else, that there were little movements pretty much elsewhere.  Think about the artists themselves, they all approached art a bit differently, yet they don't look like carbon copies even if they've learned some of the same skills and techniques.  This is no different than how we each approach testing in the Context Driven School of testing.  We are still different then what has come before.  We are still different than the more agile-centered testers. 
We cannot deny who we are.  We've been enlightened, we've grown as a community, a school.  It would be impossible for us to try to put the genie back in the bottle now.  What's done is done, the shot has been fired and heard around the world now.  The question is, in any revolution, what will each of us do because of it.

That's my feelings on it anyways.
Hope that wasn't too preachy,
-Tim Western

So in conclusion, while there may clearly be differences between the founders of the Context Driven moment, its principals and the School of thinking that it began, I must stand up and say, hey I'm still Context Driven, I still belong to that School of testing.   Now I do think there is a risk here.  There's a risk in perhaps holding too close to the fundamentals of the school.  We need to be aware of other ways of doing things, even if we may find that our way is better.  As an engineer, a tester, or a scientist I would be looking for ways to prove my own methods wrong, just as so many other scientists have done for centuries.  Yet for now, as a Dynamic and not a Static individual, my understanding of testing, and Context Driven Testing will only grow from here out.  It isn't a one time thing to learn, but a thing I will continue to learn and grow and mature as a tester as I put the ideas I've encountered into practice, as I test them, and work through the problems I face professionally.

So what about you?  What do you think is the Context Driven School of Testing really dead?

Note:  Since I set this post up for posting Scott Barber has added a part II on his thinking With the Context-Driven School "closed" what's next? He brings up a very good point about the need for testers to focus on the value they need to provide within their contexts, which I can totally agree with as I am driven to do whatever I can to provide value on a project.

Also I will note that James Bach has also put up a response (which I just now read) If you want to know James Bach's side, I suggest you read Context Driven Testing at a Crossroads.


Edit:

Since posting this, I've found Markus Gärtner blog about this at Lessons Learned from Context-driven testing  And note that Cem Kaner has given his comments on this as well.  It's definitely worth a read.


Additionally, Cem Kaner has added another response (blog) entry at http://context-driven-testing.com/?p=23 that I encourage everyone to read.   This certainly sheds some light on some of the issues that Cem is concerned about, and feels a bit clearer to me about what the issue as he saw it is.

4 comments:

  1. A point that I think many miss is that this is not just about individual testers.

    50 years ago (more or less) testING began fighting a rather arduous battle to establish an identity separate from developMENT. This, eventually, led to testERS establishing an identity separate from developERS.

    TestERS continue to fight battles... battles related to achieving organizational respect, related to gaining the freedom to do good testing, related to not being supplanted by buzz grabbing rhetoric about testERS not being needed in Agile because the testING can be accomplished by develpERS at the unit level & users at the system level.

    One reason these battles continue is because testING has no unifying community or identity. There is no professional society, there is no educational commonality, there simply isn't any unity. So every time I see the community splinter yet further, I find myself wondering how much longer can the non-unity continue before neither testERS nor testING have a recognized identity, and further wondering what impact that would have on all the individuals in the future who find themselves in a position where they are being asked to test software, but without having any idea where to go to learn.

    This happens today. There is an organization called the Internation Institute for Business Analysts. About 3 years ago, I was talking to a VP in their org that I ran into at a conference and he said to me, "We've got a bunch of members asking us about software testing, and we don't know what to tell them. Is there a professional society like ours I can point them to?" Of course, I mentioned AST, but the reality is that IIBA is getting these questions about testing because in Financial Services companies *all* testers of software are called Business Analysts... and most of them don't even realize that what they are doing day in and day out is software testing. They don't know there are books & blogs & conferences & training courses, and they don't understand why *the* professional society for Business Analysts doesn't talk about this thing that they spend most of their time doing. The answer, of course, is simple. It's because the Financial Services industry believes that only individual with deep knowledge of financial services are capable of understanding (and thus testing) financial software & they further believe that "If someone is smart enough to understand financial software, they are smart enough to figure out how to tell us if it's working right."

    Yes, that's a direct quote from a Director who oversees over 100 Business Analysts who's primary task every day is to test software... and when I told him that "tell us if it's working right" is an entire specialty in it's own right called software testing he said...

    "Really? I thought that was just something people did when told to. You mean people really study that?!?"

    Draw your own conclusions. Decide that I'm "putting the whole world on the end of a pin." That's fine... maybe you're right. Maybe I am. But I've been watching this closely for a long time & I'm *really* good at identifying patterns in data (I am a performance test guy, after all), and I see a worrisome pattern. That doesn't mean that more time or more data won't change that pattern, but this CDT-School thing is one more data point consistent with the pattern.

    ReplyDelete
  2. Excellent comment Scott. I know a lot more has unfolded in this CDT Discussion since I made these comments. I started on the Engineering side of things. I was a Computer Engineering major and an officer in our Student chapter of the IEEE Computer Society, and the larger club as well. When I got my first professional job though, staying connected to that group didn't last, and there seemed a disconnect for me between the Software issues I was facing and the hardware issues that seemed to be the focused. Finances took a hit early on, and professional society membership dropped on my priority list.

    At the same time, I noticed all these jobs for QA this and QA that, and wondered at some point, what were those? They weren't talked about in our core paths in the University. As it happened, I got hired as a programmer, not knowing that i'd be asked to do about 70% of my job as testing, and a lot of it acceptance level testing on modules, and a bit less than 30% was programming. At one point I was even working a support desk for about a year.

    Fast forward to three years ago and I had the interest of getting involved again, and perhaps the finances to do that, but there weren't really nearby chapters, and my professional thinking didn't seem to fit with the typical IEEE thinking anymore. I wasn't a pure Computer Engineer anymore, and I knew it. Then I got the opportunity to become a tester, with a focus on Automation, and that started my journey into testing as a focused career.

    I totally understand the identity crisis you describe. I'm struggling just the same to find my niche in my current team, where at times it seems even my team leaders can't decide if I'm a tester or a coder.

    I understand the polarization that Cem Kaner was discussing in his post, and I understand that sometimes that can alienate people we may have a lot more in common with than we might initially see. I still feel there's a place for the school thought though in the CDT School.

    I think this is important to remember, and that it's important to understand our own tester DNA too. I think the school idea helps me define who I am as an individual, in a way in which I couldn't have described before I came across the idea.

    Thanks for the reply Scott. The more discussion we have, the better for our community at large, I believe.

    ReplyDelete
  3. See, part of why I see this whole identity thing differently than some others is because my undergrad degree is also in Engineering (Civil - which makes more sense than it may seem... Performance stuff was easy after 4 semisters of hydro & hydrodynamics... water through pipes, packets over wires... same mental model... In a closed system, the most restrictive "kink in the hose" is the only one that really matters -- until it's removed, etc.)

    My optimistic side keeps saying "if there were just some sense of unity, or a unified purpose, or an established & respected prof society, or whatever, *then* the school's thing wouldn't be so polarizing... it would be more like a SIG than a scary pirate ship on the horizon threatening to overthrow the un-official, non-government that ain't great, but ain't scary." (Ya' like how I got the Buchaneer-Scholar imagery in there?)

    My practical side keeps reminding me that I've watched not fewer than 3 attempts to establish a nice, neutral, inviting, not-scary "town hall" (if you will) for TesterLand -- none of which have gotten any real traction... at least not if you look at the number of folks to ever step foot in one of those "town halls" over the number of people who test software for a living as compared to, say, the % of people who work in Electrical Engineering that belong to the IEEE.

    Wanna know what's *really* sad? I haven't even found a way to bring any kind of core unity to PerformanceTesterVillage, which has *got* to be an order of magnitude or 2 smaller than TesterLand, and there aren't even any good "stay off my land unless you want me to shoot your milkin' cow!" feuds out there.

    I think it's as much a matter of none of the ones people would feel safe "following" want to lead, and none of the folks willing to "lead" are benign enough to make folks feel safe.

    I guess it's all a trust thing... "In God we Trust. Everything else we test." Maybe it's not a joke after all. :)

    ReplyDelete
  4. Yeah, I hear you, Scott. I really enjoyed the community aspect of professional societies when I was in the university. But, where I work, aside from people who have 'digital' memberships to certain societies, they aren't exactly involved. It's something I've bumped up against for a while now. A lot of people just don't seem to care. They are happy to have work, and are happy with what I'd call the status quo.

    I made the decision this year to join AST. I really wanted to join a year or two before, but it took a bit of time to figure out how to get the money out of our budget for it. I value what AST is as a professional society, even if I know I can't make CAST this year in all likelihood. I know Testing in an effect, hasn't been as organized as it probably needs to be, and It's going to take time to get there to be an effective, recognized thing.

    In anything else, yeah unity sounds really nice, but I somewhat agree with what James Bach said in his response. A tester who insists that there are 'best practices' I'm going to have a hard time agreeing with. It may sound like religion to some, but I definitely agree that the CDT movement isn't just an approach that you choose. It is a fundamental paradigm shift. It isn't something you pick up or put down like the planks of a political platform. In fact, being a CDT has had the affect in non technical areas in my life too. I'm not just a tester who happens to be Context Driven. I am Context Driven in other matters too.

    Thanks for the discussion Scott. I greatly appreciate it, and I feel we should never fear discussions like this. The more discussion that is had, the stronger the community will be.

    ReplyDelete