Web Application Design
Design
The development process begins by defining the application requirements. We use an approach that defines a number of 'use cases'. A use case is a document that describes a significant action performed by a user of the system and can be created easily by any non-technical person in the client's organisation with an understanding of the application requirements.
An Example Use Case
This use case is from the standard user signup component.
User Sign up
Main Flow
- The user selects the Signup link from the Global Navigation.
- The application returns the UserSignupForm view..
- The user completes the registration form and submits it.
- The application validates the registration form.
- The application send the user an email containing an account activation code
- The user receives the email and selects the activation URL contained within it.
- The application lookups up the authentication code and if valid creates a User object and login session and redirects the user to their home page. The application deletes the authentication code to prevent reuse.
Error Flow
- At MF-4 if the username contains invalid characters, or is to short or to long the form view is returned with an error message.
- At MF-4 if the password is to short or to long, or the password does not match the password confirmation form, or one of the two fields, password, or confirm password is empty the form view is returned with an error message.
- At MF-4 if the captcha text field does not match the image the form view is returned with an error message.
- At MF-4 if the email address syntax is invalid, or is too long, or the field is empty the form view is returned with an error message.
- At MF-7 if the activation code is invalid the form view is returned with an error message.
Notes
There is an alternaitve main flow when no email verfication is required, in the this flow in place of MF-5 the application creates a User object and login session and redirects the user to their home page.
