The Site Builder Wizard
Once a store foundation has been created, we can run the Site Builder Wizard (SBW). Its goal is to create a store that is as close as possible to the finished product that the developer is looking for, so that he or she will only have to tweak its functionality and will be able to concentrate on implementing advanced features.
Contrary to what happens for the SFW, the SBW can only be launched from within a store's management interface. In the case of a newly created store foundation, a link to it will just about be the extent of the functionality provided by the Store Manager. From a pre-existing store, a Site Builder Wizard button is usually provided as part of the Manager's home page.
Be very careful about launching the SBW from within the management interface of an existing store. Any modifications that you have made to your site will be lost as a result of the wizard's execution.
What the Site Builder Wizard Does
The functionality provided by the SBW does not just include creating a basic store that you can modify. In fact, you can modify a number of settings, which control the end result:
If your store only sells one type of product, like books, for example, you only need a database structure that supports a fixed set of attributes. If the store sells a variety of types of merchandise, however, the fixed-attributes approach doesn't work anymore: the field "number of pages" doesn't work well with a t-shirt, for example. Therefore, the site must be able to handle a number of "dynamic attributes" able to adapt to the nature of each class of products.
Another important setting is how products in the store are organized into departments. MSCS offers the possibility of having a single- or multi-level structure. The latter makes it possible to organize the products further into sub-departments.
The basic store created by the SBW offers the possibility of automatically validating (but not charging) a number of types of credit cards. All that we have to do is to select the ones that our store should accept, and the wizard will do the rest!
Giving your users the possibility of tracking the status of their orders is an important feature for an online store. However, security concerns might make it necessary to avoid supporting it.
Shipping, handling and taxes
While handling, when present, is usually an easy matter to manage, dealing with shipping and taxes tends to get close to a nightmare. In the case of shipping charges, the problem is usually trying to offer the best possible deal to our customers, while taxes, being the offspring of political minds, often present the unique challenge of not making any sense. MSCS, luckily, provides a number of possible ways to calculate all these fees that can be configured from within the SBW.
The First Few Steps
The initial steps after starting up the SBW ask us some questions that are relatively easy to answer. Step 1 advises us that running the wizard on a pre-existing store might delete its contents,
While Step 2 (next screenshot) asks us whether we want to create a custom store or copy one of the existing samples.
Even though starting from a sample store might look like a good idea, I advise against doing so unless you are pretty much content with the way the sample works and looks. In fact, these sites have been created with a very specific purpose in mind, and will not adapt very well to any other business model that you have in mind. A custom site (which is what our initial basic store was) provides a much cleaner and unbiased "canvas" that you can change pretty much the way you want. A possible exception to all this is MSMarket, partly because it offers a kind of functionality that cannot be generated by the SBW, and partly because it is generic enough to work in a variety of scenarios.
Step 3, shown in the next screenshot, asks us to enter some contact information for the store. This data will be available by clicking on the About icon in the resulting store. As we said earlier, you will probably need to rewrite and expand this section later on anyway to give your customers more confidence in the store. If this is the case, you don't need to concern yourself too much with what you type in here.
Selecting a Locale
The next step consists of selecting a locale for the store. This will affect the way data is displayed-numbers, currency and date values in particular-but not the language in which the store will be generated, which will always be English.
As you can see from the next screenshot, you can only choose one locale for your store. This means that, if you want to provide localized content for your customers, you will have to somehow develop a system to do so. MSCS provides a whole set of functions that take advantage of NT's own locale-formatting API; since the whole store will use those functions, all you will have to do is change the locale identifier to one used in the user's country of origin.
This could be done, for example, in response to a selection made by the customers themselves before entering the site. If your site requires registration, or if it integrates with P&M;, the choice might become a permanent part of each user's profile, thus saving him or her the hassle of having to select it every time he or she enters the store.
Choosing a Site Style
The next screenshot shows the SBW's fifth step, which allows us to make a number of design decisions regarding how the store will look. You probably don't need to worry too much about the Button Style setting, since most of the time your design team will end up changing the way the site looks anyway.
Choosing the page layout (Navigation Bar), the font and the background color, however, can save a lot of customization work in the development phase. I tend to think that a combination of a vertical navigation bar, white background and the use of Verdana as the main font represent a good starting point that won't force your design team into having to do too many changes. The problem with Verdana, of course, is that it is only supported by version 4 browsers and higher (it comes as part of the installation for IE4); if it is not available on the client's machine however, it usually degrades gracefully to the computer's default proportional font (Times New Roman on PCs).
The next step lets us specify whether we want our store to support and implement cross-selling promotions, price promotions or both. There is no support for historical cross-selling, which must be added manually to the store's functionality; we'll see how to do that in the next chapter.
Support for promotions can also be inserted into an existing store by executing the Promotions Wizard, available as part of the normal management functions, which essentially replicates the functionality of this step of the SBW. Remember that, if you decide to run the Promotion Wizard after the store has been created, it will overwrite any changes that you have made to a number of pages, including the product information page.
The seventh step, shown in the screenshot opposite, can be used to set a number of parameters that affect the store's structure. Registration lets us decide whether we want the users to be forced to register in order to use the site. By default, no registration is required-therefore the users are allowed to browse the store anonymously, and the information they enter during the purchase process is not persisted by the store for future visits. It's also possible to ask users to register before they are allowed to enter the site, or when they make a purchase. As the former method presents a significant problem, namely the fact that the users are forced to give away their identity even if they only want to browse around, I recommend that you take the second method into consideration, especially if you are planning to integrate your site with P&M; or if you are going to let your customers track their orders.
Department type lets us choose how our store's departments are organized. For a simple store, with only a few products, choosing single-level departments is probably a better idea, while larger stores might need multi-level categorization to avoid having too many products in each department.
Finally, enabling Product Searching will cause the SBW to generate a simple keyword search page in the resulting store. Even though the search functionality provided by MSCS by default is very basic, it's a good starting point that you can use to add more functions.
The next two steps let us specify how product attributes should be handled by our store. First of all, we should decide whether we need to support static or dynamic attributes. As we saw before, our choice here will depend on what kind of merchandise we'll be selling.
If the choice is static attributes, then step 9 (shown in the next screenshot) will give us the choice of selecting from a list of pre-defined attributes or entering our own. In either case, the attributes that we enter will become part of the product database in the final store. If you have a good idea of exactly what attributes you will be needing, you should take full advantage of the functionality offered by the SBW, which will also add the required input boxes and validation functionality needed to handle the attributes in the store's management interface.
Selecting dynamic attributes will instead cause the system to simply ask you what the maximum number of attributes that you want to use is going to be, as you can see from this screenshot. You will be able to define the attributes from within the Store Manager after the site has been created.
Shipping and Handling
Step 10 lets us define the handling and shipping policies for our store. As you will see, the SBW only allows us to specify a per-order fee, which is an approach seldom used by online merchants, who in general prefer to charge a per-item fee instead.
No matter what your shipping needs are, I recommend that you set up the shipping methods that you are going to use anyway, even if they will work on a different basis than per-order fees, because the SBW will take care of setting up all the infrastructure needed to handle them from within the site's pages.
Even though your tax needs will vary according to your location (or locations), you will most probably charge some kind of tax fee to your customers. In the US, you can generally get away by charging the sales tax for the state your company is physically located in; in Canada, on the other hand, you will have to charge the Goods and Services Tax, imposed by the federal government, and one or more provincial sales taxes, depending on whether you have offices in any given province. In Europe, each government charges its own Value Added Tax (VAT), although this will probably change thanks to the economic union that is currently under way.
MSCS does provide several tax handling methods, one for each country, that in my opinion serve their purpose pretty well. However, the documentation that comes with SSCE clearly states that this tax functionality should only be used for testing purposes and that a professional consulting firm, or a dedicated tax software package should be used. Personally, I have no problem with getting help from a tax consultant-even in the simplest case, you will want to make sure that you are collecting the right tax. If you are not, then you may be forced to pay taxes that you didn't collect, or may risk overcharging your customers and not being competitive. A dedicated tax package, however, sells for several thousand dollars (there are only a handful that integrate seamlessly with MSCS), and should only be used in really complex situations in which the company that runs the store has locations in several states or countries.
In any case, step 11 will let you choose one or more tax rates, depending on the locale information that you selected at the beginning. The next screenshot shows the configuration screen for the United States. Because you can only specify one locale, however, the SBW will assume that the site you just created is only qualified for selling merchandise in the locale's country.
As such, your store will refuse any order coming from any other country (it won't even display a list of possible countries for the ship-to address). In fact, you will have to manually change the configuration of the store to modify this behavior.
The next step can be used to select what purchase methods our store should accept. The following screenshot shows that MSCS supports VISA, MasterCard, American Express and Discover. However, as we said before, the store will only check for the validity of the credit card number that the user types in. It will then be up to us to determine whether we can or cannot process the transaction and actually charge the customer's account. Since each credit card type requires the creation of a separate merchant account, you should know what credit card types you are going to accept before running the SBW-this will ensure that you won't have to change this information, which is referenced in several places, after the store has been created.
If you have decided that you want to allow your customers to track their purchases, you should select the Retain order history and receipt information checkbox in step 13. As we mentioned earlier, you should be aware of the potential security concerns that arise from allowing order tracking-in particular the possibility that a user be able to see somebody else's orders. However, if you combine this kind of functionality with customer login (and let customers register as part of the purchase process rather than for being able to access the store), you shouldn't have any problem.
Running the Wizard
After order tracking options have been set, the SBW advises us that it is ready to generate our sample store for us. At this point, you might want to review your settings, but, unfortunately, the only way to do that is by browsing back page by page. In general, if you started out the wizard with clear ideas, you shouldn't encounter any difficulty. In any case, the wizard will take care of persisting the information that you just entered; therefore, you will also be able to rerun it if you find something wrong with your store after you have created it (but before you start working on it!).
Contrary to what happens with the SFW, this time you'll actually be able to see what goes on as the SBW builds your store one file at a time. The actual process will vary depending on what options you chose, but it will look somewhat similar to that in the next screenshot. A successful completion of the wizard's execution (something you can't always count on, sadly) will cause your store to be generated and ready to accept transactions (or to be modified, as will probably be the case).
SummaryBy now you should have a clear idea of what business-to-consumer and business-to-business stores look like, how they work, and what their structure is. We have also examined in detail the administration and store creation tools provided by MSCS. In all, this should give you enough understanding to be able to design your own store knowing how much work will be needed to expand the basic functionality provided by MSCS.
At this point, it would be worth your while to look around as much as possible to find out what other stores do and how they work. Hopefully, this will give you even more ideas as to what you could do with yours. As we go on with this section of the book, you will discover that there is much more to MSCS than meets the eye-in particular, all the functionality that is not directly deployed by the basic store that can be created with the SBW.