Event Horizon

Nature of the Project
Event Horizon was the code name for a complete rebuild of the Imagine Language and Literacy product into the Unity 3D Game engine utilizing the Playmaker visual scripting plugin. This required the redevelopment 157 individual instructional activities. The project had a very ambitious deadline of about 8 months, which for all intents and purposes was met. I simultaneously served in multiple roles throughout the project.

Product Owner
As one of the product owners, I had to approve any significant changes from the old client that one of the approximately 16 developers desired to make. This included determining if the change would affect the instructional effectiveness of the activity, coordinating with other stakeholders, and working with the developer to make sure the change was implemented correctly. I also had to determine how to proceed when bugs were found that would require a significant refactor to fix. In this role, I was also able to push for the inclusion of a new user interface that would standardize the UI across all of the product (previously each activity had its own UI).

Development Work
Due to the enormity of the project, it was decided that about a dozen instructional designers, artists, and other non-developers could contribute to the development effort by laying out the finite state logic in Playmaker for each of the instructional activities. Although I am not a developer, I familiarized myself with Unity, learned how to use Playmaker, and then helped teach the other dozen or so non-devs in how to use Playmaker and worked with them as they encountered problems. At the request of the software architect, I personally reviewed and approved the state logic for each activity before it was sent to the developers. I also had the opportunity to learn some basic programming using Playmaker and did the state logic and development work for eight activities. Later in the project, I also did the development work to fix many bugs found throughout the product.

The aggressive deadline for the project resulted in very little time to test the client. To help lessen the burden on our testers, I performed hundreds of hours of manual testing, wrote up bugs, and verified that bugs were fixed. I also took the product to different schools to perform on-site testing with actual end-users.

Early in the project, it was decided that we would only deliverer 137 of the 157 activities by our deadline. However, because of the speed of development, in part the result of having non-devs layout the state logic, we later determined we could ship all 157 activities if we pushed the ship date back only one week. We successfully met this new deadline. Upon completion, the new client was significantly smaller in size, which allowed it to load and run significantly faster than the old client, and had a much friendlier UI. These improvements resulted in a much better user experience, and all the stakeholders were very pleased with the end product.