![]() |
|
||||||||
Chapter 8
CS-Direct Advantage: Sample Implementation
The online movie magazine, Lumiere's Light, proved very successful. Vicky the visitor enjoyed the site tremendously, but wished that she could order DVDs for the movies that she read about.
CyberMovieCentral is not some sort of flimsy DotCom. (Well, actually they were during the nineties, but the two remaining employees from those days are much wiser now about solid business practices.) They want to sell DVDs, but they want to do it in a way that minimizes costs by keeping development and maintenance costs down. They decide to use CS-Direct Advantage to create an online catalog called The Movie Vault to sell movie DVDs. Lumiere's Light will contain hyperlinks that point customers to The Movie Vault.
This chapter explains how CyberMovieCentral uses CS-Direct Advantage to bring their online catalog, The Movie Vault, to the web.
The following team members implement The Movie Vault:
Table 10: The Implementation Team
Install a Back-Office E-Commerce Product
Since the site will sell items, CyberMovieCentral installs a back-office e-commerce software to process online transactions.
Plan the Site
Before coding, Archie and his team meet with CyberMovieCentral in a series of brainstorming sessions to design the catalog. Here are some of the questions they discuss:
- How do I want to organize my catalog? This goes a long way toward determining the kinds of web pages your site will have.
- What do I want the pages to look like?
- Where is my product data coming from?
- Will my catalog include textual content in addition to product content?
- What about my customer service needs?
- What searching capabilities do I want to offer my site visitors?
- How do I want to handle customer registration?
- What are my shopping cart requirements?
A lot of creative decision-making takes places at these meetings. To facilitate the decision-making process, Indian food is brought in.
Develop the Site
Ultimately, the team comes to concensus on the bigger issues (they choose korma over biryani) and is ready to develop the site. Archie the architect, Weber the web designer, and the rest of the SI team begin working on the development site.
Create the Flex Family
Archie must create a flex family that will ultimately hold the following:
- A set of attributes that specify all aspects of the products (movies) for sale
- A hierarchy (flex parent definitions) that enables inheritance and makes it easier for customers to find the movies they want to buy.
He will not yet populate the flex family with actual flex assets; he will, however, define the attributes, flex definition, and flex parent definitions.
Create Attributes
Archie first creates the attributes shown in the following table:
Table 11: Attributes for the Flex Assets
Create the Flex Definition
Archie decides that a single flex definition,
Movie, is sufficient to represent the catalog's sole commodity. TheMovieflex definition includes all the attributes listed--most required, some optional.
Create the Flex Parent Definitions
Archie decides to create the following three flex parent definitions:
Genre and Variety categorize each movie. Genre provides the primary category (for example, comedy) and Variety provides the subcategory (for example, satire). Genre and Variety require the following additional attributes:
Table 12: Attributes for Genre and Variety
Archie makes Genre the parent of Variety; thus, each Variety flex parent will itself be the child of a particular Genre flex parent. Each flex asset will inherit a Subcategory value and a Category value from its assigned parent and grandparent.
Archie also creates a flex parent definition called Distributor whose flex parent will contain information about each distributor. Thus, information about a movie is managed distinctly from information about the distributor who provides it. Each flex asset will inherit the attribute values of the distributor who provided the movie. To support this flex parent definition, Archie creates the following additional attributes:
Table 13: Attributes for Distributor
Code the Templates
Weber the web designer works closely with the SI team to build an assortment of templates. The coding is pretty similar to the coding the team used for Lumiere's Light. In fact, Weber maintains brand identity by using the same fonts, graphics, and layout as Lumiere's Light.
The template includes the following features:
- An index or home page offering film categories and a search capability
- A detailed information page that is displayed when someone clicks a More Details hyperlink
- Variations of a Search Results page that are dependent on the extent of the results
- Shopping cart, order form, and customer registration forms
- Building a site tree; that is, establishing page flow
Write Additional Code
In implementing the design, Archie's team uses JSP tags to implement the following additional features:
To learn how to perform this implementation, Archie's team studies the dCS Developer's Guide and borrows code from the GE Lighting sample site.
Manage the Content
The SI team moves the code over to the management site. At this phase, the team will do the following:
Populate the Flex Parents
Archie's team created Genre, Variety, and Distributor flex parent definitions. Populating the flex parents can easily be done by hand, since there is not a lot of data. For example, the following table shows data for the flex parents
GenreandVariety:
Table 14: Values for Attributes of Genre and Variety
Genre (parent) Variety (child) Classics Drama Westerns Science Fiction & Fantasy Futuristic Cult Classics Horror & Suspense Slasher Films Mystery Comedy Satire Slapstick
Populate the Attributes of Flex Assets
The distributors can provide the data for all the attribute values of flex assets. It would, of course, take much too long to enter this data by hand. Fortunately, dCS provides a utility program called BulkLoader. It takes well-formed XML as input and writes the data into the appropriate fields of the CS-Direct Advantage database. Therefore, Archie's team writes scripts to convert the various data sources into well-formed XML.
Define Users, Roles, and Workflow
Alice the administrator must establish users and roles. She uses the same procedures to create users and roles as she did when creating the CS-Direct site. She creates two users: Betty the business manager and Pedro the publisher.
Workflow is minimal starting out, because only Betty and Pedro are involved. Still, it enforces a sense of checks and balances, so Alice the administrator sets up a process by defining states and steps with assigned roles for users Betty and Pedro. Alice knows what to do because she performed this same service for the Lumiere's Light web site.
Betty is assigned a set of tasks to perform. When she completes an assignment, she forwards her work to Pedro, who either approves it or sends it back to Betty for some rework. In some cases, if the task changes the catalog, for example, approval implies that Pedro will subsequently publish. Publish, in this case, is part of the changed asset's workflow.
Betty can also assign assets to herself through the application interface. This serves as a form of "to do" list that Betty sees, in addition to her workflow assignments, each time she logs in to the site. These tasks are not part of any workflow.
Publish the Catalog to the Delivery Site
Before publishing the catalog, the team tests it rigorously, answering questions such as the following:
- Do the expected pages appear when a visitor navigates the site?
- How do the pages look when previewed?
- Do all links go where intended?
- Are search results consistent with supplied criteria?
- Does the shopping cart accurately record items added and removed?
- Do order transactions complete as expected?
When he is satisfied that the catalog on the development site is ready for public use, Pedro publishes the management site to the delivery site.
Maintain the Catalog
During the planning and design sessions, Betty the business manager served in an advisory capacity. Now she is ready for a more hands-on role. In her position as business manager, it is Betty's job to maintain the catalog by performing the following tasks:
- Updating product information
- Purging obsolete information
- Introducing new products
- Adding new attributes
- Publishing changed assets to the delivery site
To maintain the catalog, no technical or coding expertise is necessary; Betty simply fills out forms and clicks buttons.
Betty's input during the planning stage was crucial: she knew the product relationships that made the most sense in terms of maintaining the catalog after it was built. By structuring these relationships and establishing the right hierarchies, Betty helped create an effective, easily maintainable catalog. She reaps the benefits of making a single edit at the parent level that propagates down to all the children, rather than having to edit each child product individually.
Summary
When Vicky the visitor returns to the Lumiere's Light web site several months after The Movie Vault is up and running, she notices lots of changes. There is an extensive online catalog of all her favorite DVDs that she can easily choose and then purchase with her credit card. Betty the business manager notices increased visitor traffic to the site and begins realizing new income from DVD sales.
To see how CyberMovieCentral further extends the capabilities of their web site with the dCS product family, read
Chapter 9, "CS-Engage: Sample Implementation."
|
|
||||||||||||||