Faster Timeline Could Mean Less Quality

I recently saw a post on LinkedIn and with it there was a communication between business and developers. The conversation went like this:

Business: “How long will the project take?”
Creator: “About 6 weeks”
Business: “We don’t have that time…I need it in TWO weeks”
Creator: “OK, we will do our best in that time”

And here is a cool video it was also referencing:

Truth is, as a software development team, we can accomplish almost anything in a short amount of time. So much of the timeline comes down to the desired quality of the product and functionality we are working on. If we release too early, we lose out on a lot of functionality and quality. But if we release too late, we could diminish the overall quality of the work we have completed.

As a QA Analyst, I find that I could continue testing new functionality over and over again, reaching deep into the scenarios that we have created, and possibly reporting more and more bugs as I test. The more time that I spend on new functionality, the more bugs I find, the more quality my team and I produce?

The Quality Bell Curve

This concept got me thinking about the possibility of a quality bell curve, where the project timeline matches the normal distribution of the curve. As the project begins to when the project is released are the two ends of the curve, and the middle describes the most advantageous quality enhancements our team could make.

For all intensive purposes, I understand that is not how the bell curve works, as with the curve, the middle is where you’d like to be, but I’m merely using this as a visual representation of a timeline from left to right. Although, it is possible that we could correlate the actual bell curve to the production of our products, where the middle area is the best quality, but maybe for another time. Back to the timeline approach.


If we interpret this as a timeline from left to right, then we can apply different moments in time to the appropriate areas of the curve. And remember, with bell curves, the left and right ends don’t ever actually touch the line, which we will call 0% quality.

Story time. We have a project timeline of six weeks from today when we’ll release to production, and we just sit down for the first meeting.

Let’s call the left most point the initial business meeting. This is where the idea begins and the initial conversation happens. The quality of the project begins to build, but at this point, fairly slowly. No work has begun on the project, but only plans for how to build out the idea.

Soon after, the UX designers have begun building out actual mocks (chicken scratch or high res) that assist in the meetings, and thus our quality of the project has increased, but not a lot yet, as there is no functionality built out.

Now we get the project into the hands of the development team, who, for example, is able to develop the entire project in two weeks time. The QA team and all other participants (usability testing, dba structuring, etc) has all had their active parts in the development process and the functionality is complete and tested. At this point, we would be near the top of the bell curve, if not standing on the peak. Everything is complete, tested and verified, and ready for production. However, the release is scheduled for another 3 weeks out. This is where the quality could begin to decrease.

As the time increases between new functionality being tested, and the release date, the quality has a chance to decrease. Perhaps it’s because the market shifts and the demands are no longer as high. Or maybe it is due to the decrease of knowledge and support for this functionality, so the release may come with some additional hiccups. Whatever the reason, I think it’s important to recognize the value of the project timeline and ensuring that we are able to release at the most valuable time.

Other Curves

I’ll keep this part brief. I was thinking of a bunch of different curves that could also describe the development process as a timeline.

The Learning Curve

The learning curve is another possible reflection of the development process timeline, where as the work has not started, there is no value or quality added. Once the project begins, a ton of quality and value is added very early on, but as time continues and you plateau, the increase of quality is difficult, as testing just becomes ensuring quality vs increasing quality.


The 45 “Curve”

Another possible example is when the work begins to when it’s released, there is a constant increase of quality and value added to the project. I don’t necessarily agree with this approach as often times there is slow points to the work and this does not account for those times.


The Story Line Curve

My last, and most colorful curve comes from elementary school, where as the story continues, the quality begins to grow. It hits that optimum time to release where quality is at an all time high, yet the release date is scheduled for a while out still, so quality can begin to diminish slightly. However, with this curve, there is a maximum decrease in quality over time, because it is still new functionality nonetheless.

I could be swayed to this one also, but the reason I lean on the bell curve is because the timeline of a project is not precise, in that the timeline could be years for a given project, and therefore quality will truly begin to sink for the new features. The story line curve doesn’t account for the extended timeline in it’s representation.


All Done

Well that’s it, curves as it relates to quality of product development. What could I possibly think of next?

Even Connect 4 has Feature Enhancements

The basic game of Connect 4 (hopefully I don’t need to explain the concept) has had the opportunity to release feature enhancements. When I was a young lad, I assumed Connect 4 was Connect 4, and there was no improving on the game itself, but maybe improvements on the construction and durability of the great wall of slots. I found out this weekend that I was wrong.


When Connect 4 Satisfies the QA Analyst

I recently wrote about When Wrapping Satisfies the QA Analyst, but I’m discovering more and more activities that satisfy my daily analytical need for perfection. While playing the basic game against my five year old daughter, I got bored of winning, or rather, she got bored in general, so we began making cool designs. With every drop of a coin into a slot, I was either happy or bothered by the placement of said coin. Most were fine, I was able to simply drop the same color coin into the mirrored y-axis position, or I was required to remove the coin by sliding it up, holding with one finger, sliding it up, holding again with the other finger, and repeating until the coin was out. This led to some pretty creative designs by my daughter and me, some of which were entirely Picasso in nature. Those were the ones my daughter preferred.

Here’s the final picture of our work, the one she was most proud of designing.

C4 design

How Connect 4 Released a Feature Enhancement

Now back to the point of what I wanted to say. I was playing this basic game, when I looked at the box and saw that there were actually three ways to play our Connect 4 game. All these years I’ve only ever known the basic traditional game, yet somehow Milton Bradley was able to come up with additional versions of the game and apply them to the same basic board. Now I can play Original, PopOut, and Pop 10.

C4 3 ways

This is great strategy and one that we can practice in software development. Sometimes the additional workflow or enhancement to our products is only a few hours away, yet can provide a ton of enhanced functionality towards our software. This type of innovative work should be practiced and rewarded, as it opens up doors to new possibilities with such a low cost to the company.


But Wait, There’s More…

My Connect 4 mindset was truly flipped upside down when I was at a party on Sunday for my nephew, and they also had Connect 4. It was the same version that I had, same box design, everything, only their version had FIVE ways to play. Milton Bradley had done it again, spent very few innovative hours and released a ton of new product functionality. In addition to the Original, and the PopOut and Pop 10, I can now play Power Up and 5-in-a-Row. There was a small addition to the construction of the great wall, and bam, two additional games.

Connect 4 Five Ways to Play

With this type of innovation, it not only brings back a classic game from the 70’s, but also keeps it current and fun. When we apply this same style of enhancements to software, it keeps them current and up to date, as well as fun to come back to. These are basic rules to consider when discussing large updates or small enhancements, while weighing the cost value and user increase it could provide.

Becoming Crisis Proof

I get a new desk calendar every year that has a daily read/game/trivia, so this year for Christmas I got a Deadly Skills calendar. It basically lists ways to always be prepared for attacks, violent situations, and to increase the overall awareness and be on the offensive. It was interesting to me when I opened the box and read the page for January 1st, the similarities to my every day job as a QA tester.


Here is a picture of January 1st:


I could spend some time breaking this down line by line and comparing it to the roles of a QA analyst, but I’ll keep this one brief. Basically in my daily work, I have to be aware of the possibilities that could arise, be offensive in my testing strategies, create test plans and actively practice test plan management.

My favorite line above is

…comprised of situational awareness, personal and cultural awareness, active threat reduction techniques…

Is that not what we do as QA analysts every day? Constantly reminding ourselves of our user’s workflows so we can test sufficiently and be actively reducing threats users may encounter when they are in our products.

It is crazy to me how often the world around me presents itself as a QA opportunity or a moment to reflect on my role as a QA analyst.

Explaining Your QA Job to Others

The Christmas season is over and the new year has begun. I spent most of my holiday time at different family member’s homes celebrating Jesus Christ and His birth, while also enjoying delicious food and exchanging gifts. What a great time of the year.

But this also made me think about how I explain my job to other people. Fortunately this year I didn’t have to do too much, as most people know what I do now, but in years past, I have had to answer the questions to the inquiring individual, slightly adjusting the words with each explanation.


The Interested Aunt

One of my favorites to explain what I do, is to a close family member who actually cares to learn something new about my life. They ask an initial question of where I work and what I do, and follow up with additional questions about my day to day and what I enjoy most.

My usual response to this type of person, prior to me recognizing their interest, is a basic response like “I’m a QA analyst at a software development company”. Sometimes I’ll increase the initial response to this person with, “I get to test the software that we make for our users”. These responses in combination with this character, lead to an enjoyable and engaging conversation of interest about my job.

The Obligatory In-Law

Such is Christmas that is brings together the extended family that you see but a few times a year. This brings on the obligatory ask, “what is it that you do?”

To this I respond the basic answer above, that I am a software tester at a company called Zywave. You’ll instantly recognize the character’s intent when they say something like “oh cool, that’s fun” or my favorite, when they respond with “Zywave, where’s that?” as if knowing the location of my company will clear up any confusion you may have about my daily duties or roles. I usually don’t follow up with any additional information, and attempt to seek out the next conversation at the Christmas party.

The Loving Wife

My wife is great, she genuinely cares about my happiness and desires me to be in a job that I love and come home from with a smile on my face, and can’t wait to talk about. She endures the painful detailed description of my days and weeks, and appears to truly take interest in what I do. She can also easily name 20 or more of my coworkers and could probably tell facts about each or a small story I have had to share with her.

To her, I have taken opportunity to explain all aspects of my job, and though I attempt not to share too much in each sitting, I can probably say that I’ve shared everything I do, and my wife could say she knows nearly exactly what I do for my job.

The Truly Curious Mom

Many people share a similar relationship with their mom or dad that I do, which is a really close one. My mom is really interested in my job and what I do, because she cares a lot about me and wants to know what I do. However, my parents may not necessarily grasp the entirety of my job, because most people can’t unless you work in the industry, so I share with them about my job and the testing of software that I do, sharing more about the industry of software that we design for, and how our products better our user’s day to day process. This character is a good one because they regularly take interest in the job throughout the year, so as the industry shifts and my job changes, I can update them on the newest trends and duties.


The Inquiring Friend

I have a very close-knit group of friends and we all know so much about each other, that we could probably pass some lie detectors for each other. But even though we share so much about our jobs and discuss day to day activities, I still take the time to discuss more about the perks of Zywave vs the actual rigor moral of my day. Not so much because it’s a competition, but that is something that every one of us have, company perks, and not everyone fully comprehends each other’s industry.

To this character we discuss things like PTO and benefits packages, office location and layout, as well as the onsite amenities like a ping-pong table and pool table, with a couple arcade games and Foosball, and we don’t forget to talk about the free soda. Again, the attempt is never to one up each other, but rather just to share the pleasures of our jobs, and ultimately congratulate each other for getting such great gigs (since most of us are doing what we love).

The Other Software Guy

Another favorite character of mine, because this is the one that shares a similar interest and ultimately understands the joys and stresses of being in the software industry. However, because of what they do and the fact that it is similar to what I do, sometimes the familiarity causes this type of conversation to be sharing of comparisons rather than an actual interesting conversation. Talking to another software guy does provide the opportunity to share horror stories, and sometimes that is very nice to hear that others also experience similar problems that I do.

Each character has their advantage and disadvantage, neither is necessarily the best or worst, but each provide different conversation which adds to the daily joys of my life.

When Wrapping Satisfies the QA Analyst

‘Tis the season to get together with family, share a meal, give and receive gifts, and cozy up by a warm fire. It’s also the time where stress is at an all time high as you prepare for the holidays by cooking and wrapping presents.

Such a time really pulls out the QA in me.

While I was helping my wife wrap some presents, she hands me a gift and some paper, which has a few horizontal lines on it. This type of paper is a dream because it allows the opportunity to satisfy my need of making a wrapped gift completely “bug free’.

As I wrap the present, I so carefully line up all the trees and bars so that everything matches, pull it tight, fold the corners down and slap some tape on it. Upon completion, I sat back and was mesmerized at my gift, how the lines came together to make a perfect square on the ends. I even said to my wife, “this paper is so satisfying”.

Gift Wrapping

Then I began analyzing my present. Where are the bugs, where could I make improvements to better the wrapping process and make future gifts more pleasing to the eye. In the picture you’ll see many opportunities for improvement, each one made it to my next gift. Although, I realized there is an additional skill needed, more than just being a QA analyst on my wrap job.

I am not a great wrapper. I can wrap a present and carefully take the time needed to make it look pretty good, but without much more practice, my gifts will always look like this.

I’ve been asked why I always analyze everything, why I am always looking at everything around me and “judging” the look or the process, or perhaps the behavior. Truth is, this is just how my brain works. I’ve trained myself to be analytical at all times, and while sometimes that may not be a great thing, it has proven very beneficial in order to improve process and quality of the products I work on.

This type of mindset is a learned ability, if you want to become a good QA analyst in your respective field, or a developer who wants to better your code, start by wrapping a present and analyzing all the good and bad. Take a walk and find problems with houses and sidewalks, simply look around and analyze what is around you, there are bugs to find everywhere.

Now go and make memories. Merry Christmas.

A Game of Mousetrap

Did you ever play the game of Mousetrap growing up? Most people would say yes, that sometime growing up they owned the game or played with a friend. But can anyone say that they actually ever played the game of Mousetrap? I for sure never did, as my sister and I would spend the time setting up the whole trap, run it through a few times, then throw everything back in the box to “play” again next time.

MouseTrapI think there were actually mice with cheese triangles, that you somehow had to earn, and spend on components to the trap, and work towards assembling, but I never once read the rules or was told how to play correctly. I only wanted to do one thing, set up and catch mice.

This makes me think about how our users will interact with our products. We spend hours designing and developing so that our users have the greatest and easiest experience with our product, only to find out that they may not use it as we have intended. Sometimes we find out that our users will do nothing as we expected, or as we designed, and then we either get to decide to build it out better for them, or let them continue doing their workflow.

Software isn’t the only area of product like this. The game of Mousetrap is one example of hundreds, that were not used as originally designed or developed. Play-Doh, bubble wrap, even Coca-Cola are some products that were originally developed for a certain purpose and were later re-branded for use, due to the market’s need or how they ended up using the product.

As testers of products, we are required to test as the business asks, and then some. We are told to put the product through rigorous testing, just so that it can be used without errors, but what we can’t always test is how the users will actually end up using our product. At Zywave, we have a team of UX Designers, who spend hours studying the market and running usability tests with our customers, to try to figure out how they’ll interact with some of our new development. They do a great job at getting us quality information, but that is still a subset of users.

I wasn’t around in the creation process of Mousetrap to know, but I’m certain when they created the game, their intent was not for the majority of users to only setup and catch mice. They probably intended for use in one way much like we intend our users to use our products in a certain way. It’s just a reminder that we can never be certain of how our users will use our products, so we just have to test a little more to make sure the bugs are few and far between.

Bug or Intended Functionality?

Today I was taking advantage of a deal to get free cheesecake as long as I used this newer restaurant order and delivery service. The delivery service was offering free delivery today, I’d assume to acquire new customers, and offering a piece of cheesecake from a local restaurant at the same time. However, there was one contingency. The order had to be placed today, December 6th, and the order had to be delivered/completed on December 6th. While that seems like an acceptable rule, there were some issues.

First thing to note, this site allows for future ordering as well, and then will place the order and deliver on a chosen future date. I’m not sure if I personally would ever use this feature, ordering my meal online today, but not wanting it for two or three days, but I am able to recognize the value for people that may want to get all the meal details figured out before hand, and then spend the remaining few days preparing their house for the guests.

Now that we know that information, when I went in to order my cheesecake, it presented me with the next available earliest delivery time, two days from today, around 11:30am. This wasn’t going to work, as I needed to close my deal today in order for it to be free. I searched for the ability to change delivery to today, but it did not appear to be an option, and finding the date/time selector was no where near my shopping cart. Additionally, I wasn’t even sure how to check out, because everything was disabled. I eventually found the time selector where it informed me that today’s times were already full, and I must select a time two days from now. At this point I figured out that I could select a time two days from now, and that I would just go to the checkout page and enter the code, to see if it would still work.

After choosing two days from now, around noon, the checkout button became enabled. On the checkout page, I entered the code, and the cost of the cheesecake came right off the total bill. There was also a Change button next to the Date/Time of delivery. I clicked that and was able to select today’s date for 12:30pm. Submitted the order, and sure enough, my cheesecake was delivered right on time.


So what’s the point of this story? Why do I write about my cheesecake experience today in an overall negative tone, while still expressing the positive outcome of the day?

Most of what I write is to train our minds to be more analytical, to think about our processes and workflows, and evaluate how it went, while possibly considering better ways to do it. With all the websites out there that have a workflow in order to get something done, it just means there are a lot of opportunities for improvement.

I don’t need to go into detail of each area of improvement I would recommend for this restaurant order and delivery site, because often times enhancement requests and user workflow is different for every person, and also because if you’re reading this, you can spend a moment thinking of how to better the experience. As a QA tester, we have an opportunity to speak up during the building process and ensure that the workflow is the best it can be for the user. It doesn’t mean we will always be heard, or that as a team we will build the best user workflow, but it’s important to recognize the value of the team, and how each person looks differently at the workflow.