Pages

Showing posts with label coaching. Show all posts
Showing posts with label coaching. Show all posts

Friday, 12 July 2013

Conference at a Glance, part II – My glance on the Tuesday AM tutorials

This is the second part of my series of posts about EuroSTAR 2013 conference. I apply the same method of evaluating as I did previously, so read the “My glance on the Monday tutorials” before this post, if you haven’t done that already.

Ian Rowland’s “Thinking Outside The Locks

I have not heard of Ian Rowland, but I must say I’m intrigued. A magician? The biography in EuroSTAR page makes me want to know more about this fellow. In fact, I googled his name and got to his website. I’m really looking forward to see Ian do his stuff. I would guess that humor is involved in addition to mind blowing approach to thinking outside the box (or locks as he says).

To be honest, I think critical thinking, unconventional approaches, non-rational thinking are the tools of my trade. I would be able to use those both daily and they would make me become a better tester both short and long term.

I would recommend this to all my colleagues. In fact I’ve been thinking about a 30 minutes workshop on out-of-the-box thinking and using unconventional methods to solve a problem. If I get enough ideas for my workshop I might just do a workshop, and I hope Ian can help me generate ideas for it.

To be honest, I can’t think of anything to disagree from the summary of the tutorial, so I might not be able to challenge him. I’m curious to see how the methods he uses actually project to software testing. I might steal some of the details and trick he uses to my own work, like I mentioned before.

The tutorial seems very interesting as a light weight beginner for the conference (even better after a full day of Monday tutorial), but is this the best option out of the cast of many great speakers? I would be the one doing a half day tutorial on the subject, considering I don’t have that much experience in coaching out-of-the-box thinking.

After the smoke clears and the magician bows, I would like to see/hear/learn about implementing the skills and theories Ian shows to us. Theory is good and all but I would like to see results in testing craft to be happy with the tutorial.

On my Birdy scale, Ian Rowland’s “Thinking Outside The Locks” would scale as follows:

  • Person-to-person: **
  • Short time value: ***
  • Long time value: **
  • Steal-ability: *
  • Challenge-ability: 
  • Total: 8/15 stars

Prof Harry Collins and James Bach’s “Using Sociology To Examine Testing Expertise

I think I said enough of James Bach on my previous blog post, so I will concentrate on Prof Collins. I find his resume quite impressive. He has (co-)written books that we testers should (I haven’t) be reading including the “Tacit and Explicit Knowledge” and “Rethinking Expertise”. I am eager to hear what he and James Bach have come up with. The duo of unschooled (but not untaught) and a University professor could spell doom to us mere mortals. I’m truly eager to hear their tutorial.

I am really eager to listen to stuff about meta-knowledge (or knowledge about knowledge). I do not, however, see a short term benefit from it. It will eventually develop my sense of self analysis. I’m very interested in any studies about testing and testing methodologies and this tutorial taps to that – using the tacit knowledge in addition to radiant expertise.

I don’t know straightaway how I could harness the tutorial for the benefit of my fellow testers. If the tutorial addresses social tacit knowledge, I could be able to make the company benefit from acknowledging that knowledge.

I am keen challenge the fact that there are skills that no person possesses but a group of people. Let’s say I invite a group of people to my house and I want to learn Chinese. None of these people know Chinese, but as a group we might be able to possess the skills to communicate in Chinese? Am I on the right path here? Or are we talking about more-than-sum-of-its-parts mentality, where we all would know just a little Chinese or a language close to Chinese?

I would refrain myself from teaching this. Maybe I could mention and guide people to seek for material appropriate to this experiment. I have no previous knowledge in this kind of study as I lack the university background.

Just like in Ian’s tutorial I would like to see/hear something that I could implement to my own work. What do I do with the information about what skillset does the teams have?

On my Birdy scale, Harry Collins and James Bach’s “Using Sociology To Examine Testing Expertise” would scale as follows:

  • Person-to-person: ***
  • Short time value: 
  • Long time value: **
  • Steal-ability: 
  • Challenge-ability: **
  • Total: 7/15 stars

Peter Zimmerer’s “Questioning Testability

I begin to wonder what people think about me as a community member when I don’t know most of the people making presentations and more importantly tutorial speakers. This pre-analyzing the tutorials also helps me to familiarize myself with the people so I could recognize them at the event location in Gothenburg. I believe I have a lot to talk about with Zimmerer from all kind of things, but I believe we can make a conversation out of his topic also.

Testability is a freaky subject for me. I might be living in a bubble where we almost automatically plan our products with testability in mind. We aim to make the testing as fast and efficient as possible, so this tutorial might not give me too much in short term. I do believe that testability is one of the key things to enable efficient testing, so I more than recommend this tutorial to everyone!

I do believe that I could benefit from revolutionary points of view, which I hope Peter will provide. At some point when testability becomes more a worry for me, I might need the skills. Also the ability to promote testability could be important for me in this company. At some point the leading testability evangelists might leave the company, so we need as much tacit knowledge on testability as possible.

I’m expecting a lot of practical examples to be able to share myself (possibly after altering them to my own flavor). In that sense, the stealability is quite high in tutorial. I would focus mostly on practical appliances of testability, because testability as theory is quite trivial. People seem to have trouble in understanding how they can make stuff happen in practice.

When it comes to questioning, the words “step-by-step” rose a red flag. Is this method an omniscient, all-encompassing process? I hope this tutorial doesn’t turn into “do this and everything will be fine” but into “apply these skills where it’s reasonable”. If I am to join the tutorial, I will definitely challenge

On my Birdy scale, Peter Zimmerer’s “Questioning Testability” would scale as follows:

  • Person-to-person: *
  • Short time value: *
  • Long time value: **
  • Steal-ability: **
  • Challenge-ability: ** 
  • Total: 8/15 stars


Anne-Marie Charrett’s “Coaching Software Testers

James has mentioned Anne-Marie a couple of time in our conversation and praised her coaching skills. Then again, I must admit that I have not made myself too familiar with her work. I’m looking forward to seeing her and possibly having a chat at some point. Hopefully she’ll be able to donate some of her time to me.

Actually the coaching method described here is something I have already done a few times. First James Bach coached me using the Socratic Questioning and then I used it to coach Erik Brickarp, Jari Laakso and Aleksis Tulonen among others. The amount learning on BOTH parties was phenomenal. I would love to gain more skills in this area to be able to continue my journey as a coach. This is something that both my colleagues and my fellow crafts(-wo-)men will benefit. I have some skills to begin with so I will employ them in future to the benefit of all, including me.

Having said that, I will try to steal as much as possible from this session and to mold it to my own. I recommend this session – yes, without having yet attended it, but having faith in it like in no other! Coaching skills are paramount on testers skill set if they ever want to become true professional.

I find it hard to challenge this on two reasons: I would consider myself as a member of coaching congregation and I would find it hard to challenge something I have unquestionable faith in. I am willing to try challenging for the sake of argument, but facing Socratic Questioning arguing for argument’s sake might be my downfall.

On my Birdy scale, Anne-Marie Charrett’s “Coaching Software Testers” would scale as follows:

  • Person-to-person: *
  • Short time value: **
  • Long time value: ***
  • Steal-ability: ***
  • Challenge-ability:  *
  • Total: 10/15 stars

James Christie’s “Questioning Auditors Questioning Testing

James Christie (How many people called James are presenting in this conference?) is one of those that fall on the same category as Anne-Marie – I would love to talk to them for what I have heard from my fellow community members – but I have never delved into James’ work in-depth. Maybe I can sneak into his lunch table and steal a minute to talk about testing. ;)

In the past, I was working in a company where an audit was held. I was part of a group that coached the people getting audited to answer the questions correctly to appease the auditor. Wrong approach to audit – we do not always act according to the documented process but according to our best knowledge on the situation. The audit was about the documentation. The auditors were held in so high authoritarian position that they were not challenged – I was not allowed to talk to the auditors. ;)

I don’t see a short term benefit on this tutorial, however. I’m not currently in a position to be part of audits currently at F-secure. We do have security audits and the like, but I have yet to be invited to one such event. I might benefit James’ tutorial if I focus on questioning instead of auditing. If the scope wouldn’t be so narrow as to concern only audits, I would find it more beneficial to my current work.

If I could combine questioning to other areas, like specific levels of testing (unit, module, etc.) I could be able to teach or coach other testers and programmers to question their work more efficiently. So long term benefits could outweigh those of short term. More so, I don’t know where my life takes me so having some skills in challenging auditors might be my thing in the future.

I have such limited knowledge on auditing as such, so I find it difficult to disagree with questioning. Usually the person being questioned could benefit from the questioning too. I have been in a situation where I learned more by being challenged than by acquiring book knowledge on the subject. Like I said earlier, I would like to see tracks on more general questioning, arguing and challenging. This tutorial might answer some questions I have, but I’m not sure at this point.

On my Birdy scale, James Christie’s “Questioning Auditors Questioning Testing” would scale as follows:

  • Person-to-person: **
  • Short time value: 
  • Long time value: **
  • Steal-ability: *
  • Challenge-ability:  *
  • Total: 6/15 stars


Pradeep Soundararajan & Dhanasekar Subramaniam’s “Context Driven Mind Mapping

I know Pradeep from tweeting with him and reading his blog. I also have followed the progress of Moolya for some time and I’m really impressed in their success. I’m also looking forward meeting Pradeep and Dhanasekar in Gothenburg to talk about mind mapping and all testing related stuff. I’m glad that Pradeep is hosting two sessions at the conference so I can join at least one of them.

I’m a bit of a mind map enthusiast myself so this tutorial is almost tailored for me. I find a lot of things here that are almost exactly from my workshop year ago from Nordic Testing Days 2012. I do believe that I have a lot to learn on both using the mind maps and hosting workshops. In short term, I would like to learn the most effortless way to utilize mind mapping. I tend to procrastinate during the testing, so if mind map can keep me focused, I would be on cloud nine. I also see mind maps as the tool of the future for it utilizes the brain instead of some arbitrary tool.

This tutorial would be worth stealing in its entirety and then I would go on promoting the ideas and practices to my company and to my peers in the community. In the long term, mind maps could help make exploratory testing both understandable and credible to stakeholders with minimum effort on documentation. I have already played around with the thought of decompiling the mind map into coverage charts by scripts, so this might even further automate the documentation of exploratory testing.

As for challenging, I know where I was stumbling in my workshop so I might tap into those subjects. First would be the content-switching during testing from the mind map to the software under test. If the mind map requires another window in addition to database browser, Unix log screens, browsers, standalone tools, etc. the content-switching becomes a burdening factor in the long run. Second would be the “free form” of the maps, which could result in inconsistent ways to report. I’m curious to see how Panda and Commander can tackle these. :)

I would recommend taking the Monday tutorial by James Lyndsay and combining it with this to make an awesome combo of exploratory testing and modeling. I haven’t yet decided which to attend, but if you, dear readers, should consider this combo really hard.

On my Birdy scale, Pradeep Soundararajan & Dhanasekar Subramaniam’s “Context Driven Mind Mapping” would scale as follows:

  • Person-to-person: ***
  • Short time value: **
  • Long time value: **
  • Steal-ability: **
  • Challenge-ability:  **
  • Total: 11/15 stars

Afterword

Once again I have not yet decided which to attend. There seems to be 2 top dogs right now, but I cannot yet say which to attend. I might even change my mind right before the session if other community members talk me to join a session other than what I would have chosen.

Anyway, I have quite a task ahead of me to plow though the conference tracks one by one. But be assured, I will go through as much as I can.

Also, I got interviewed to EuroSTAR community spotlight. I thank Emma Connor for the interview, and wish her and every tester out there a great summer!

- Peksi

Tuesday, 13 November 2012

How to get anyone to do anything!


This is how! Go ahead, read this post and you will find the keys to tapping into your or anyone's motivation. I will tell you how you can find motivation to do anything, or to motivate anyone to do anything! I will describe briefly the 6 steps that will make you find motivation to get things done, I will tell what is the force behind motivation and I will share some of my own experiences on success and “progress ongoing”.

Instant influence

I have written previously a post about what drives people to act. The Drive (written by Daniel Pink) has given many answers in how to motivate people in the modern society. For me, that lacked tangible examples, practical process and, odd enough, ways to motivate myself to be motivated.

I follow Daniel Pink on twitter and he posted a blogpost about something called Instant Influence. He just glanced the topic by asking two very powerful questions: “On a scale of 1 to 10, how willing are you to change?” and “Why didn’t you choose a lower number?” Immediately I started asking those questions on why I might want to do something. I began to defend the will to WANT to do something instead of finding excuses why I don’t want to do it.

The writer, Michael V. Pantalon has captured the essence of motivation in the book Instant Influence. It describes the process of asking questions from the “influencee” (he calls the participants of the motivation discussion “influencer” and “influencee”) and allowing her to find her own reasons to embark the road to change.

After I read the book I was in a motivational high and now I will share some of the secrets to you. I will urge you to grab a copy of the book and to read it yourself as this is but an excerpt from the book. The book has special ways to motivate yourself, change resistant people and coworkers, even strangers. There are ways to spot different kinds of indication of budding motivation on people that do not seem to be motivated. It’s quite quick to read and has plenty of practical examples on which to draw useful practices in real life.

The Instant Influence process is based on 3 cornerstones:

  1. No one absolutely has to do anything; the choice is always yours
  2. Everyone already has enough motivation
  3. Focusing on any tiny bit of motivation works better than asking about resistance


Scare tactics don’t work! If you get bullied into doing something, you’re just as likely to choose not to do it. By saying things like “have to”, “should”, “must”, etc. just strengthen the barriers of resistance. Asking about “why might you choose to do it” is more important than telling the effects of not doing something.

6 steps to success

The book describes a process for finding the motivation. The process comprises of 6 steps. All individual steps are analyzed in the book and the power behind them is revealed for you to make the most use of the process. Every step has examples of different flavours on how to get the best out of the step with different people and situations. The process goes roughly like this:

  1. Why might you change?
  2. How willing are you to change?
  3. Why aren’t you less willing to change?
  4. Imagine you’ve changed. What positive might become of it?
  5. Why are those reasons important to you?
  6. What would be the next step, if any?

The first question is to allow the influencee to state the problem and to tell why she might want to commence the process of changing behavior. Asking “how might I change” may bring results but the reason behind the change could prove to be more important than thinking the actions. Trying to figure out how should one change can be overwhelming if not clear with the reasons behind the change.

When asking people “how willing they are to change” the question should be detailed to fit the situation. If I wanted to motivate myself to clean the apartment, I might ask myself: “How willing, on a scale on 1 to 10, might I be in clearing the living room table?” By breaking the task into smaller pieces and motivating oneself to do at least one of the smaller tasks, one can create a snowball effect and end up being motivated to clean the whole apartment and the garage! The number, which should be had in this question, is trivial but it creates a base for the next step.

Let’s say, I answered a “5” in the previous question. I might then ask, “Why didn’t I choose a 4 or a 3?” Then I will immediately start defending the reasons I MIGHT WANT to do the task at hand. This also gives you the opportunity to state the reasons, obvious or hidden, behind your budding motivation. Sometimes, questions 2 and 3 can give enough ground for the influencee to get motivated, but I always ask the influencee if she might be willing to answer more questions.

At the 4th step the influencee is allowed to imagine the world after the change. You can create a scenario where all the obstacles are cleared and the ultimate end result is reached, thus removing any negative influences that might arise at this stage. Focusing on the positive images might motivate the person to begin the journey to the destination, but remember to break the task into smaller goals to make the transition to being motivated easier. And I assure you, the smaller you make your goals on self motivation, the easier it is to start actually doing something.

When the influencee can identify the positive outcomes, she should be asked why those are important. Autonomy is the key here: “Why are these reasons important to *you*?” Drilling into the most deep and profound reasons might be intimidating, but after realizing that the deeper, most personal reasons are the ones that drive you to do things, you can get things done more easily and quicker.

The 6th step is important so that the influencee is clear on what she wants to do next in order to get gears turning. Again it is important to enforce the influencee’s autonomy and power to choose her actions. By asking “What might you do next?” instead of telling, can be the crucial element of finding the true motivation to do something. The action plan can be as simple as “I want to go to the living room and look at the coffee table.” or as detailed as necessary, verbal or written. But I encourage you to have an action plan. To make it even more powerful, state the reason why might you want to do it. “I want to clean the coffee table to make room for my coffee mug. I live my morning coffee when I watch the news and I don’t enjoy holding the cup on the sofa pillow.”

One thing to remember is to choose *active* actions in your action plan, that is to follow the “Dead man’s rule”: Never choose an action a dead man could do! “Don’t eat too much!” could be “Eat just enough to make you full but not too full.” “Don’t smoke!” could be “Smoke 2 cigarettes less a day for one single week.” Be active about the change, however small a change you’re aiming at.

Live exercise 

This is an example of me using the instant influence on myself. I will be bith the influencee and the influencer. I will ask the questions and I will answer what is the first thing that comes to my mind – no later editing, but I will add some notes in brackets afterwards. I have a task that I want to do: I want to write a column to a testing magazine here in Finland. The due date is approaching (or went past already) and my brains are refusing to provide input to the task.

Influencee me: "I want to write a column, but it seems too hard."
Influencer me: "Why it seems too hard?" (I don’t fully understand what makes the writing so hard.)
Influencee me: "I can’t find anything meaningful to say. The ideas I have feel crappy and incoherent. I wish I could find a thread which I could then follow through the column." (I’m frustrated by the situation.)
Influencer me: "Seems like you struggle with a problem that feels too big. What is the smallest thing that you can do to get started writing the column?" (I try to scale things a bit and try to find some spark of motivation.)
Influencee me: "The smallest thing would be to… well… open Word and start typing." (I try to dodge the responsibility.)

Influencer me: "Seems reasonable enough. Why might you want to do it?" (I try to enforce autonomy. I also fell into sarcasm there, which is not good as I could have been more objective about the situation as a whole.)
Influencee me: "Like you asked, I want to get the column written."

Influencer me: "On a scale of 1 to 10, where ‘1’ meaning “not ready at all” and ‘10’ meaning “as ready as possible”, how ready would you be to open Word and start typing?" (I could have tried to push on the “why” with the reasons I want to get the column written, but I thought that I can always ask more about the deep reasons later.)
Influencee me: "To be honest, I’d say about a 7. I like seven, because it’s quite high but not nearly the highest as it could be. Ok. To be totally honest, I’d say 5." (When I really started to think about how motivated I am, I realized that my motivation is alarmingly low. The impact of really thinking about the number was quite important to me. It may not be to others, but knowing about the process, it felt really important to me. The number is arbitrary and is there just to form a base for the next question, but can create surprising effects.)

Influencer me: "Why didn’t you choose a smaller number?"
Influencee me: "Well… I do want to write the column, as I have promised to do so. I also want to share the thoughts I have on the subject as I think many other people are struggling with that kind of issues. It is also a good way to get my name out there to be seen as a writer. On a 4, I would be saying that I don’t want some of those things, but I do." (I started to defend my reasons. By this point I was ready to increase my number to 7, but didn’t. I already had some thread for the column formulating in my head.)

Influencer me: "Let’s say you have written the column. What would be the positive outcome of that?" (I created a happy, sunshine scenario where there is no evil and all columns are done within deadline.)
Influencee me: "I would get the appreciation of my peers. They have worked hard on their papers, and by completing mine I have shown the same dedication towards creating a good testing magazine." (I reflect my actions against others’ but it feels like a shallow reason.)

Influencer me: "Why is the appreciation important to you?"
Influencee me: "I feel that the status of testing professional needs constant visibility to the public and to the community. The appreciation feels like a materialization of the reputation in the community." (Here it started to get personal. I was thinking about stopping writing, because I had no idea where this talk would lead me.)
Influencer me: "Why is the reputation and more so the good reputation in the community important?" (Drilling into the most important reason.)
Influencee me: "Well… to be honest. I might feel that because I have no doctoral degree or the like to boast around, I must constantly prove myself to be worthy of the status I have achieved in the community. Or I think I have achieved it." (I’m constantly saying “to be honest”. I’m trying as hard as I can to be. As much as I want to succeed in the exercise and make it as authentic as possible, I want to get the column done in time.)
Influencer me: "Why do you feel that the status is important to you?"
Influencee me: "It makes me feel like I’m worthy."
Influencer me: "So, you might want to write the column because it might make you feel appreciated and worthy. Is that correct?" (Here I reflect what has been said and formulate them into a single sentence motivation statement. I also try to enforce the autonomy by checking that it is correct.)
Influencee me: "I guess so, yes - to feel worthy of the perceived good reputation."

Influencer me: "So what could be the next step that you’re willing to take, if any?" (I leave room for choosing not to perform any actions.)
Influencee me: "I guess I will reserve a 90 minutes brainstorming session using a mindmap to clear out my thoughts and to create a plan for the column. I will do it while in train to work as I have plenty of time then, but I will make a calendar appointment so I can remember it. That will help me to find the thread and inspiration for the column. I might even finish the text while I’m at it. If I can’t find a thread while doing so, I will write about not finding thread." (I made a plan that has a specific action, a reason to do it, and a situation to amplify the action. I also mention a next step, which I didn’t even thought I was planning. In addition to all that, I made a plan B if my initial effort fails to give results.)

Now we just have to see if I was able to finish the column in time. :)

---

PS. If you feel like trying this in real life, contact me through Skype and we can try to motivate you to do something that seems too hard for you to do.

Tuesday, 6 November 2012

Testgasm

This is a blogpost to describe what was going on in the Rapid Software Testing class held by James Bach. This is not meant to be a comprehensive analysis on what happened or the lessons I learned but few highlights and hindsight analysis on what happened.

The dice game

...this is just a few of what we had...
Those that have been attending the dice game know that the initial exercise is hard. When one gets the idea on how the algorithm goes it’s easier to play variations on the game by group of friends or colleagues (not to say these are necessarily different). I (thanks to Michael Bolton’s course), Henri Hannuniemi and Sami Lehtonen (thanks to Antti Niittyviita) had played the game earlier and so we were grouped together and given a different algorithm than the others. I was so thrilled by the idea that I could use all the skills that I had learned to crack that nut open.

The game started and we were given a bunch of dice: a handful of regular, different colour/size dice; few D20 dice; few D10 hand drawn dice; a die that was in a transparent die; some “poker dice”, etc. We had so many variables that we became a bit confused. I started a list of different things that we could be analyzing. The size, the colour, dots or numbers, amount of dice, type of dice, arranging of dice, “zero is not zero” etc. We then arranged them so that there were different D6 coloured dice stacked together in different ways, five groups of five. James came to the table, we said “2” as a guess for every single dice pile and James replied “0”.

We had the miscellaneous dice lying in the stack nearby and I thought I ask a reply on that also. I said it “2” also and James replied “1”. A one? We had a huge number of different types of dice lying there. What could it be?

We proceeded to arrange the dice in a fashion that there were 2 or 3 special dice and regular dice bundled up so that all special dice were in use. All but one group ended up in a “0”. The one that was the “1” had the die where there was a dice within a dice. A frantic math calculation ensued. We tried to sum up the two dices together, but the result was always a “1”. So I took the die in hand and turned it so that James could see only “1” and a “2”, and we thought it was a “1”. The answer was “2”. Frustration!

Testgasm


We then analyzed the steps we took to get to that “2”. We had a couple of theories, but when the die was on the table, it was always a “1”. Heureka! We took five dice off the table and said “5”. And a five it was!

The thought process took 3 persons 20-25 minutes. The sparring between the team enabled us to try different even crazy-sounding ideas to good extent without exhausting our innovation. We simplified the data and made it more complex. We tried to look for changes in the output by varying the input. We used the different models of problem solving from our lives to figure out the pattern. We also solved a pattern composing of vocal input pattern (I save that for one of my exercise in the company) and one with a difficult mathematical pattern composing of differently grouped dice.

"Give me your hardest problem!"
Like James said, we were doing testing Kung-fu! Solving problems like matrial artists! Bonk! Blam! Thwaak! Zlott! Swoorsh! Phatam! Ka-pow! Like Batman fighting crime, we fought problems! (I’m getting a bit excited here, if you can’t read it from between the lines.) We all felt like we were invincible and we had the tools to crack every problem in the world! “Give me your hardest problem and I will solve it for you!”

The high after testgasm
After we got all the patterns solved we were all ecstatic about what we had done. We were in a problem-solving high! The word to describe the feeling would be “testgasm”. And truth be told, after a serious testing session where you find something awesome, something really important; you will get a testgasm. I’m not sure if other that testers understand the rush after a successful testing session; it is hard to explain. The joy of completing a hard task and feeling joyous about it in ways you never thought you could be. That feeling is something that testers all around are looking for when they test. Your face may light up and you yell “Yes! I got it!” and other people in the cubicle stare at you like you’re deranged.

Focus/Defocus

I had heard the concept of focusing/defocusing in Michael Bolton’s class before but I never truly understood the meaning behind it. ("If focusing is focusing, defocusing is the opposite of that") I tried to look for material online, but it was all vague and didn’t make an impact. The way that James described the method was simple: “When confused, focus; when frustrated, defocus.” Wow! When testing one sometimes loses momentum and struggles with a single piece of data for long time. Using input patterns that don’t find the problem may lead into frustration. I felt exactly that during an exercise about systematic testing.

James had us testing a piece of software that had a bug in it. We were asked to find the bug and then try to figure out why it fails. The input was a valid IP address. You know what I figured out? I have so strong built in mental models about meaningful number combinations that I was grinding my teeth and sweating to break that pattern. I had tried a pattern by testing the high and low numbers, duplicate numbers, you name it. Could I just be blind to the bug? Then James said “Look into your data. Can you see a pattern?” Yes I did. And lots of them! “Now try to find an input that is as different as possible from previous data.” And guess what IP address I used? “1.2.3.4” That’s right! I broke my pattern by trying “1.2.3.4”! What was I thinking?!?!

James was like “Dude! What the hell?” and I sat there frustrated and confused. Then I realized what he had meant. If I had drawn a line to represent my test data, it would have been like this:


I just needed to break the pattern and be more random and use data from between my clustered data pattern. And with first random IP address I put in, I found the bug. Later James explained why the program behaves like that, but I can’t remember the true root-cause of the bug, but I did learn a lot about focusing and defocusing.

Hung over (from learning)

It has now been two weeks since the course. After the class I was in a high that lasted through the weekend. I thought about giving a thorough analysis about the course but I see no need for that. I had the time to let the learning infuse to my spine and now I feel that the stuff I learned make even more difference. I did have an information hangover after the class and it was hard to get back to grips with non-testing work again. I was glad, however, that I could attend the Intensive course the next week so I wasn’t that bummed.

I recommend the class for everyone willing to improve their critical thinking, testing skills and/or argumentation skills. The exercises were good and to the point. The hot seat treatment James gave to some of us gave us experience to stand pressure and perform well when in a stressful situation. I also learned a lot about myself and the way I learn. It was also cool to hang out with great testers like Samuli Elomaa and Aleksis Tulonen.

I still have a long way to go and a lot of learning to do. (After James mentioned it) I began to think myself as a constant student, always learning. I promise James (and I will talk about this to Mr. Bolton) that I will try to compare the classes done by him and Michael. That way both of them could learn what could be done better or differently. That however will have to wait a few days (i.e. weeks) as I have a growing backlog of blog posts.


Wednesday, 24 October 2012

Flashback to Learning

I rarely have the concentration span to write complex and analyzing posts. If I believe that the subject has more to it than I can scribble in 90 minutes, it will more likely become a candidate for an article and will be more fine tuned than a regular blog post. Now I thought I would write an update to my blog describing the second day at the Rapid Testing Course, but then I thought writing another a diary-like entry was not exciting enough - and I want my scribbling to be at least a bit exciting.

So why do I have to make a blog post about something that I’m not willing to investigate? I don't! That's the beauty of it! But I want to make a quick post on something interesting. In order to do a blog post from something that requires little to no research it could be about an experience that is worth sharing. This post is not from today’s class but from past but the topic was brought up today in the class.

James Bach and Michael Bolton use the Socratic Method to help learn stuff in their courses. To simplify, they ask a bunch of questions from a tester to squeeze out an answer - not possibly the right answer but one good enough. I got my share of the method in the class but I’m not going to talk about that. I’m going to talk about an event that happened 4 months ago. (Enter fairy bells tinkle and a wobbly picture to demonstrate a flashback...)

I wrote a white paper about six months ago about heuristic testing implementation that was discussed in a Peer testing session late last year. The article was about to be published in a testing magazine and it was fine tuned for couple of months by the editor and a couple of voluntary proofreaders. I still wanted to have a comment from James Bach and Michael Bolton as I have a respect for their opinion in all testing related issues. And so I sent a reviewed draft to them and waited for approval.

What then happened, I couldn't expect. I had high hopes on the content of my article as it had been reviewed multiple times by bunch of different people. I thought I was in a verge of a breakthrough and praises would that flying my way. Instead, James’ reply was simple:
“I'm completely opposed to this.”
What followed was an exchange of emails between me and James about the problems with the article. It concluded in a suggestion to remove the essential elements that I based the article on. I thought James had got it all wrong and I requested him to discuss the difference in views that we seemingly were having. Skype was the medium of choice.

We ended up talking for 90 minutes. First we were talking about the article itself and he clarified some points he had made earlier. Then James challenged some of the essential elements of the article and I tried to defend them as best I could. All the while doing so I thought better descriptions for the principles I was using. I was on hot coals during the conversation: if I had chosen a bad wording for my answer, he would grab it and ask the real meaning behind the words I was using.

The article did not survive, but I did. Later I was a happy to have endured the barrage and decided to hone the article so that I could later publish with pride and joy. I never really understood how much the discussion had given me, though. I had learned some very valuable lessons. The critique on the article was secondary compared to the practice I got performing under pressure and all the while holding to my beliefs. As James said in the course today, there is none worse than tester who is “pathetically complying”. I could have said “OK. I won’t publish! Just don’t yell at me.” and I would have lost all my credibility. I learned how to defend something even though I might be wrong. Ilari Henrik Aegerter gave me a coaching session once where we practiced exactly that: how to be able to defend your point. And so I became better at explaining myself and defending my point under pressure.

What I would have done differently is that I never really tried to sympathize to James’ point of view as I so aggressively tried to get mine across. I could have got more out of the conversation if I had listened more carefully and sought for meanings and advice that he gave between the lines.

Having shared this experience also enforced the learning that I experienced, for I was able to verbalize some of the stuff that I had thought only briefly. Next steps for me are to revisit the article bearing the real purpose of the article in mind, and try to make it better (if not perfect). The article is resting and collecting dust currently, but I will tackle the beast soon enough. I believe that the Rapid Software Testing course will give the inspiration boost that I need to get it done (although I think extrinsic motivation plays no part in this, as I already WANT to finish the article). Too bad I didn't sign in for the Let's Test! conference with the paper. ;)

Monday, 11 June 2012

How to cope with few end-user-testers in a testing project?

This is a summary about the 2nd track of the first day at Nordic Testing Days 2012, how I interpreted the process presented and what learning from that track. The track focused on building skills for the Business end-users to be able to test the system under test properly and as quickly as possible.

The track was performed by Maili Markvardt and was called “Testing: saved by the end-users”. I wasn’t expecting much out of it (I wonder why? Was I biased somehow?), but what eventually went down was very inspiring. Personally I have been in situations where the testing budget is so small that all guns must be brought to bearing. I thought this was one of those rants that “we didn’t have enough time” or “the client was behaving like child” kind of situations. Luckily it was not.



She started the track by presenting the situation: a total makeover of all information systems in a company, 7 large systems with ~90 interfaces, integrated in a “big bang” fashion. Immediately she got my attention, I’d been in a situation like that in my previous company (although not that bad, but similar on many levels). The system was done by many contractors and had about ~250 people involved. No professional testers and 1 test manager, Maili.

The problem was being solved by giving her a bunch of business people – people with no testing skills apart from some IT-skills acquired from previous life. So there was the lack of skills that needed to be taken care of.

How she handled the situation? Well, she trained the testers. The truth is that you can’t train people to become testers without them having enough time and motivation to be trained, or it can be very difficult. What she did was tackle the source of the problem: get a written mandate from the manager of these business people to be available as tester the promised amount of time. And holding them to that promise was (if I interpreted it correctly) an uphill battle. The business people obviously had their own work to take care of.

The would-be testers had little to none experience in testing. What Maili trained to them was the basic testing skills; mindset, test analysis and bug reporting. The approach was test case driven and governed by the test manager. Some challenges started to immerge at early points of testing; the business process was still unclear and under constant change, documentation was too complex, test cases too generalized, and people lacked the base knowledge to execute the test cases.

This is where I started thinking the possibilities of doing the testing the exploratory way. Could they have utilized the Rapid software testing approach to maximize learning and be more responsive to change? As the testers face these kinds of problems, strict and over-documented processes tend to fail due to lack of flexibility. I immediately reflected this to my own work and saw that we had the advantage to use RST to our advantage and benefit from the learning. Sure we also had problems, but the way we communicated with the stakeholders enabled us to make our testing more “to the point” and we uncovered lots of information that the stakeholders didn’t know they needed.

The ugly world of constant change took its toll on testing. Lots of bugs were found and not all of them were reporting real issues. The bug tracking process required the test manager to be a filter that would channel the bugs to correct stakeholders. Due to ambiguous documentation and knowledge about the interfaces (the testing for some of them was postponed to very late stages of testing), testing was difficult and the systems suffered from poor quality, and thus led into postponing the “Go LIVE” three times. The testing might have been the best quality available in that situation, but the amount of work forced the prioritization to ignore some areas until the very last days of testing.

All this put aside, Maili was able to create a process which involved described the process of training business people as testers. The process feels very sturdy and practical, but simple enough to be implemented by all test managers trying to cope with little resources. I hope people got as much out of the track as I did even though I didn’t expect much. Eventually I learned a lot about using what resources you have and to make most out of them. It’s the context driven way, I think: “Throw in whatever you have and the kitchen sink” to get the work done. To my view, Maili succeeded in the task that was very difficult to begin with.

Kudos!

Friday, 18 May 2012

I don't know

What's this post about?

I don't know. That's right; it's about "not knowing".

I spend the two days at a coaching course by TNM Coaching and we had a great time there. There were really good conversations about topics regarding coaching and I will delve more deeply into the ones that had most impact on me. Before I go deeper I will share some insights that I learned at the course about questions and the answer "I don't know".

The fact of not knowing

We all get asked questions that we may not have the answer. Some questions are just too complex for us to understand or we may not have the skills to answer that question. For example someone asks you about the amount of stars on the Northern sky, so you'll probably answer "I don't know". In this case you may not have acquired the necessary knowledge base on the topic and thus lack the ability to know the answer.

Could you answer differently?

When we answer by saying "I don't know" we subconsciously diminish ourselves. We give ourselves the impression that the knowledge is required to be "something" and by lacking the knowledge we are lacking as humans. It's a human behavior thingy of some kind, I think, and it comes naturally if we don't have the answer thought up.

If we could spend some time to think about the answer we might be able to avoid the "not knowing -trap". A difficult question requires a bit of analyzing. Do I need that knowledge right now? Could I check it up somewhere? Is there a reason why I have now acquired the required knowledge to answer this question? Do I possess the knowledge already but effectively forgotten it? By answering a question with a question (be it mental or verbal) you may find a better answer than "I don't know".

I don't know if I want to answer this question

There are different situations where you answer a question with an "I don't know". Sometimes the answer is to avoid answering truthfully. In a coaching session when another person asks questions and helps you solve your problem the answer "I don't know" may come in up. This poses interesting issue with the coach as there may be answers behind the "I don't know".

At this moment comes a point where the situation needs to be evaluated. Is it reasonable to try to find the answer behind the dodge or is it better to let it be. If you decide to let the issue untouched it should be stated. You may agree to speak of the topic at later times.

If you however mutually agree to go deeper behind the dodge, one good way is to eliminate the psychic lock (a Jedi Mind trick) by a simple question: "If you knew the answer, what would it be?" or "If a situation presents itself, what would you or someone else do to solve the situation?" The wording reaches behind the barrier and encourages the person to use the capabilities he or she has and start seeing the solutions. This may not however work always, but it is one part of the probing and facilitating the coachee to be able to verbalize his or hers issues and find the solutions.

More coaching stuff coming up!


This is my insight onto the subject of "not knowing". I got the inspiration to this from the coaching coach Vivienne Ladommatou who spent two days with us at F-secure to help us be better coaches. I really admire her wisdom about Genuine Interest and I think that could be the next post regarding the coaching.

I will be making at least some kind of a blog post series about coaching, especially the things that matter to me the most in coaching. I will do some practicing to hone my skills so if someone is interested to help me with my quest to become a better coach, feel free to contact me and we'll figure out some time slot and issue that we start discussing about using the coaching process.

So just tweet or Skype me, or comment under here, and I'll arrange a coaching session that best suits the context. When will be a good time to coach? Well... I don't know. ;)