Wednesday, March 18, 2015

The Glass is Half Empty...Half Full...No, Wait...

Trying to program a software enhancement, as told through the age-old question of "Is the glass half empty or half full?"

The business analyst told the team today that the requirement for the project is for us to get the water into the glass and to see if the glass ends up half empty, which is the expected result, or half full, which would indicate failure.

Upon hearing this, the technical team went into a huddle for several minutes before assuring us that if we can find a way to get the water into the glass, then theoretically it should hold. They also directed us on the type of water and glass to use for optimal performance. While they had no guidance on how to actually get the water into the glass, one of the younger members did point out that it's entirely possible that the glass is twice as large as it needs to be. This stupid idea was quickly quashed, and he was reassigned to another team.

While a sub-team convened in another room to tackle the "how" question, the main team contacted the regulatory department to file the needed paperwork to get the water turned on at the source. However, regulatory did not understand exactly why we needed the water, so they refused to comply, citing SLA and privacy laws. It took 3 days and a 35-page design document to convince them that the request was legitimate.

The sub-team returned with 17 easel pad sheets outlining a detailed schematic for a pitcher that theoretically could be used to gather the water from the source and transfer it to the glass. The schematics also called for a lip to be installed on the pitcher to aid in water transfer. The idea was immediately applauded, and a prototype team was sent off to mock up a physical construct of the design.

The quality team developed 53 pages of test scenarios, describing every possible way that the water could be poured from the pitcher into the glass, along with details on how we could ensure that we had reached exactly half of the glass.  A random sample population was designated to be testers to give an unbiased cross-section of the user base.

In the meantime, a ticket needed to be logged with platform support to gain security access to put the water in the glass from the pitcher, because we didn't have access to do that. Unfortunately, after 5 business days, platform support told us that the water we were trying to use was on the restricted list, and we would need to use something else.

All designs were scrapped, prototypes were halted, and the team reconvened for another meeting to discuss possible next steps.


The project leader went hunting.