Green Grid

Rescue of a failed project.

Visit this site. View in project portfolio

The construction of The Green Grid 's set of power usage calculators for data and server storage facilities is interesting in its own right because of the complexity of the data and the tool itself. But it is a more interesting case study as a project taken from a disastrous failure to a resounding success.

The Challenge

The Green Grid needed a smoothly-functioning, intuitive calculator interface with enough flexibility to draw on dynamically-supplied data to build complex chains of power supply and usage components, track their compatibility, and calculate and graph the resulting power usage.

Graphed results Green Grid Power Calculator
output of two selected components are graphed, with a third graph line showing their combined output loss.

Frog Interactive Media was initially brought in at an early stage of the project. A local agency that had designed the tool contracted FIM to do front-end Adobe ®Flash ®development, building the interface, the calculator, and the graphing system, and then return saved results to a Web service database. The back-end database of component data, Web service to receive and send saved user configurations, and a tool to generate PDF copies of final calculations were handled internally by the agency's team of developers. All started well, and the client was pleased with early examples of the project, which used dummy data while the databases where being constructed.

Death of a project

However, progress started to slow and more time passed without a functioning database. When the database finally did come online, the project was only able to creep forward as larger and larger stability and performance issues cropped up. As more data were added, speed and reliability decreased dramatically. Increasingly complicated systems were demanded to save user data, requiring repeated Flash redevelopment. Saved user data were being returned complete and correct only a fraction of the time. The project stretched out for months with an increasingly frustrated client, ballooning costs, and increasing back-end problems.

Other difficulties became evident as the responsible agency went through rounds of lay-offs, more portions of development where outsourced overseas, and there were breaks in project management. It became clear that the agency was going out of business and management, as well as development, was being severely compromised as the company went into bankruptcy. Eventually, the company ceased paying their vendor invoices, and FIM stepped away from the project.

Graphed results Green Grid Power Calculator
Input fields for a second tool, a power efficiency estimator for larger server storage facilities. Interface supports thousands of user added components and systems, with individual module power and loss totals as well as facility wide totals.

Project resuscitation

The project was seemingly dead, when several months later FIM was contacted directly by The Green Grid. Initially, assuming that the FIM team members were employees of the now-defunct agency, they were just contacting us to try to track down the source Flash file to which they had legal custody. However, during our conversation, they learned that FIM had been an independent contractor and not directly involved with the agency managing the project development.

Some further research on their part cleared FIM of culpability in the disaster, and they subsequently approached us with the proposal that we take on the project, find a development team, and act as project manager and direct client contact until the project was complete. The catch was, with all the time lost, they were desperate for a working version by their drop-dead date, only two weeks away.

Taking over management of the project, FIM brought it to the development team at Shepherd Interactive, who were willing to partner with us on short notice, and in whose developers we had complete confidence. Upon inspection of the previously-developed database, we found that it was completely unsalvageable; the overly-developed behemoth was so bug-ridden as to make starting over the only option.

customising component data
Opening the custom component field. As well as being able to access hundreds of stock components from a database, users can input and save their own component data. The Flash app captures load and efficiency data to generate an estimate of data confidence and the user can view a real-time graph of an output curve as they modify the component data.

With a looming deadline, we devised a system to simplify the Flash/database interaction:

  • First, we reduced the required number of calls through the intervening Web service from 14 to only 3.
  • Next, we sidestepped the need for the Flash to deal with the Web service entirely. Instead, the data was captured in JavaScript and dropped to Flash through an external interface call as a wholly-formed object.

In the end, the database was entirely rebuilt in 24 hours. The result outperformed the previous version enormously-dropping the average response time for queries to the database from 10 seconds to 10 milliseconds-and was perfectly stable.

Within the two-week deadline, we had a working version available for public demonstration with all the required functionality, including savable, updateable and retrievable user-generated configurations; the ability to save and share configurations; output of graphed calculations; output results to PDF; and the ability to push new components to the database through uploading an Excel spreadsheet.

Best of all, The Green Grid was overjoyed with the final results!