| We have all been there, on a project where the | | | | some parts early, increases the testing window |
| inevitable has happened. You guessed it, the code | | | | and enables recovery of some of the lost time. |
| is late into testing, delivered at the 11th hour. | | | | (3) Apply a risk based testing technique. Test the |
| Entry criteria has come under threat and possibly | | | | high risk elements of the application first and work |
| been ignored completely. Your test environment | | | | through the testing in order of risk. When time |
| has been delivered but remains unproven as the | | | | runs out, this should mean that the only the items |
| code has not been available. The Project Manager | | | | of lower risk have been omitted. |
| has been harassed by the business stakeholders | | | | (4) Increase the hours being worked by the |
| for the development delay and is not interested in | | | | team. Look at options around overtime and |
| your problems. IT Management are pressing to | | | | weekend working. If using offshore capabilities |
| see the project delivered on time and to top it all, | | | | then look at working two days in one. (A word of |
| Marketing have arranged for a campaign launch to | | | | warning at this point, if the testers are working, |
| occur on the prescribed delivery date. As the | | | | they need to be supported by the environment |
| Test Manager, you are now the primary obstacle | | | | support staff and the developers. Testing alone |
| to go live; the success of the project is resting on | | | | will only increase the flow of defects making it |
| your shoulders. Oh yes, and your six week testing | | | | harder for development to keep up and an |
| window has been reduced to four. | | | | environment issue could stop all out of hours |
| This is the stress (no pun intended), of the test | | | | work.) |
| execution phase. Not only are you now required | | | | (5) Consider overlapping some of the testing |
| to think out of the box in order to complete the | | | | phases. E.g. If UAT is being run as a separate |
| testing, but you must also be thinking at a far | | | | phase, after functional testing, look at overlapping |
| wider level than just testing. There are actions | | | | some of the UAT with the functional testing that |
| that can be taken at a project level which can | | | | is occurring. |
| make a massive difference to the work of the | | | | (6) Ensure that there is a high focus on defect |
| testers. | | | | prioritisation by the business. Make sure the |
| Let's start by looking at this from the wider | | | | developers are fixing what needs to be fixed first. |
| perspective. I remember a situation on a very | | | | (Don't ignore severity at this point.) |
| early project I was managing. Sat in a project | | | | (7) Monitor defect turnaround. If the development |
| progress meeting and being asked how we could | | | | has arrived late it is indicative of problems and a |
| test with an execution window reduced from four | | | | slow defect turnaround will cripple the project and |
| weeks to two. I dug my heels in and refused to | | | | whilst testing may complete, whilst the exit |
| budge, resulting in a separate meeting immediately | | | | criteria will have been corrupted. |
| afterwards with the PM, being instructed that this | | | | (8) Can more environments be made available? |
| was not the right course of action and getting | | | | There is likely to already be a requirement for |
| some early tuition in the art of testing. | | | | multiple environments, but if you begin overlapping |
| Back to our problem, there are several actions | | | | test phases, functional with non-functional, with |
| that can be taken at project level to help with the | | | | UAT, then the volume of environments needed |
| situation and it may be possible to assist the PM | | | | may increase. |
| by making some recommendations. (1) Does the | | | | (9) Carry out a review of the exit criteria for the |
| application all need to be placed live? Are there | | | | project. Bear in mind that this was set prior to |
| any aspects of the application that could be put | | | | the problems occurring and although they are the |
| live as part of a second release, reducing the | | | | desired outcome, some compromise may need to |
| scope of the testing required? (2) Can the release | | | | be reached. Work out what is acceptable and |
| occur to internal users only? This minimises the | | | | don't forget that if coverage is reduced, the |
| risk of damage in the event of production | | | | numbers of defects are indicative of only a |
| defects, meaning that exit criteria may be | | | | percentage of the testing. i.e. 80% coverage, |
| reviewed. (3) Can additional development effort | | | | means that you have possibly only have |
| be applied to recover whilst in development? | | | | discovered 80% of the defects and it is good to |
| Regardless of the answers at a project level, the | | | | assume that 20% remain unfound. |
| following can be applied by the Test Manager to | | | | Actions (2), (3) and (5) above, all increase risk in |
| handle the situation from within testing: | | | | some manner. Ensure that the project and |
| (1) Insert the testers into the development team | | | | stakeholders have agreed to these risks and that |
| and increase the unit and integration in the small | | | | where possible mitigating actions are in place. |
| testing. Improve the quality before it hits testing, | | | | To summarise, there are many actions that can |
| reducing the volume of defects found and | | | | be taken within testing to deal with a slippage, |
| therefore the duration. | | | | whilst maintaining the original delivery date. Don't |
| (2) Consider taking components of the application | | | | forget the project elements that can make a |
| that are finished, prior to the arranged delivery | | | | difference. I am sure there are more but do |
| date. It is likely that there are only certain parts | | | | ensure that all aspects are being looked at and |
| of the application that are causing the delay and | | | | only then start to compromise on the testing. |
| not the entirety of the application. Bringing in | | | | |