Tools Used
To complete our interactive prototype we utilized a wide variety of tools that each specialized in different areas: for the first and most basic user interaction, we used Microsoft PowerPoint, for all of the dialog screens we used Visual Basic for Applications, for creating the interactivity with dragging and dropping fields and actions we used Macromedia Flash, and to tie it all together and provide some extra functionality, we used Visual Basic 6.
The reason for this vast variation in tools is accounted for by the journey that took us to the end of this phase. Our original plan was to simply use PowerPoint for everything, as we assumed from the beginning that it would be able to do everything that we wanted. Although we found this to be true, we discovered that using the Visual Basic for Applications editor for macros in PowerPoint would allow us to prototype dialogue screens with amazing efficiency. So, we turned our prototype into a hybrid.
Later, we found that a limited and graphics centered programming interface such as Visual Basic for Applications, although powerful, would still be too difficult to use to implement all the functionality we wanted for the user. Flash was an obvious choice, but we had no way of tying it together in a cohesive way. Then, in an effort to add more functionality with Visual Basic 6, Nate discovered custom controls, and found one that allowed for viewing and interacting with Flash movies. He also built a control on his own that allowed for some extra, dynamic content on our dialog screens. So, Visual Basic 6 became the glue for bringing together all the pieces we needed: PowerPoint, Visual Basic for Applications, and Flash.
The tools each helped in their own way. For instance, in Visual Basic for Applications it is very easy to create a new user form, which is the fundamental part of a dialog. Adding buttons and fields became as easy as dragging them onto the form. With just a few clicks and a couple minutes, most of our dialog screens could be laid out, even if they didn’t have any back end functionality. For that, we wrote some Visual Basic code, but ultimately needed a way to provide for complex mouse interactions. Visual Basic for Applications was good for quick prototyping, but it didn’t help there.
So, we turned to Flash, where it was easy to make complex mouse interactions. However, Flash is not a fast tool to program with or to make many fast iterations with. So, we limited its use to what it was good at. Visual Basic 6 was just there for functionality - there is nothing from it on the front end. PowerPoint provided our shell and distribution method, and then we were done.
The only problems arose for us when we tried to push the tools too far into an area where they didn’t specialize. Sure, any one of the tools we used probably could have generated our entire prototype by itself. But it would have either taken us too long to learn how to do that or the result would have been too clumsy. As it is now, we have an elegant solution where each of our four tools does what it’s meant to.