The “Why” for QA

Coming up in May will be the QAI QUEST conference. I have had the great opportunity to share my knowledge and the successes (along with lessons learned) within my organization.

The conference is a great opportunity to share ideas and learn, not just from the speakers.

Over the past few years I have taken up the “Why” movement that was started by Simon Sinek. I was introduced to it while going through my MBA and I really struck a cord with me. Over the years I have have tried to emulate my messages based on The Golden Circle, then I read his book Start with Why. The book is when I started to see that the Why not only falls within messaging or leadership it is an internal component that drives what you do.

With that I read Finding your Why and I found how everything started to fall into place. I looked into my Why statement and started to think about the QA discipline. As per the book the statement is formed as a Tribal Why and it gives the emotional statement of why a group does what it does.

In the end a Why statement is “To _______ so that _______” (Chapter 2 of Finding your Why). Seems fairly simple, right? Well unfortunately it isn’t. It is a long thought process that requires fine tuning over time.

For individuals, there is some soul searching and definition of feelings of what makes you tick. For organizations it is taking what individuals in your organization feel is their Why find the themes then figure out a statement that fits. Something that tells clients and future clients that why they should buy your product or hire your services.

In my QA Corner segment on SPaM Cast on this subject we do go into some details of what if the individual and the organization statement don’t line up? This could occur. Even in the books they go into some detail of that happening as well. It is not the end of the world and people can adapt without changing their Why . Or it may not be a good fit, who knows. My suggestion would be have a discussion with your manager and talk about it.

So back to my initial thought in the beginning of the blog regarding QUEST. I will have the opportunity to do a Tribal Why for the QA discipline. The intent is to not only get a statement of Why people in QA do what they do, it is also to spread the Why movement. I am looking forward to sharing and having good discussions throughout the conference. As well as learn what others are doing, not only help the discipline as a whole, to help individuals grow.

I cannot wait to get the discussion going.

P.S. I will also have a track session on Estimation.



Minimum Viable Product: A great concept. Develop just enough of a feature that can be used by clients and provide value while the teams add more functionality incrementally. Makes sense, doesn’t it?

Unfortunately there are people that see MVP as a big shinny box with a ribbon on it and not smaller boxes over a longer period of time. I feel it has roots from old Waterfall thinking. 

“Let’s go in big bang.”

“I want everything to work as I wanted.”

I would be great to get everything all at once in the time that it is requested. Unfortunately it never really worked out all that well when Waterfall was king. There is plenty of documentation out there that shows empirically that a lot of what was asked tends to go unused when deployed in a big bang fashion.

I won’t get into all the delays and painful meetings over change requests. I am twitching now just the thought of all I went through early in my career.

I am not sure why people want to have the big shinny box when there is actually more value in the small ones. We know what our customers want now, and unfortunately minds change over time. Especially if they have to wait a while for a product. 

Think of it this way. As a former personal trainer one of the things I told clients was to eat more small meals throughout the day and not 3 big meals. The body functions better when there is a constant flow of calories then a big influx. 

Clients are the same way. Give them small amounts of value and gather feedback to improve upon. That way there they get something they want faster and will continue to use it down the road. 

Revisiting User Story Maps

Software Process and Measurement

Story Map

Information Radiators are one of the most powerful concepts championed in agile as communication vehicles.  In many organizations, the use of information radiators has waxed over the past few years as more and more tools have locked data into monitors and tablet screens.  As electronic tools have replaced paper, putting radiators where people can see information, as they work or walk by, has been replaced by instant access (which is code for never looked at).  Product and sprint backlogs locked away into tools have the same problem as burndown charts, cycle time scatterplots or work in process aging charts that are in a tool and never looked at. Instead of locking backlogs away, create and use agile story maps to increase transparency and improve access to information. The goal of a Story Map is to present the big picture of a product or feature for everyone on the…

View original post 384 more words

Writing a book is hard and other things

As some of you know I have been wanting to write a book on QA, leadership and knowledge sharing. The intent of the book is to give my advice and knowledge to, not only those in the QA discipline, also those outside to understand what they have.

I have been planning this since my MBA, a few years ago, and I have been slacking a bit on it. Part of it is general life got in the way the other part was being a deer in headlights looking at the amount of work needed to get done. The initial intent was to write as many blog posts as  I can and then expand on them to get the book going. I do have a lot of material so far I just haven’t filtered through it all.

The other issue I have is what will go into the book. There are so many good books out there on QA and testing that I wanted to differentiate mine from the others. In trying to get there it is a lot harder than I thought. Don’t get me wrong I have a good plan in my head and I have a rough outline of the chapters I want to write. It is combining those thoughts into something tangible that I am running into problems.

My solution: go Scrum.  I need to break things down and focus on one thing at a time. If not it will take me another few years to get something done. I’m going to build on my outline and export everything  I have written so far and go from there.  

If you have any ideas of what I should write about, feel freen to let me know.

Now it looks like is having another good year. Last year I had way more visitors and views than previous years the blog has been around I was happy. Now it looks like it is projected to be another record year. As something that I was using to just gather my thoughts, I couldn’t have imagined how well it would be received.

One suggestion that was given to me was to get guest bloggers to post here. I am currently talking to a few people to do some posts in the next year. If you are interested let me know.

I have been reading a lot of books lately, so you will see those references as time passes. Should be fun.

That is it for now. Have a good day.

Hard Deadlines

“It must be done by this date, no exceptions”

Who has heard that before? Ok you can put your hands down.

In over my 25 years in technology I should have put a dollar away for every time I heard it. I would be nowhere near retirement but I could buy myself something nice.

I finished reading Jeff Sutherland’s book “Scrum: The art of doing twice the work in Half the time”. The stories he has in there are amazing. Sometimes people will make a decision without all the information and get caught. Publicly announcing deadlines will definitely paint you into a corner.

It happens though and it should never be seen as a bad thing. Sometimes there are things at play that it has to be done by a specific time. Technology in Healthcare is a great example. There are compliance and codes that need to be in a system by a specific date. So here it isn’t someone in a company painting product, development and QA teams into a corner it is an outside entity and they don’t care about constraints, it has to be done.

So for the two scenarios I listed above I will talk about the second one first, it’s easy. It has to be done. Here the team should have enough time and planning done so that they are prepared to get to the finish line without issue. Unless you are new to the market something like this is very predictable and knowing the team’s velocity and the amount of work needed from past updates it should be a cake walk.

With that said, “s*** happens” and a wrench could be thrown in just to keep things exciting. If and when it does happen, my best advice is to remain calm, assess and plan. We are in an age of Agility so everyone getting together to meet the challenge will make them successful.

Now the big issue, self imposed (company) deadlines. For the most part with proper planning, estimating and understanding of team’s velocity a deadline can be identified without much issue. It is when one or more of those things are not done is when dates are at risk. Regardless of the SDLC methodology Testing  will feel the brunt of the stress to get it done. The trick is what can be done about it.

Work overtime? Yep, that can be done and it will burn out your resources. As well as not guarantee the work will be effectively done since they will be close to, if not already burnt out.

Throw more resources at it? Have you read The Mythical Man Month? Putting more resources on a project does not mean it will be done faster. The best example is a pregnancy. Adding more pregnant women will not produce a child faster.  That is not to say it will work, adding resources to the testing effort not the pregnancy, it is actually going to add up to more work involved in coordination and ensuring there is no duplication of effort.

Re plan and scope change? This could work. Having a clear understanding what is needed and in an iterative environment look at all the work that is left and clearly define what needs to be done to meet expectations and what is a nice to have (or next release). This is one of the basic advantages of Agile and use of Scrum. It can be used in other methodologies, it is going to be a little more painful in going through all the work that has been done and not done as well as any interdependence between half done code.

Risk based testing? Yay I finally said it. I know you were all waiting for it. Yes, Risk Based testing has been around for a while and it is a very simple concept. Identify what areas have a high probability and high impact of failure or calls to support if it were to fail, then test that. From there you start to limit the amount of testing that is needed to be done.

There are a couple of other things that it will give you.

1 – A ranked set of test cases based on importance.

An example would be test cases involving financial transactions should take higher priority to how a GUI button looks like.

2 – It gives the stakeholders transparency of what is going to be worked on for validation and what will not.

Here collaboration is key. Everyone needs to know what is going to be done so they can be prepared for potential customer calls on stuff that was not tested.

Then comes the worst case scenario: telling senior management it just cannot be done. I have had those conversations. They seem scary at first, yet in the end all you are doing is stating the facts that with all that has gone on and with the time that is left it is physically impossible to make it. To me as long as you provide the right data with the message it should be understood that the efforts are there, it just cannot be done.

Yeah the leadership will be upset, same with any other stakeholder. In the end it will pass. New dates will be given, because the team worked collaboratively and figured out the most efficient way to get the work done and are more confident in any new dates they provide.

The best thing that can be done in these situations is have things in place to track and measure. I’m not saying a Gantt chart, as stated in the above mentioned book, they don’t work. Tracking velocity, amount of work left, burn down, stuff like that can give you a good idea of where you are going to end up. With this information you should be able to see potential train wrecks well in advance and the team can work together to avoid it. If the wreck is going to happen, no matter what is done, don’t hide the issue. Better to let people know as soon as you know so they can be prepared and work on making informed decisions.

Making bad decisions

It happens, you go into a situation and needed to make a call on something. You only have a couple of avenues to go and you decide. Then it happens, the decision you made is the wrong one and things didn’t work out well. It happens, everybody has done it in one form or another. What happens next is key.

In my last blog I talked about accountability now I want to talk about accepting that accountability and owning it.

When things go well at work some people will gladly raise their hand and say “That was all on me”.  Personally I think that is a bit selfish, most work done now involves multiple individuals, indirectly or directly, to get it done. It should always be team first, in my opinion. What I find interesting is when things go wrong for the individuals who pat themselves on the back and how they react. In my experience those individuals will lay blame on others, even when it was them that made the decision.

“It didn’t work because the others didn’t understand what I wanted done.”

“<insert name here> messed up.”

“There was nothing I could do”

It is so easy to blame others and make them look bad. I get it, I used to do the same thing early in my career.  What changed for me is a comment I got from one of my leadership mentors: “own it”. At first I thought of it as something that would help me become a good leader, and it did. Over time though I find it has a much broader scope. I started telling all my directs and teams to “own it” as well. I didn’t care if they made a bad decision what I cared was that they saw the mistake, took control of it and learned from it. We are not machines with a decision matrix, we are human that have way too many variables that are involved with most decisions at work that we make our best guess most of the time.

Sometimes the decisions are made and there are outside forces that make it go south. I would still take ownership of what I did, state what I didn’t foresee and ensure that I would keep what happened in mind the next time I was in the same situation.

Being accountable for the decision should be less stressful then playing the blame game.

Now I know that after you read that either your eyes rolled or at “pffft” sound was made. Hear me out on this and you will see what I mean.

Say “oh s***” only once (maybe twice)

Going back to my main stress relief, Jiu Jitsu there is something I always bring up when I teach a technique. I call it the “oh S***” moment. It is the point when your has made a mistake and you begin to capitalize. Some of my students when they compete, same with me, will have that moment where we say it to ourselves and get beat. What myself, our main instructor and the other instructors instill is learn from what happened and not dwell on the loss. On the mat there are so many variables that are in play, the opponent, the referee, the noise in the gym, the wait to get the match going etc… In the end though it is you stepping on the mat and your decisions on how to approach the match that matter.

Same in the work environment it is up to you. Now there are group decisions or consensus done to make choices, yet although it is a group setting each individual should still take the accountability for what was done. What is important that if things go bad everyone has learned from it and will have a different thinking process next time.

Taking the higher ground and have a plan

With ownership also comes taking the higher ground, and having a plan to get past the situation. Even if you have a boss (see how I said boss and not leader? I will get into that later) that is angry with what was done and doesn’t really help the situation, you can hold your head up knowing you have a way to get past the new obstacles. Always have a plan B ready, you don’t have to have one done when you make the first decision just be prepared. I have gone into situations where I had to come up with alternate plans, sometimes it takes me a few minutes or it takes a couple of days it is all matter of what is going on.


It is all about support. To me a boss will just get angry, muscle their way past the situation and play the blame game. A leader will support the decision and appreciate that you have a course of action, and if they don’t agree with it they will work with you on a path that you both can agree on.

There is a story out there about a VP that made a decision to sponsor a project that cost millions of dollars. It was a long project, it was way over budget and in the end it was trashed. The VP was called into the CEO office where he thought the worse. The CEO talked about the project then gave him a new direction to follow. The VP said thanks and mentioned that he was prepared to clean out his office. The response he got was not that surprising coming from a good leader.

CEO “did you learn from what happened?”

VP “Yes,”

CEO”Good, then why would I let you go after spending millions of dollars on your education”

You never lose, you learn. Making bad decisions happen, it is how you and your leader react that will make set the tone for success.

Why is Agile so hard to get done right?

Agile has been around for over 20 years. It has shown a lot of benefits to software development and improved quality to what clients/users want. Yet in discussions with peers and reading a lot of literature it seems like it is something that is just too difficult to grasp. Why is that? What is it about this way of getting work done is so hard for organizations to understand?

Looking at Jeff Sutherland‘s book: Scrum – The Art of doing Twice the Work in Half the Time it is fairly straightforward. Especially as one of the authors of The Agile Manifesto you would think it would be simple. Let’s revisit the values for a second (from the wikipage):

  • Individuals and Interactions over processes and tools
  • Working Software over comprehensive documentation
  • Customer Collaboration over contract negotiation
  • Responding to Change over following a plan

Seems pretty easy, right? Wrong.

Some people I have talked to about this take the values as stated laws and not guidelines. I will be honest here, when I first started to understand Agile I did not like it. It seemed too much cowboyish than structured. It didn’t feel right. Then I started to look into it more and more. My feelings towards it started to change and at the same time that was happening I noticed that I actually was following the methodology in the late 90’s without noticing it.

For me it all started on a program I was leading the testing effort. It was a pure waterfall project and it was not going well. Based on the project schedule it was three weeks behind before it even got to the testing phase. So the pressure was on. There were a lot of factors at play and the deadline was not changing. So I decided that it was time to do something different. I started daily scrums following the same principles as in Jeff’s book. Asking the three main questions:

1 – What did you accomplish yesterday?

2 – What are you doing today?

3 – What is blocking you from getting it done?

From there I went on to get things done, and we did. We met the deadline without 1 hour of overtime needed. It was great, everyone felt that they accomplished something. I was able to apply Agile principles in a Waterfall project.  Pretty impressive and I am kicking myself for not looking into it more back then to understand what I actually did. Well the reason I didn’t do that was because I didn’t know. To me it just seemed like the right thing to do.

Looking at the Manifesto I will go through what I did all those years ago:

  • Individuals and Interactions over processes and tools
    • We interacted daily
    • Worked as team to meet the goal
    • Helped each other
    • We still followed process
    • We still used tools
      • The last two we were more focused on the first three points than the last two.
      • We used found efficiencies to get the work done as we went along.
  • Working Software over comprehensive documentation
    • Get the work done
    • Ensure scope is completed
    • Ensure test results were documented
      • This was done in a bank so test results are an audit-able document. So we needed it.
      • What we did was understand what is needed for an audit and ensure we were compliant. They were focused on one set of results. So we ensured that the last run of cases were documented and ensured less duplication.
      • The other benefit we found here was saving a lot of storage space.
  • Customer Collaboration over contract negotiation
    • We worked with the Business Analyst to ensure what we were testing was what they wanted to see.
    • Shared results
    • There were really no contracts of negotiations done
  • Responding to Change over following a plan
    • As with any project in Waterfall there are change requests. The team adjusted and still met dates
    • Although there was a Test Plan documented (it was Waterfall after all) we never revisited it. We knew it would take too much time go over it and figure stuff out then get the approvals. We just planned on the spot and go from there.

So back to the purpose of this post: Why is it so hard to go Agile? If I was able to do it without any training why can’t some teams get it straight when there is so much documentation out there to help?

I see it as a couple of things: Taking things too literal and fear of loss of control.

Taking things too literal is an easy one to talk about. Basically people take a look at the Manifesto and basically treat it as gospel. This is where the cowboy comment from earlier came from. I have seen teams that treat Agile as a free for all and that they can do whatever they want. When in actuality Agile needs discipline.

Yes teams will have to act fast on stuff that may come in from Business, Clients or senior executives. It is going to happen. It is how the team reacts that is key. Not every moment is a “drop everything that you are doing and work on this”. When stuff happens it is up to the team to analyze, collaborate and ensure there is complete understanding of what impacts there are to adjust. Taking work out of a sprint so not to impact capacity, move it to the next sprint as it is not as critical as initially thought or prioritize for future releases.

Or the teams will just throw in a lot of work in the sprint without properly ensuring they are effectively pointed or they don’t really understand their velocity. What happens with that is usually the Burndown chart looks more like a city skyline then a slope with a huge drop at the end because incomplete tickets are moved to the next sprint. From there it just snowballs out of control. This then impacts everyone in the team. The sad thing is it becomes the norm and people become complacent.

It is not a matter of throwing work in and seeing what comes out. Speed is great and eventually a good running team will be able to accomplish great things on a faster schedule. It is about setting a good foundation of to get there. Getting speed for the sake of it will lead down a road that will not end well for anybody involved.


The fear of change is powerful. Normally humans don’t like to do something different. As long as they are comfortable they are good. “It has worked before, why do something new?”. Jeff said it best in his book “Change or die”. Going on a deeper level it is evolution. We all know we can’t stop that from happening in the world so why be so closed minded to evolve how work is done?

I had similar fears and I overcame them. There are some of my former coworkers that would be pretty impressed that I have become an Agilist.  How did I overcome it? Well one, as stated earlier I actually did it, and two education. Reading, courses, and talking to others have given me the insight to see the benefits and how to apply good change management to get others down the path.

This post didn’t really go into a lot of QA or testing, hopefully you can see the implicit message of how QA is involved.