Updated: March 14,1996 TechNet Logo Go To TechNet Home Page

Siebel Sales Enterprise-An Open Client/Server Solution

Siebel's open solution promises total sales quality management while providing ultimate flexibility on both the client and server sides

ABSTRACT: Siebel Systems has designed and created a powerful client/server system to address the sales needs of multinational corporations. Siebel began development after thoroughly studying the requirements of sales and marketing organizations and studying the work patterns of sales representatives. Starting with these research results, Siebel then developed the Sales Enterprise by capitalizing on the power and flexibility of Microsoft® applications, operating systems, and development platforms. icobrnchIntroduction icobrnchSolution Overview icobrnchSolution Goal icobrnchSolution Architecture icobrnchDevelopment Personnel icobrnchDevelopment Process icobrnchConclusion icobrnchFor More Information


Introduction

Client/server solutions that automate and streamline business processes are becoming common place in today's multinational corporations. Companies are running many aspects of their businesses including finance, manufacturing, order management, customer service, and human resources systems utilizing the power of client/server software solutions. Until recently, one area that remained fairly untouched in this growing client/server world was sales force automation. Siebel Systems, based in Menlo Park, CA has released a powerful, state of the art sales automation system that provides clients the power to automate large parts of the sales process. These processes include opportunity management, comprehensive customer, product, competitive, and decision support information, integrated correspondence and fulfillment, on line sales literature, product and revenue forecasting, and integrated sales and marketing reports. Further it was built to provide advanced capabilities for remote users and to be easily localized for international customers. Tom Siebel, President and CEO of Siebel Systems discusses here the development methodology Siebel used to design the Siebel Sales Enterprise and the tools they used to build it.

Document Contents


Solution Overview

Siebel's challenge was to build a product that had never existed before: an open platform, client/server based, sales force automation system designed to meet the most rigorous sales and marketing information requirements of even the largest multi-national corporations. The result of this development effort is an example of a highly successful solution built utilizing the power and flexibility of Microsoft applications, operating systems, and development platforms.

On the client side Siebel Sales Enterprise was built with Microsoft® Visual C++™ and the Microsoft Foundation Class Library (MFC) to run exclusively on the Windows platform: Microsoft Windows™ 3.1, Microsoft Windows™ for Workgroups or Microsoft Windows™ 95. The client also utilizes the capabilities of OLE Technology to access components of Microsoft Office including Microsoft Word, Microsoft Excel, and Microsoft PowerPoint®. MAPI technology is utilized to access Microsoft Mail capabilities.

For the database server, customers have the choice to utilize either Microsoft Windows NT™ or a UNIX operating system and are open to use one of several powerful relational databases including Microsoft SQL Server™. For the communications server, Microsoft Windows NT with it's powerful RAS capabilities for remote users is the recommended platform.

Siebel has teamed with third party software and hardware vendors such as Adobe® and Aspect to tie in powerful features such as electronic document management and telephony support. Third party vendors also provide services such as product configuration, data migration, and development support for Siebel. One example of third party support is Siebel's strategic partnership with Andersen Consulting. Andersen provides Siebel's customers with comprehensive business process re-engineering, application configuration and installation, data conversion, integration with manufacturing and accounting systems, and end user and systems administrator training.

Document Contents


Solution Goal

The Siebel solution was built from the ground up to satisfy complex customer requirements. Any new sales automation system must be able to utilize existing sales data and also integrate and communicate with other corporate systems. The system must be easy to learn and use and also configure easily across a spectrum of diverse sales organizations. Based on these requirements, key development criteria for Siebel were: robust functionality, easy configuration and maintenance, extensibility to integrate with other applications, and scalability to support large numbers of users as well as large data stores.

Open Architecture

Open client/server architecture provides customers with the flexibility to support multiple operating systems on the server side. The client/server architecture supports Microsoft Windows as the client and a variety of Windows NT and UNIX operating systems as servers running Microsoft, Oracle®, Sybase®, or Informix® SQL relational databases.

Compliance to the Windows 16 and 32 bit API standards and the use of the Microsoft Foundation Classes when building the C++ components allowed Siebel to build in OLE and ODBC compliance as well as 32 or 16 bit processing capabilities into the system. Further, following the strategic direction of the Windows Platform, the system was designed to be Microsoft Windows 95 user interface compliant.

Data Migration and Integration

When a customer begins planning the implementation of Siebel's Sales Enterprise, they need to not only migrate existing sales data, they also need to tie their system into other applications in the enterprise including order entry systems, order fulfillment, manufacturing and accounting systems. For instance, sales information like product part numbers and customer names and addresses may be available from an existing order entry system or sales forecast data may be integrated into a manufacturing system to forecast production demands. Through the openness of Siebel's design, and with the help of third party systems integrators, Siebel has been able to successfully deploy the system.

Most existing sales information is in Legacy systems (mainframes or minicomputers) or on UNIX systems. Third party integration specialists work with corporations to help migrate that data into the Siebel system using any of a variety of tools such as data loaders that are available with many of the large database vendors products (including Microsoft, Oracle and Sybase). For data integration issues (tying the system in with other strategic corporate systems) Siebel provides integration tools within the Sales Enterprise System that include interface tables and application programming interfaces - a backplane of APIs that enable system integrators to easily import and export data from Siebel to other mission-critical applications in the corporation. The products can interface with leading providers of manufacturing and accounting systems such as Oracle and SAP.

Ease of Use

Siebel found that profiling a typical user was difficult because potential customers vary widely in terms of what systems they use, how they use them, and what they want from a sales automation solution. Some have used Windows before; some are moving to the system from Macintosh® Powerbook based systems. Still others have never used a PC based system for their sales force. Obviously, system ease of use plays an extremely important role for all of these users. Sales people need a product they can quickly learn without a time intensive amount of formal training. Further, they need a system they can use while they are on the road without needing a lot of support. They demand immediate results from any system. Above all it must increase their productivity.

One reason Siebel chose Windows as the exclusive client for their system is that product research showed how easy Windows is for customers to learn and use. Further, the Office applications with cross-application features like standard toolbars and menus make working with different applications easy to do. Siebel's developers adhered to these Microsoft Office standards, as well as the Windows 95 user interface guidelines during development to ensure that users can become immediately productive and quickly familiar with all parts of the system.

Configurability

Because of the component based design of the system, customers have the ability to buy only the components of Siebel's system that their business needs require. Parts of the Sales Enterprise System include opportunity management, comprehensive customer, product, and decision support information, integrated correspondence and fulfillment, on-line sales literature, product and revenue forecasting, and integrated sales and marketing reports.

Not only does the user have the ability to choose the modules that meet their business needs, they can also uniquely configure the information in those components to meet their specific needs. Siebel has designed a system that allows users to configure the sales screens and corresponding data to match their sales processes. For instance, the screen shown here is completely configurable to an individual corporation's sales needs. This configuration environment is explained below in "Development Challenges".

Document Contents


Solution Architecture

Client side

Siebel currently is working on projects with several companies. They range in size from 350 to 5000 clients. Most are multi-national corporations with sales representatives around the world. For the client machine Siebel recommends a 486/66 with 16 MB of memory and a minimum of 250 MB of free disk space. The operating system is Microsoft Windows 3.1 or Microsoft Windows for Workgroups 3.11. When Windows 95 is released, Siebel will immediately ship a new version of the Sales Enterprise with Windows 95 native support.

Also loaded on the client machine are the Office applications: Microsoft Word, Microsoft Excel, Microsoft PowerPoint, and Microsoft Mail. The C++ components of the Siebel Sales Enterprise are also loaded on the machine. These components take advantage of OLE technology to access the functionality of the Microsoft Office applications and Adobe Acrobat®. OLE allowed Siebel to provide word processing, spreadsheet, report writing, and on-line documentation capabilities by writing code that accessed the capabilities of the applications themselves. Through the use of C++ and the MFC Libraries, Siebel was able to broaden their application's features and make applications interact very efficiently. For instance, the C++ component for correspondence and fulfillment uses OLE Automation technology to open Microsoft Word rather than building in word processing capabilities with C++.

Thanks in a large part to being able to develop the client side of the system utilizing the power of Microsoft VC++ and the MFC libraries, Siebel management estimates that they were able to bring their product to market one year earlier than they would have using another development environment.

Support for remote users

One of the most powerful features of the Siebel system is the sales person's ability to download his or her portion of the sales database onto their local machine and travel with an entire set of client information. While out in the field, users can connect remotely to the database server at their home office and receive updated database information quickly. The combination of the RAS capabilities of Windows NT Server, the client database component Watcom SQL, and several components of the Siebel software, control the database synchronization through a process Siebel calls "docking". When a remote sales representative downloads their set of database records through RAS, the Siebel docking software builds logs on both the client and server databases that contain information on changes made to each. The software handles data integrity issues of replication and synchronization. It detects conflicts (between the client and server changes) and provides for user resolution. Through the docking process, those logs are exchanged, the new and updated records are downloaded from server to client, the client and server databases are updated, and the entire process of synching the databases is quickly completed.

Siebel used Windows NT as the development platform for the communications back end of their system. They were impressed with the powerful RAS capabilities of Windows NT. The NT Communication Server communicates easily with a customers existing UNIX database servers or with other Windows NT machines functioning as the database server OS. "The ability to have sales reps intermittently connect to the database and exchange the data they need to update their local database and the corporate database is a very difficult challenge. NT and RAS are a key part of the Siebel architecture." said Tom Siebel.

Server Side

The database server side of this system presents a new set of challenges. The Siebel designers and developers knew that any large scale enterprise solution needs to provide support for the UNIX® and NT operating systems (both industry standards) as well as relational database systems such as Oracle, Sybase, Informix and Microsoft - all of which are in large scale use in corporations today. Several of Siebel's customers are running UNIX based operating systems including several HP UNIX 9000 series machines, and two Sun Server series. Another potential client is considering running Windows NT as the complete solution. Siebel's Sales Enterprise is designed to work with all of the systems listed above. Microsoft Windows NT Server, functioning as the communications or database server operating system, will interoperate with existing UNIX servers in these corporations.

Microsoft Systems Management Server

Several of Siebel's customers are planning to use Microsoft Systems Management Server. Siebel has recommended using Systems Management Server functionality to provide application version control, software distribution, and to troubleshoot systems for viruses and other support issues. Tom Siebel remarked, "The problem of getting software to many remote locations is a very difficult challenge. Having looked at Systems Management Server and reviewed the product, we feel that it will become the leading product in this area and we are integrating with it."

Tying third party tools to a Windows solution

Siebel worked with various third party vendors to provide support for them into the Sales Enterprise System. One good example of this type of integration is Aspect's CallCenter® product. Integrated to provide call transaction management capabilities, it provides sales representatives with seamless computer/telephone integration by way of a built in application bridge that facilitates communication with the Windows API.

Adobe Acrobat™ 2.0 provides file compression and a powerful viewing engine to allow sales representatives to access and view their entire repository of sales tools, including brochures, data sheets, annual reports and presentations. Adobe's support for OLE technology allows Siebel to easily tie it's capabilities into their Windows solution.

When asked what advice he had for integrating third party tools within a Windows solution, Tom Siebel gave two pieces of advice: work with standards first and design a generalizable interface. For instance, by choosing to build the product with the OLE standard, Siebel was able to utilize the capabilities of products from other software companies that support that standard. In fact, the Adobe product was chosen partly for its support of OLE technology. Adobe's support for OLE technology, combined with the Microsoft Office and VC++ OLE technology capabilities, allowed Siebel to quickly and easily integrate Adobe's capabilities into the system. In fact, as of March of 1995 over 300 companies have products on the market that are built on the OLE standard.

Another important aspect of developing a system like this one is to develop an extremely generalizable application programming interface. For instance, Siebel's system needed to be flexible enough not just to communicate with one relational database management system (Oracle, Microsoft, Sybase, Informix, etc.) but to all applications in that category.

graphic

(Potential) Siebel Sales Enterprise Server side configuration

Document Contents


Development Personnel

Siebel is continually working to recruit highly qualified C++ and database programmers. Most of their engineers have between five and fifteen years of programming experience and come from leading software and database development companies. A core team of between ten and fifteen developers led by Bill Edwards, Siebel's Vice President of Engineering, built the system following a detailed specification in about 18 months. Professional consultants became part of the development process at different times. Experienced database, client/server, user interface and object-oriented development experts reviewed Siebel's technology, architecture, development environment, data model, specifications, and user interface. Siebel considered it very important to work with third party experts whose advice was vital to the development effort.

Document Contents


Development Process

Throughout the entire product lifecycle, Siebel implemented a very customer-oriented development methodology. Their first step in designing this system was to interview more than fifty large companies - all with large sales forces. They asked representatives from these companies to tell them what their requirements for the ideal sales force automation system would be. The requirements acquired from these interviews formed the basis of the product specification.

Siebel also hired third party firms to study the working patterns of potential users of a sales force automation system. From that research, usability requirements were gathered and potential user interface components were designed. The interviews and usability research produced a comprehensive product specification that was hundreds of pages long. From the specification, a completely functional prototype was developed using Microsoft Visual C++, the MFC libraries, and Microsoft SQL Server. Siebel designers then showed the prototype to the original fifty interviewees, and used their input to prioritize the specification and develop the requirements for version 1.0 of the Siebel Sales Enterprise.

Development Challenges

Siebel needs to be able to sell this system to corporations in all industries with every kind of sales need. A key development challenge was to design a system that had strong configuration capabilities, but didn't require source code changes to make configuration a reality. All of Siebel's customers need to have the sales information screens and the data behind them configured to reflect their business processes. The challenge was providing users with an interface to allow them to easily customize complicated portions of the system to meet their exact needs. Currently, the answer in many client/server systems is for users to manipulate the application's source code to customize the user interface and database structure. For Siebel this wasn't an option. Allowing users to manipulate source code leads to several problems including complicated support issues, and upgrades to the system that potentially "break" this customized code. To solve this problem, Siebel used C++ to develop configurable business objects which allow customers to change the object's properties and the corresponding portions of the database through a programming interface, thus eliminating the need to access and change the source code.

Another challenge Siebel faced during development was creating a comprehensive Entity Relationship Model or ERD. Siebel used powerful case tools to come up with the database structure reflected in the ERD. The challenge again was designing a database schema that fulfilled user requirements while also remaining flexible enough to stretch across the entire spectrum of sales organizations. Siebel designers spent approximately nine months developing the schema. Tom Siebel stressed that careful planning of portions of the system like the ERD, the user interface, and researching the development environment they used, all contributed to the success of the development effort.

Another development challenge was testing a system of this size. Siebel hired an experienced Director of Quality Assurance Programs. This person built a comprehensive testing plan and team to manage the QA process for the project. Third party consultants were also hired to validate the robustness, scalability and extensibility of the system. The testing process actually involves the entire company. As soon as early versions of the product were stable, Siebel began running their business on it and everyone in the company began helping to test for problems. Planning the testing process of such a large scale system was extremely challenging. Siebel used products like Microsoft Test to automate processes like customer scenario testing, application integration testing, and performance tuning and testing.

Advice for people porting a 16 bit app

One of the potential development challenges for Siebel was porting it's 16 bit application to 32 bit. Since Windows 95 will be 32 bit, Siebel wants to provide its users with optimal support for this 32 bit operating system. Using VC++, the system was developed as a 16 bit application. It was also designed to support the Windows 95 UI standards. Siebel bet on the dual environment standards to allow easy transition to 32 bit operating systems. The bets paid off. After a recompilation of the code, the application immediately ran on a beta version of Windows 95. Again, developing the system following standards that were migrating to 32 bit architecture, and also strict adherence to the Windows API, contributed to the ease of the 32 bit migration.

International support

Siebel also had to develop a system that supports multi-national corporations. The system had to support multiple currency calculations and national language translations. It was built from the initial stages with support for double byte character sets. All messages and text strings are externalized to allow for an easier localization process for the product.

Document Contents


Conclusion

After intense research into the area of client/server application development, Siebel Systems decided to build their Sales Enterprise product using Microsoft development platforms, operating systems, and desktop applications. Microsoft's support for standards such as the Windows API, OLE Technology and the Windows 95 user interface allowed Siebel to develop an application that is easy to use, is component oriented, integrates well with other applications, and is able to run on 16 and 32 bit Windows platforms. The system also utilizes the power of Windows NT RAS for remote user docking and utilizes Microsoft Systems Management Server for software updating and maintenance. Overall Siebel management believes that developing the system with the Microsoft family of products allowed them to bring this product to market approximately one year before they would have using any other development platform.

Document Contents


For More Information

For more information about Microsoft products, call the Microsoft Sales Information Center at (800) 426-9400. In Canada, call the Microsoft Canada Customer Support Centre at (800)563-9048. If you require text telephone services (TT/TDD), call (800) 892-5234 in the United States or (905)568-9641 in Canada. Outside the United States and Canada, please contact your local Microsoft subsidiary. For more information about the Siebel Sales Enterprise call Siebel Systems at (415)329-6500.

This case study is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
© 1995 Microsoft Corporation. All rights reserved. Printed in the USA.
Microsoft, MS DOS, and MS are registered trademarks and Windows and Windows NT are trademarks of Microsoft Corporation.

Adobe is a trademark of Adobe Systems, Inc.
Acrobat is a trademark of Adobe Systems, Inc.
ORACLE is a registered trademark of Oracle Corporation.
SYBASE is a registered trademark of Sybase, Inc.
Informix is a registered trademark of Informix Software, Inc.
Macintosh is a registered trademark of Apple Computer, Inc.
UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company, Ltd.
Aspect Callcenter is a registered trademark of Aspect Telecommunications
Siebel Sales Enterprise is a registered trademark of Siebel Systems

Document Contents


search icon Click Here to Search TechNet Web Contents TechNet CD Overview TechNet logo Microsoft TechNet Credit Card Order Form
At this time we can only support electronic orders in the US and Canada. International ordering information.


TechNet logo Go To TechNet Home Page ©1996 Microsoft Corporation Microsoft homepage Go To Microsoft Home Page