The Development Process

A friend of mine jokes that developing software is like constructing a house: the first step is to build the roof. His point is that nobody thinks you’re crazy if you start implementing the user interface before you’ve thought through the design, organized your tools, and built a foundation.

Saving a workbook as a template or add-in

Figure 6-1. Saving a workbook as a template or add-in

The purpose of having a development process is to avoid that upside-down approach. Following a process helps you:

  • Detect problems as early as possible

  • Create reproducible results

  • Know when you’re done

Much has been written on the development process; I won’t try to cover all the approaches or explain their differences here. Instead, I’ll give you some practical tips specifically oriented toward working with Excel.

In my experience, the best advice is to use a test-driven approach and to get feedback as early as possible by following these general steps:

  1. Determine requirements.

  2. Create an initial design.

  3. Implement features and unit tests.

  4. Integrate features and test their interaction.

  5. Test on target platforms.

  6. Document the software and create training materials for users.

  7. Deploy the software.

  8. Archive what was deployed and get ready for the next version.

Each of these steps includes an implicit “Gather feedback and revise” step before proceeding to the next. How you gather and manage feedback must be tailored to your situation—your ...

Get Programming Excel with VBA and .NET now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.