Tag: software testing

  • Quality Assurance for Startups – Part 4

    The last three posts have concentrated on Quality Assurance for Startups. Next week we will move into Starting Quality Assurance (for an already existing organization). However, we will finish off this week with some small examples of Quality Assurance Processes that a Startup can adopt for little or no cost.

    The first and easiest one is a Incident Tracking Process; definitions, and standards. You can easily  download a free Incident Tracker online or simply use an Excel Spreadsheet. The part that tends to get ignored is the process and standards. Generating a incident tracking flow chart can be done on paper and takes little time to create and post. Standards for the Priority and Severity for incidents can be downloaded from the Internet or generated. The resistance is usually because it is viewed as unnecessary at this stage. However, if it is created and posted at this stage, it becomes part of the culture.

    The second one is the code control and promotion process. Similar to the above, it is generally not viewed as worthwhile at the Startup stage since everyone knows where the code is and how it is to be treated. It is also likely that not all steps or stages are needed at this time. However, another flow chart showing the steps and the expectations at this stage can save a lot of concerns later. The diagram will need to be augmented as the company grows and becomes more complex but the initial diagram is quick to create and solves a lot of problems.

    The third one is testing processes. Again, it may look like too much effort for too little return at this stage but the creation of a testing process, standards, and definitions can be very effective in ensuring that everyone is working in the same way and can avoid a lot of repetition and redundancy.

    None of the above are intended to take more than a few minutes to create and set up. The payback is quite high and long term benefits are huge.

  • Quality Assurance for Startups

    Quality Assurance for Startups sounds like a bit of an oxymoron. Startup companies and leaders have enough on their mind without adding that ‘horribly slow and stodgy Quality Assurance Process’ to the mix.

    This concept is wrong for a number of reasons:

    1. Quality Assurance is never about being slow or bringing the process to a halt. It’s all about speeding up delivery of whatever you are supplying.
    2. Set up good processes at the start of your business and make improvements that have the biggest return, before bad or wasteful habits become entrenched.
    3. A startup needs to provide a product or service that ‘delights the final customer’. A product or service that falls short in some makes for a short-lived company.

    What does a startup need from Quality Assurance? Just enough to make the final deliverable delight the customer!

    So what should you have?:

    1. Processes that ensure feedback from the customers is received.
    2. Sufficient information about the way the deliverable was constructed so that feedback can be actioned.
    3. Assurance that the changes made will not impact existing functionality adversely.
    4. Consideration of how to implement future growth opportunities.

    Of the above list, the last two are the more important.

    We generally would consider the third point to be a form of regression testing and the earlier that is planned and implemented, the cheaper it is. However, it is often left (as we can personally testify) to a later release and the startup spends thousands of hours and a lot of funding retroactively forcing in regression testing. Minimal consideration of the possibility of needing this will SAVE A LOT later on.

    The fourth point above is slightly more difficult to apply since it requires some anticipation of future needs based on limited information. We will leave that one for next week.

  • Quality Assurance – Implementing Right the First Time

    The last three NVP Blogs have discussed Doing it Right the First Time. The last one addresses the issue of Implementing Right the First Time. This is the part that usually trips up most people. They know they want to implement this in their organization. They know how or they can refer to explanations that will suggest how. The problem comes when we try to actually implement the process.

    As is usual with almost any new initiative, we want to follow three precepts:

    1. Start small.
    2. Pick off the easy items first.
    3. Publish the successes.

    Taking these in order:

    Start small
    Start with something over which we have full control or a limited number of stakeholders. Do not start with a mission critical project with numerous stakeholders; that will not work.

    Pick off the easy items first
    A quick analysis will reveal some small and easy to fix items that can be corrected. Sometimes it can be as small as adding a field to a defect report that avoids an extra step further down in the process or removing a step like having Quality Control test a defect as it arrives from the customer before passing it to development and then testing it on the way back out. The second example might have had use at one point but no longer makes sense. A third and frequently easy place to look for improvements is in items that have been made redundant by technology changes. These can include printing items that are now easily stored online or even still testing installation disks for a hosted system.

    Publish the successes
    Even though this is third, it requires some upfront thought. We need to know the current situation and statistics before we can determine whether improvement has occurred. So even though this is the ‘last’ step it must be considered early.

    Rule 3: Take a step back; look objectively at your process; pick off a few items that can be improved; check the current situation; make the change and measure again.

    This is the first step to implementing Right the First Time or Quality Improvement in your organization. Next week; an anonymous example of How Not to be Right the First Time.

  • Quality Assurance – Benefits of Right the First Time

    In the last couple of weeks, we have been discussing the first two steps of Doing it Right the First Time. This week, we will take brief side trip to the Benefits of Right the First Time. A lot of groups stumble over this point because they cannot articulate this well. They seem to use Descartes (as sometimes translated) “I Think therefore I Am” to state that Quality Assurance is “Good because it is” and leave it at that. That argument, in the Quality Assurance case, is circular. One might argue that Descartes is also circular but that is not something we want to take up here.

    There is effort involved in “Getting it Right” and the question is whether it pays back later. We argue that is does using the following reasons:

    1. Having people actually concentrate on each step individually means that they will fully understand that particular piece.
    2. They can project all the possible consequences of that step.
    3. They can determine all the possible precursors that might impact that step.
    4. They can determine all the possible outcomes from that step.

    There are two major counter-arguments to the above. One we are already addressing here. The other can be addressed using the argument we have already stated.

    The first major counter-argument is the lack of time to do this type of analysis. Few people will deny the necessity of doing the analysis so this is only a question of timing and doing it earlier usually is beneficial in informing people.

    The second major counter-argument is that things will change before we are done so why spend the time on something that we will need to redo later. This argument misses the point of the process. The analysis carried out in this process identifies that possibility for change, anticipates what is going to happen, addresses it and moves to the solution.

    Step 3: Make sure we understand the benefits of this process so we can explain it at any time.

  • Quality Assurance – Right the First Time (Part Two)

    Last week we talked about getting it Right the First Time and started with Step 1. The next question many people ask is “How”. Usually they agree that this would be be a good thing for their project or organization and wish it could be done but stumble over How. There is a requirement for a cultural change if this is to occur throughout the organization but it is always possible to start small and implement this within a single project.

    The key points are as follows:

    1. Take the diagram created as part of Step 1 last week.
    2. Concentrate on each piece in turn.
    3. Determine the needs of that piece of the diagram in terms of who is involved; what their involvement is and what they are expected to complete by the end
    4. Look at the process or processes ahead of the one on which we just concentrated and determine what outputs are needed or can be anticipated.
    5. Revise (if necessary) our understanding of the current piece of the diagram based on what can be expected from the previous steps.
    6. Look at the pieces of the diagram that are recipients of the products of the current step and determine their needs.

    With all the above understanding in place, we are now in a position to get each step as close to perfect as we can. Get the relevant stakeholders together and with their undivided attention start deconstructing each step Combining the steps, while still considering any differences or modifications will give us something that is a lot closer to ‘Right the First Time’ than any process that sketches a diagram and starts development immediately based on incomplete knowledge.

    Step 2: Break the high level diagram into pieces and determine who is involved with each step; their involvement; the time and effort required and then get their time and commitment. Now we can launch the next step.

  • Acting on the Results – Redoing

    Last week we discussed how to measure the results of a Process Improvement initiative and how to successfully implement the process. This week we have assumed that the Process Improvement Initiative has been completed and we are now faced with Acting on the Results.

    There are two possible outcomes from the results and both lead to further action.

    1. The measurements and metrics indicate a successful process improvement and we have achieved the results we want.
    2. The measurements and metrics indicate an unsuccessful process improvement and we have to decide what to do next.

    In the beginning it is usually suggested that we review the measurements and derived metrics to ensure that we are measuring what we thought we were measuring. A false positive, (we think our program was successful but it was not) can be caused by either measuring the wrong item, deriving the wrong metrics or drawing the wrong conclusion. If the analysis indicates that the conclusion is correct then the following steps are recommended:

        1. Determine a new process improvement initiative.
        2. Determine if our existing metrics will properly measure the new initiative.
        3. Define new metrics as required.
        4. Implement and measure as before.

    If, after due analysis, we determine that our process improvement initiative did not lead to the correct result, then we have to decide between the following two possibilities:

        1. Undo the changes made and revert to the previous method of doing the process.
        2. Initiate another process improvement session to change the process to something better.

    For either of the above, we still need to measure and make sure we are accomplishing what is desired in terms of Process Improvement or maintenance of the status prior to the initial change.

    Note that none of this is based on supposition or guessing. No changes are made without supporting statistics.

    Next week: Quality Assurance – Doing it right the first time.

  • Acting on the Results

    This is the first of two blogs devoted to implementing metrics and discusses the piece most likely to cause failure. Assuming that the metrics were properly identified, measured and the results analyzed, we are now at the point of Acting on the Results of the metrics.

    There are two major ways in which a organizations tend to act on results.

    1. Making major changes all at once and cleaning up the results.
    2. Incremental changes

    Making major changes all at once

    In this approach the organization identifies where it wants to be, determines the changes and makes them all at once. This is sometimes called the Big Bang approach, often followed by the Gib Gnab which is a Big Bang in reverse
    There are several steps:

    1. Determine where the end point of the changes would be
    2. Make the changes to get there
    3. Look for what has gone wrong or is incomplete or has been resisted (this will likely be a long list)
    4. Fix the problems

    Incremental changes
    In this approach the organization identifies where it wants to be, determines the changes and decides on individual small steps that will end up getting to the correct point.
    There are several steps:

    1. Determine where the end point of the changes would be
    2. Determine individual small steps that will ultimately lead to the end result
    3. Coordinate the individual steps for each objective
    4. Obtain buy in from the affected parties for the individual steps
    5. Start making the steps
    6. Measure the progress continuously making changes if any measurements show adverse results
    7. Watch for progress towards the final goal

    If the above process is carried out correctly, not only will we get to the final point, we will also have support for our next measurement program. If any of these look unfamiliar give us a call and we will talk about it.

    Next week: Acting on the results – Redoing

  • Implementing Metrics

    Implementing Metrics is the hardest aspect of the entire Process Improvement process. It is reasonably easy to determine a need for metrics – anything that can be measured and will lead to cost savings is a candidate for a metric. It is usually fairly straightforward to determine what to measure as long as the question as to what is needed has been answered correctly. Some effort may be required to get to the correct metric that measures the actual cost of any issue or failure but some experimentation can usually lead to a good approximation and it can be modified after if required. The actual measurement needs to have all the characteristics of a good measurement but that can be determined.

    Implementing the metric falls into two categories – one of which we will discuss in this post and following up with the other one in the coming weeks. The two categories are:

    1. Taking the measurements.
    2. Acting on the results.

    Taking the measurement

    Taking the measurement assumes we have defined the need for the metric, have researched what and how we want to measure and are ready and wiling to implement. Now comes the part that affects other people and projects. It is unlikely that it is just our project or our work that will need to be measured. If it was just ours, we could have completed the measurement or simply implemented the process improvement long ago and moved on. This is now going to impact other timelines and people.

    There are several steps:

    1. Determine who or what is going to be impacted
    2. Quantify the impact
    3. Anticipate the objections
    4. Prepare answers to the objections
    5. Demonstrate the benefits
    6. Win Support
    7. Start the measurement program
    8. Provide support to the people doing the measurement
    9. Publish the results
    10. Be honest about the results

    If the above process is carried out correctly, not only will we get valid and useful results, we will also have support for our next measurement program. If any of these look unfamiliar give us a call and we well talk about it.

    Next week: Acting on the results.