"Presenter First: Organizing Complex GUI applications for TDD"

Scott Miller, Atomic Object

When: April 25th, 2006, 6:00 pm – 8:00 pm Where: Atomic Object, 941 Wealthy Street SE, Grand Rapids, MI 49506

Applying test-driven development to the graphical user interface portion of complex applications is complicated. Testing through the GUI by inserting events and making assertions on the state of the application is expensive and increases the burden of test maintenance. Presenter First uses a variant of Model View Presenter (MVP), a particular means of composing MVP triads, and a strategy for the order in which the elements of the triad are developed and tested. Atomic Object has used Presenter First on projects ranging in size from several to several hundred MVP triads for application development in C# and Java.

This presentation will reveal the difficulties we encountered in scaling the use of MVP, discuss the approaches we tried and rejected, and describe our GUI application development TDD best practices. The talk will include a demonstration of tools, code samples, and example problems in C# using Visual Studio .NET.

Speaker Bio

Scott Miller is a developer at Atomic Object. He’s been professionally programming since 1989. He’s worked at companies ranging from startups to high growth product companies to giant multinationals. He joined Atomic Object in May 2005 and has most recently been a member of the team working on a large C# application using the Presenter First organization approach.