2.2. Design

We will start by designing some of the basic functions of the site that are common to almost any web application; then we will get into more topics specific to our application. I don't call them the basics because they are easier or simpler than the rest. All these features are still first-class citizens. They are basics because they are pretty much common to every application. Again, this will not be a detailed design, so let's talk about the major pieces and sketch some diagrams.

2.2.1. Membership

We need a membership system that allows us to manage our users and provide them with secure access to their account.

First, we start with the user registration (signup) process. The flow for registration is shown in Figure 2-1.

Figure 2-1. Figure 2-1

A screen layout will look something like Figure 2-2.

Figure 2-2. Figure 2-2

Password Confirmation

I sign up to hundreds of sites, and it amazes me that almost all of them force you to confirm your password. This doesn't make any sense to me. Most sites give you a way to reset your password, so what is the point of confirming it? If I forget it or had a typo in it (which is rare anyway), then I just reset my password. Personally, I feel that password confirmation is a waste of time and resources and is not very user-friendly. ...

Get ASP.NET MVC 1.0 Test Driven Development: Problem - Design - Solution now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.