Microsoft Commerce Server 2000: Building the Project Plan

This chapter explains how to create a Project Plan. A Project Plan includes a functional specification; a list of the project team members, including the responsibilities of each person; a project schedule; and a cost estimate. The Project Plan organizes project-planning information, such as tasks, resources, organization, timeframes, and dependencies necessary to complete the project. It contains the information that developers and others who assemble and configure the hardware and develop the site will need.

The Project Plan is refined at the beginning of each phase (Plan, Develop, Deploy, Manage), using Microsoft Project or a similar project-planning tool, to update project information as the project progresses.

To ensure that you have all the essential information you need to build your Project Plan, the following personnel should participate in the planning process:




Create the functional specification
Create a project schedule
Propose a project budget
Propose a list of project team members

Marketing and Sales

Approve the functional specification
Approve the project schedule

Company executives

Approve the functional specification
Approve the project schedule
Approve the project budget
Allocate resources for development, deployment, and system administration

The following sections provide detailed information about how to build your Project Plan.

Creating a Functional Specification


A functional specification usually contains the following information:

  • Summary

  • Design goals and justification

  • Design

  • Compatibility and platform requirements

  • Third-party involvement

  • Localization

  • Deployment and administration

  • Issues and risks

The following sections provide guidelines for creating each part of your functional specification.


  • Describe your existing site (if you have one)

  • Describe the new site

  • Describe your users

  • Describe key user scenarios

  • Outline navigation through the site

Design Goals and Justification

  • Create a list of design goals, including goals for capacity and performance.

  • Create a prioritized list of features and functions. Include research, especially market research, to indicate why each feature is necessary.

  • List related functionality recommended for future site releases (if any).

The following is a list of questions to consider when you create your feature list:

  • Who is the customer for this feature?

  • Why would a customer want to use this feature?

  • What is the logical flow through the user interface? Is the result what users expect?

  • Are there other ways to accomplish the same task or implement the feature? What are they?

  • Will the customer have the knowledge necessary to use this feature?

  • Is the customer likely to combine the feature with other features or procedures?

  • Is the feature or procedure consistent with other features of procedures in the product or in similar products?

  • Are any changes needed to make the feature or procedure appropriate to an international market?

  • What needs to be changed for different languages?

  • Will different versions implement the feature differently in the future?


  • Establish coding standards.

  • Describe the application architecture (event sequence charts, user authentication, and so on).

  • Define your site profile, including the following:

    • Site contents

    • Number of Web pages (dynamic versus static)

  • Describe each feature and explain how it will be used. (Cross-reference each feature to your project vision, conceptual design, and requirements, as appropriate.)

  • Map each feature to a Commerce Server 2000 function.

  • Design the visual interface.

  • Determine whether or not settings should be persistent.

  • Describe the data architecture (data models, database schemas, and so on).

  • Describe how data is to be stored.

  • Describe the processes that will be used to transfer, update, and validate data.

  • Describe processes for accessing data, and identify who will have access to data and under what circumstances.

  • Create a prioritized list of anticipated threats to your system, and then design a mitigation solution for each threat.

  • Describe your plan for securing your networks (how users can log on, how resources can be accessed, and who can access them, and so on).

  • Describe your plan for application security, including the following:

    • Security on software and services

    • User authentication and authorization processes

    • Membership and other directory schemas

  • Describe your plan for securing data, including the following:

    • Database security

    • File/share security

    • Maintaining data integrity

  • Describe which Commerce Server, Microsoft Windows 2000, SQL Server, or other product security features you plan to use.

  • Describe what measures you plan to use to monitor and authenticate user input.

Compatibility and Platform Requirements

  • Specify hardware.

  • Describe and diagram the system architecture, including the following:

    • Logical architecture

    • Physical architecture

    • Network architecture

  • Identify software and services, and describe why they were chosen.

  • List the systems with which the site must interface and describe how you plan to provide connectivity and accessibility to them.

  • Describe optimal hardware, software, services, and system settings.

  • Determine the boundary conditions with line-of-business systems.

  • Confirm disk space requirements.

  • Identify incorrect version matches between components.

  • Identify shared components, owners, and tracking processes.

  • Identify who owns the relationship with component owners.

  • Define agreement with component owners.

  • Explain how the site will work with various browsers.

Third-Party Involvement

  • If you plan to use Microsoft Solution Providers, describe their role and contribution to the solution.

  • List all dependencies on third-party components.


  • Identify the parts of the site that require localization (if any). Does the entire site need to be multilingual or only portions of it (such as the catalogs)?

  • What languages do you need to support?

  • What currencies do you need to support?


  • Describe the migration path from the existing site (if any) to the new site.

Issues and Risks

  • What are the project-related issues?

  • What are the project-related risks?

Identifying the Project Team


When the functional specification is finished, the technical group must identify the development, deployment, and system administration resources necessary to create and operate the site. Two types of personnel are needed on the project team: those with specific technical skills, and those who can relate the business goals of the company to the implementation of the Web site.

Commerce Server provides a set of features for developing, deploying, and managing Web sites. Each feature area requires specific skills that span three kinds of expertise within an organization.

The following table lists the three distinct roles, provides examples of the tasks that must be performed and the knowledge required for each role, and identifies the Commerce Server tools and user interfaces used by each:



Required Knowledge

Tools and User Interfaces

Site Developer

Builds the Web site.
Integrates the Web site with existing line-of-business systems.
Migrates existing e-commerce sites and databases.
Customizes Commerce Server Business Desk.
Adds new modules to Commerce Server Business Desk.
Adds new extension snap-ins to the Microsoft Management Console (MMC).
Creates custom reports.
Extends the Data Warehouse.
Tests and validates site operation in the test environment.

Dynamic Hypertext Markup Language (DHTML)
Extensible Markup Language (XML)
ActiveX Data Objects (ADO)
HTML Components (HTC)
Active Server Pages (ASP)

Commerce Server Solution Sites
Commerce Server COM objects
Commerce Server Pipeline Editor
Commerce Server Pipeline Components
Commerce Server Advertisement design-time control (DTC)
Commerce Server Site Packager

System Administrator

Packages and moves sites to the production computer.
Configures and optimizes Commerce Server resources.
Schedules Data Warehouse import tasks.
Schedules Direct Mailer jobs.
Builds new prediction models.
Maintains Commerce Server databases.
Troubleshoots the Web environment.

Microsoft Windows 2000
Microsoft SQL Server 2000 or Microsoft SQL Server 7.0
Internet Information Services (IIS) 5.0
Commerce Server Setup

Commerce Server Site Packager
Commerce Server Manager

Business Manager

Creates specifications for developing the Web site.
Determines how the Web site should be updated to meet business goals.
Determines how Commerce Server Business Desk should be customized.
Manages product catalogs.
Analyzes user activity and site effectiveness.
Manages registered users and trading partners.
Creates auctions.
Relates marketing data to the site.
Analyzes site traffic, trends, and so on.

Business goals, strategies, and processes for creating and running a successful e-commerce Web site.

Commerce Server Business Desk

Building the Project Schedule


The project schedule clearly identifies how much time and how many resources it will take to develop the site. The schedule should also spell out assumptions, dependencies, and risks. If there is not enough time in the schedule to build the site as designed, it should also specify the trade-offs for altering the design or extending the time necessary to build the site as originally planned.