CSC/ECE 517 Summer 2008/wiki3 7 SHOP PAT

From Expertiza_Wiki
Jump to navigation Jump to search

Problem Definition

Shopper pattern. The idea of a "shopping cart" is ubiquitous in e-commerce. This idea lends itself to abstraction in the form of a Shopper pattern. Find examples and descriptions that are suitable for teaching this pattern, if possible, including some non-obvious applications. Write up your findings in the form of a narrative.

Introduction

One of the most popular activities on the Web is shopping. It has much allure in it that one can shop at ones leisure at anytime. Literally anyone can have their pages built to display their specific goods and services. Consumers can easily search through a large database of products and services. They can see actual prices, build an order over several days. Customers can compare prices with a click of the mouse and buy the selected product at best prices. An approach for all these is to adopt Shopper Pattern. The main purpose of Shopper Pattern is to assist the consumer to obtain a collection of items from a set of providers which is achieved by introducing low coupling between the consumer and the provider.

Participants

  • Consumer :provide a list of items and user is allowed to choose item among them.Then the price is scanned and placed in the shopping bag.
  • Shopper: Browse through the item from the shopping list and search for the muliple provider for that particular item.Shopper may search the item on diffent basis ex: Brand name, lowest price.highest price etc.
  • Provider:It keeps multiple items and make it available to shopper. At the same time assist the shopper in locating the other providers.
  • Item:The things that are a provider owns,described by an item request,a consumer request, and a shopper obtains.

Consequences

  • Shopper pattern helps in decoupling the requesting object from the object that provide the requested items.
  • The responsibilities can be moved for provider objects.the requesting application will not nee dto be modified.
  • The provider objects can be rearranged without modyfying the requesting application.
  • Optional items can be optimized in such a way so that the processing time will be required only if th eitem is present in the list.

Implementation

A wide variety of application implementations are supported by Shopper pattern.There are two main keys to implement the shopper pattern.

  • traversing the set of providers: Shopper pattern can be used in multiple situations.Providers are grouped into an aggregate object and in a simple list.Aggregate is known by the consumer and stored in a global variable.When the providers are arranged as arbitary graph topology,one or more provider is known as consumer and stored in global variable

These approached can be achieved through strategy pattern.

  • Obtaining requested items at a provider

Steps to remember in designing

  • Standard icons and conventions: The icons or a relevant word is a very nice appproach to navigate in the web sites.The text shold be explicit to itself.More than multiple lines of link appears to be two differnt links.main links should be attractive and visible that helps user to find easily on the page.
  • Avoid irrelevant links: On the page of searching for a books there should not be the links of Tv,toys etc.In place of that the links related to books should be there.User may need multiple options to search for a book and require multiple option from where he can order the book.
  • Reveal structure: The structure of searching the items should be attractive and user freindly with multiple options.In the book example the structure should provide the otion where user can search on the basis of multiple option.For ex: search by first name, last name,year etc.providing a toolbar option is very relevant idea where user can navigate the site very easily.
  • Leave breadcrumbs:
  • Don't bury information: The page on the site should not be farther than three clicks away from any other page. For example.For ex : buy the item, jump to related items, search for another item, purchase items in your shopping cart, and manage your account.
  • Don't be mysterious: Things on the page should not be hidden.Like when user click somewhere then something pops up and before clicking there was no link or icons to navigate.
  • Provide help: There should be help on searching the required pages or facility of keyword search.User should have the adjustable search criteria.

See Also

pattern 1

Reference

DesignSteps