Site Server, Commerce Edition
If you want to pass this one, make sure you know Microsoft DNA as if it were your own.
With the exponential growth of e-commerce applications,
both business-to-business and business-to-consumer, Microsoft
is positioning Site Server, Commerce Edition—recently
renamed Commerce Server—as a solution for businesses to
set up Web-based storefronts.
Of course, Commerce Server won't solve all solutions
from an out-of-the-box setup, but it does give you a foundation
to work from in developing e-commerce applications. Most
everything about Commerce Server can be manipulated via
code or as an add-in to pipelines (more on that shortly).
I recently sat for the Commerce Server beta test, and
this exam definitely wasn't aimed at those who just set
up Site Server as an out-of-the-box solution. Not only
did this test cover manipulating the objects provided
by Commerce Server, but it also went on to test your knowledge
of planning, developing, implementing, testing, and managing
an e-commerce application.
At 4 hours and 158 questions, this was the longest of
all beta exams I've taken for my MCP+Site Building certification—along
with Visual InterDev 6 and FrontPage 98. This one also
had to be the most comprehensive in coverage of the various
Microsoft DNA technologies.
Server, Commerce Edition (70-057)
Designing and Implementing Commerce Solutions
with Microsoft Site Server 3.0, Commerce
Number of questions:
158 on beta; fewer on actual exam.
4 hours for beta; expect around 90 minutes
for the live exam.
Live as of August 1999.
Who should take
it? Counts as elective for MCSD
and MCP+Site Building.
prepare you? Microsoft recommends
three instructor-led courses for preparing
for this exam:
- 1231: Implementing a Commerce-Enabled
Web Site Using Microsoft Site Server
3.0 Commerce Edition; 2 days.
- 1125: Implementing Microsoft Site
Server 3.0; 3 days.
- 1077: Installing and Configuring
Microsoft Site Server 3.0; 1 day.
Site Server Objects
Make sure you have extensive knowledge of the various
built-in objects installed with Commerce Server, as well
as how to manipulate them via code, especially Active
Server Pages (ASP). You'll need to know this inside and
Commerce Server uses dictionary objects to create a wrapper
around objects that an ASP developer would normally connect
to directly. If you've done extensive ADO programming,
be careful when you tackle the test. Commerce Server can
throw you some curves. When you're connecting to a database
managed by Commerce Server, you could pass a Data Source
Name (DSN) directly to the connection object. But passing
information directly to the ADO connection object isn't
the best approach for a Commerce Server site since connection
information is stored in the dictionary object called
DefaultConnectionString. Storing information in a dictionary
object allows a Site Server administrator to change the
physical database that's the back-end for the Web site
without having to change any of the underlying code, because
the Active Data Objects (ADO) connection is made to the
dictionary object and not a hard-coded DSN. Commerce Server
stores information such as connections, server information,
and other site variables in the site dictionary. Multiple
dictionary objects store information on queries, forms,
and other information. Once you understand the use of
dictionary objects in Commerce Server, you're well on
your way to passing this test.
Connecting to databases is just one example of working
with Commerce Server's dictionary objects. In the next
couple sections I'll go over some of the components that
make up Commerce Server, and you'll see how this exam
tests your knowledge of the various dictionary objects.
The reason for implementing a Commerce Server site is
to conduct business or transactions over the Web. So be
prepared to look at diagrams showing order and commerce
interchange pipelines and then arrange them in a logical
sequence of events to process a transaction.
The Order Processing Pipeline (OPP) is the sequence of
events that makes up the actual transaction that occurs
when a user makes a purchase on your Commerce Server Web
site. Have a good understanding of the default components
that come with the OPP. Here's where your knowledge of
business-to-business and business-to-consumer transactions
will be useful. Understand how to integrate the OPP with
Microsoft Transaction Server by calling the MtsTxPipline
component. Understand its relationship with other OPP
objects like SQLItemADO and SQLOrderADO. You must know
how to use these objects and also how to handle errors
that a user may encounter while conducting transactions
on your Web.
The Commerce Interchange Pipeline (CIP) is the part of
Commerce Server that allows data to be exchanged among
the various applications supporting the order. It could
be a component that sends XML data to a fulfillment house,
another means of interacting with an accounting application,
or sending Electronic Data Interchange (EDI) information
to a Value Added Network (VAN). Obtain a basic understanding
of transporting data between businesses using various
formats such as EDI or XML and the mechanism used to transport
the data. Again, a dictionary object comes into play here;
know the transport dictionary that handles data names
and their corresponding values.
Make sure you've tried implementing Microsoft Wallet
in an e-commerce application. Microsoft Wallet provides
a secure method of payment for the user. It supports Secure
Sockets Layers (SSL) and Secure Electronic Transaction
(SET) protocols. Know how to include MS Wallet in a Web
page and how to implement it using non-Microsoft browsers
such as Netscape Navigator.
Obviously, since you'll be working with objects like
SQLOrderADO, SQL code plays a role in your work with Commerce
Server; so know the basics. Understand the different types
of joins and how to create relationships among table data.
Analyzing Business Requirements
Knowing how to code isn't all it takes to implement an
e-commerce solution; but knowing how to plan, implement,
and test the application will ensure success of the project.
Work with the sample companies and sample sites that come
with Commerce Server. Install and try out all of the samples,
since each is aimed at a different aspect of e-commerce.
There may be situations where you'll have to integrate
a commerce site into an existing framework. Say, for instance,
a company has been conducting business using an existing
database structure; try to figure out solutions where
you could incorporate Commerce Server into various environments.
Will you need to provide alternative representations
for a site based on user requirements, bandwidth, or browser
limitations? Be prepared to deal with several types of
situations when implementing a commerce site. Since, as
I've mentioned, Commerce Server isn't always an out-of-the-box
solution, more often than not you'll have to assess the
environment and be able to modify the software in order
to accommodate it.
Doing the aforementioned tasks will arm you well for
tackling potential scenario questions on the exam. These
are the questions in which you're given a list of project
goals, along with what was done to satisfy the requirements.
Your job is to determine how many of the original goals
were actually met.
Understanding security models and how they affect your
application is a must in order to provide secure e-commerce.
Familiarize yourself with firewalls, routers, proxies,
and Windows NT security and its integration with Active
User Objects (AUO). AUO provides a single framework for
access to user information; it's a container for Active
Directory Services Interface (ADSI) information. As an
Internet developer, you should learn as much as you can
about ADSI and AUO, since you'll see more applications
that take advantage of this centralized information store
with the release of Windows 2000.
Understand the differences among the various browsers
out there and the technologies they support. Know which
browsers support ActiveX controls and how to implement
ActiveX and Java applets in a page.
After developing the e-commerce site, you'll need to
test your site to see how well it handles increasing amounts
of traffic. You can simulate server loads using InetMonitor
and use it for locating bottlenecks in your site by using
scripts that you develop. Make sure you practice creating
and debugging scripts so that when you look at code, you
can tell what it will do when executed. Say, for instance,
you want to simulate making a request for a page five
consecutive times; you'd do so by creating a script for
InetMonitor and running it:
The script is different than VBScript, but you should
be able to follow it if you have an understanding of the
different HTTP methods and logical constructs.
Since we're dealing with a global economy, spend some
time learning how to provide services to other countries.
How will you deal with encryption? What about displaying
localized information, such as taxes, languages, and pricing?
Once a commerce site is up and running, you may need
to analyze statistical data in order to make business
decisions about your Web. You might need to provide banner
click information or customized banner views based on
a user's profile. Try out Ad Server; integrate it with
AUO, and then use it for reporting on the data with Report
Writer from Site Server.
Deploying a Commerce Site
Commerce Server comes with Commerce Site Packager, which
allows you to package a Commerce Server site into an executable
file for distribution. Familiarize yourself with this
feature of Commerce Server. The Packager is located on
the Commerce Server SDK that comes on the installation
Plenty of Prep
This was the most comprehensive of all the beta exams
for the MCP+Site Building track. To get out alive, make
sure you know how to install Site Server and the minimum
requirements for it [See Blair Kovac's review of the
Server exam in this issue for more on installation
and requirements.—Ed.], how to customize a Commerce
Server site, as well as all the higher level functions
that go along with providing an e-commerce solution. If
you want to pass this test, plan plenty of preparation
time to break out the Commerce Server documentation. Then,
install the sample sites and have a go at modifying the
applications. This won't be wasted effort when test time