Online Store Requirements

The overall product vision, along with the initial set of requirements, was defined during the inception phase of the Unified Process in Chapter 4. The preceding iteration concluded the development of the photo editor application, which allows customers to do simple image postprocessing using their personal computers. The construction phase now continues with the development of the Web site for the business, which allows online customers to order products customized with their personal images.

The initial project plan created in Chapter 4 anticipated the following requirements to be addressed in the ninth iteration of the project:

However, further analysis of typical use cases of the product also led to a change request for the Online Photo Shop Web site, and this change requires adjustments to the original project plan. Analyzing the typical use cases has shown that online customers will return to the Web site and place new orders for products such as prints, cups, or T-shirts as long as they are satisfied with the service. To ease the ordering process for returning customers, it has been decided to store the shipping and payment information for each new customer. When a customer returns, he or she can simply update the stored information if necessary. Of course, this information needs to remain confidential between the business and the online customer and therefore must be placed in a secure area of the Web site. Furthermore, each online customer will be required to log in to the order section of the Web site with an identifier and password. See Table 11.1 for the definition of the new requirement key.

In the initial project plan we tried to group requirement keys by technical areas. This led to (for example) all Web-Form-related requirement keys being placed in the ninth iteration. This kind of grouping usually makes it easier to assign developer resources and to minimize dependencies between iterations and thereby to enable developers to work in parallel. But adding the login page and security aspects of the entire checkout area to this iteration would be overload it and would introduce a higher risk to the entire project. On the other hand, there seems to be a buffer in the tenth iteration; the plan was to use this buffer to address summarizing an order and securing payment information. Furthermore, security aspects now overlap with the newly added login requirement. We therefore rearrange all checkout- and security-related requirement keys to fall in the tenth iteration. Table 11.2 shows the updated project plan.

Table 11.1. Customer Login Requirement

Requirement

Type

Summary

F:customer_login

Functional

Returning customers shall be able to use their previous shipping and payment information by providing their e-mail identifier and a password.

Table 11.2. Refined Iterations 9 and 10

Phase

Iteration

Type: Requirement Key

Construction phase

Iteration 9

F:order_products

F:product_browse

F:product_options

F:product_customize

F:product_shopping_cart

Iteration 10

F:customer_login

F:order_checkout

F:checkout_shipping

C:checkout_shipping_cont

F:checkout_payment

C:checkout_payment_method

R:checkout_payment_secure

F:checkout_summarize

The focus for the ninth iteration, which is described in this chapter, is now limited to the following:

Table 11.3. Requirements of Iteration 9

Requirement

Type

Summary

F:order_products

Functional

Ordering products via an Internet site shall be provided. A product catalog is provided as an XML document.

F:products_browse

Functional

Customers shall be able to browse through the products catalog, which is provided in form of formatted HTML documents.

F:product_options

Functional

Customers shall be able to choose between options offered for a particular product.

F:product_customize

Functional

Customers shall be able to customize a product with personal digital pictures.

F:product_shopping_cart

Functional

Customers shall be able to add products to a shopping cart while browsing through the product catalog.

C:online_shop_codebehind

Constraint

Web forms shall be created using the Visual Studio Web Form wizard and follow separation of code and design (code behind).

C:online_shop_stateservice

Constraint

To allow for future scalability, the ASP State service shall be used to implement session management.

Table 11.3 summarizes all requirement keys for the online store that are addressed in this chapter. As per project definition, for all iterations of the construction phase we must complete design, implementation, and unit tests for all requirement keys to fulfill the go/no-go criterion for this iteration.

Категории