Exchange has five key pieces. These core components are email, folders (the basis of information sharing), scheduling, forms, and connectors.
Exchange offers rich-text email capability. You can create email messages with text in multiple fonts, colors, and sizes. Messages can also contain in-place Object Linking and Embedding (OLE) objects, such as Excel spreadsheets and Word documents, as Screen A shows. Exchange provides address books to store email addresses of recipients and information (e.g., company name, voice phone number) about them. You can set up multiple address books to store email addresses for various recipient groups. A convenient feature is the ability to send email to anyone with an SMTP address. You can set up complete address books of friends, vendors, or customers who have an Internet address and send email to them from Exchange (although you lose some of the rich-text formatting unless the recipients are also using Exchange or another Messaging API (MAPI) rich text-enabled client.)
Folders store information in the database. They are containers for messages, forms, files, and other folders. Folders appear as a hierarchical tree to users, who can easily post information to folders and move information among folders.
The three folder types are personal, public, and mailbox. Personal folders are for private use and are a good place to keep information you want on your local machine or that you may need a password to access. Public folders are the basis of information sharing. They provide public access to information, and you can use them in groupware application development. Mailbox folders store inbound, outbound, and server-based private mail. All these folders can have offline versions that Exchange can synchronize with the online folders letting you work offline and easily keep your work in synch with online objects. (For an explanation of how to synchronize offline and online folders, see the main article.)
Exchange stores folders in its database, which uses the client/server model, which is optimized to speed email and groupware applications. A drawback is that you can't read or update the Exchange database outside Exchange. No Open Database Connectivity (ODBC) drivers or other database tools currently let developers directly manipulate the Exchange database. However, Microsoft plans to add the ability to manipulate the Exchange database in the next release of Microsoft Access to let Exchange support more complex, database-centric applications. For instance, a customer tracking system will be able to obtain the customer's account balance from SQL Server or Access and post the balance directly to an Exchange folder.
Exchange's replication and directory synchronization features let you store the same information on multiple servers, significantly improving the response time for accessing information that, for instance, may be on an Exchange server in Europe and also on a server in the US. Replication can reduce communications costs, because you replicate data once, and then Exchange sends only updates and additions.
Of course, Exchange wouldn't be as much fun if you couldn't do the opposite of replication and configure folders for cross-server access, but you can. The Exchange administrator can designate public folder affinity, letting users connect to folders outside their designated site.
Naturally, Microsoft has created hooks from Microsoft Office applications to Exchange. For example, you must have Microsoft Office version 7.0a to post documents directly to a public folder on Exchange. Also, your personal email address book from Exchange is available on the Word toolbar. You can email a document to another user by selecting Send from the File menu of an Office application, or you can route a document to another user or users by selecting Add Routing Slip, from the File menu. Routing lets you choose how to send the document to peoplesequentially or all at onceand lets you control the revision capability along the route. You can put any Office document in an Exchange folder, and you can use the properties of the document (e.g., the author, the revision date, or the cell of an Excel spreadsheet) in a view that you create to look at the folder (i.e., you can use the properties to search for documents in the folder).
Exchange uses Microsoft Schedule+ 7.0a to support scheduling. Schedule+ is an easy-to-use program that you access from the Exchange client. Schedule+ lets you create and maintain schedules for people, teams, and tasks. The Meeting Wizard leads you through choices for who needs to attend; what resources (e.g., audio/visual equipment, meeting rooms, squirt guns) are necessary; and the meeting's location, time, and duration. The wizard then verifies the schedules of the required people and resources and the optional people and resources, and determines whether your meeting time is possible. If so, the wizard sends email notices to the attendees and updates their personal schedule. Schedule+ is best when you can get everyone to use it, but it's also great for individuals.
Exchange forms are simply electronic versions of the paper forms we all use each day to structure data for fast and efficient viewing. With forms, you can request vacation days, report travel-expense information, track phone messages, and so on. Unlike paper forms, however, these forms arrive via email through Exchange, and they can contain all sorts of other objects (e.g., OLE objects) and information. Forms can send a message or post a message to a folder. If you post forms to a public folder, you can view and search them for content. Exchange forms are a convenient and easy-to-use front end for the Exchange database.
You can create custom forms that look exactly like your paper forms, and Exchange can route these forms throughout your company. You create Exchange forms with the EFD, which ships with Exchange. The EFD contains VB for Microsoft Exchange Server Version 4.0. VB generates source code that you compile to produce the form. With VB 4.0's 16-bit version, you can extend forms you create with the EFD.
Forms are the vehicle for extending Exchange. I think we will see significant application development based on Exchange forms, and third-party developers will create entire applications and tools to support Exchange.
Connectors let Exchange communicate with other Exchange and non-Exchange systems over many different transports, protocols, and mail systems. Exchange supports dynamic folder replication between Exchange servers. This capability is useful, for instance, if you have a large company with multiple Exchange servers. Replicating folders across servers is faster and more secure than granting access rights to server folders.
Exchange uses several connector types. The site connector requires a permanent LAN connection and uses remote procedure call to connect Exchange servers within the same site or LAN. A site connector is the fastest connection possible because you have no protocols to negotiate between servers.
The X.400 connector can connect Exchange servers to each other or to another X.400-compliant mail system. An X.400 connector can use a public X.400 connection that long distance telephone carriers provide.
The Dynamic Remote Access Service (DRAS) connector provides dial-up support between Exchange servers. A DRAS connection is useful for low- to midband connections where the phone company connects servers through modems. You can specify the connection interval. For instance, you can connect each hour during the work day and only twice during nonworking hours.
The Microsoft Mail connector links Exchange and Microsoft Mail. This connector lets you move messages back and forth between Exchange and Microsoft Mail and lets you share Schedule+ Free/Busy schedule information to ease migration. (For an analysis of the Microsoft Mail connector, see Spyros Sakellariadis, "Migrating MS Mail to Exchange," April 1996.)
The Internet Mail connector links Exchange with the Internet and any SMTP-based system. This connector lets you send and receive Internet email from Exchange. Soon Microsoft and third-party vendors will introduce several gateways to provide access to SNADS and other data stores.