1.2. Design

There are three major and specific components in this application:

  1. Message management (create, send, etc.)

  2. Contact management (create, import, lists, etc.)

  3. Reporting

The preceding list doesn't include generic and cross-cutting components such as membership, logging, billing, and so on.

Let's break each of these into smaller pieces that we can use as our requirements and to set the direction of the application.

Message refers to the email message or newsletter that the user of the application will create and distribute to their recipients.

A contact is simply an email recipient or in its most basic form, an email address.

1.2.1. Message Management

Our web application will need to allow us to manage messages. Management includes all actions related to this task, including creating, editing, displaying, deleting, and sending messages. The user interface for the application should be intuitive and easy to use, and the screen flow should fit with use cases for the system. For example, the user might want to send a message after creating it or might save it for later.

1.2.1.1. Create Message

The user needs the ability to create a message from scratch by going to a page that lets him compose the message and give each message a unique name. They need to be able to create a simple text message and a rich HTML message. The HTML message could contain images, tables, and standard HTML formatting such as bold, italic, and so on. HTML messages need to be created in a What You ...

Get ASP.NET MVC 1.0 Test Driven Development: Problem - Design - Solution 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.