Designing a Client/Server Electronic Messaging System

Designing a Client/Server Electronic Messaging System

by Barry Gerber

Introduction

Electronic messaging (e-messaging) will be one of the key growth industries of the next decade. Store-and-forward-based e-messaging will complement and, in some cases, compete with interactive technologies like the Internet. From a business perspective, interactive systems are best for one-to-many, product marketing and distribution activities. They are most like newspapers, books, magazines and broadcast media. Store-and-forward systems also can support these sorts of activities, but they are especially suited to one-to-one and many-to-many purchasing, information distribution and decision making processes. They are most like postal mail systems and interoffice memos.

As you track through this article, keep in mind that there is more to e-messaging than e-mail. E-messaging is the use of an underlying addressing and routing infras tructure to deliver anything that can assume an electronic existence. This includes anything from a simple text message to a copy of last night's Letterman show; a budget development spreadsheet to a set of JPEG files of photos you took on last week's vacation; a purchasing request to selected articles on IBM in today's financial journals.

The Internet has received a tremendous amount of attention from all quarters, some of it actually deserved. The hot question for software vendors is: Does it support access to the Web? It's time for serious businesses to shift some of that attention to e-messaging. To that end, this article presents some guidelines for designing and implementing an e-messaging system.

Key to electronic messaging is client/server technology. The older file system-based e-mail systems just can't cut it when it comes to e-messaging. Their lack of clean security, server-based processes and efficient data access capabilities render them nearly useless for modern e-messaging applications. Thus, we will concentrate here on client/server e-messaging systems.

Throughout this article, "organization" will be used to refer to an entire enterprise: a corporation, university, civic organization and so on. "Site" will be used to refer to a subset of the organization: a geographic area, a department and so on. It is also assumed that, no matter what the product, all of the users of an e-messaging system will have a home messaging server where their messages are stored and where they connect to process their messages.

The Importance of Design

Design is important in the implementation of any system. With e-messaging systems it is particularly important because they are especially complex. They involve all of the traditional data processing disciplines: computing and networking hardware, and software infrastructure, application development environments and application design and implementation.

Though e-messagin g products are becoming increasingly open, it's still difficult to find a single e-messaging product that can run on top of the myriad computing platforms and networking systems found in most organizations. This leads to a number of questions:

What to do about the number of e-messaging products currently in place: Integrate, migrate with some deliberation to a single product or simply replace everything with that product right now?

What networking and e-messaging protocols make the best sense for both internal and external links? How do these mesh with protocols currently in use?

Is there enough bandwidth on current networks?

What sorts of new MIS staff, software, hardware and networking capability will be required to make an effective e-messaging system work?

What will it cost to solve existing infrastructure problems?

On the application development front, things aren't much better. Many organizations are still striving mightily to migrate flat-file applications to client/server database management systems. As compelling as it may be from a business perspective, adding e-messaging infrastructure and application development based on it to this mix often seems like the straw that will surely break the camel's back. The question on everyone's lips is, can MIS and the corporate coffers bear yet another demanding and costly major technological upgrade?

MIS and corporate managers find themselves faced with the following set of realities and consequences:

Reality: More exciting application options Consequence: More systems analysts, programmers and end-user time to develop applications

Reality: More functionality and productivity on the end-user side Consequence: More end- user training and support

Reality: More complex systems and, consequently, more that can go wrong Consequence: More technical managers

Careful design, which means careful planning, is the only way to deal effectively with the unknowns and fears that accompany a move to any new system. Getting all of the cards on the table as soon as possible not only makes the initial go or no-go decision easier, it also makes it easier down the road when the inevitable "Why do we need that? Did we plan for that? Can we afford it?" questions arise.

A Twelve-Step Client/Server E-Messaging Design Process

The design process used here is based very loosely on an eleven-step process Microsoft recommends for its Exchange Server product. The Exchange Server-specific components of this process have been removed. The steps have also been modified to reflect a wide range of computing and networking hardware and software options. In addition, a section on e-messaging product selection has been added.

The twelve-step e-messaging design process is:

1. Assess your organization's needs

2. Assess the geographical distribution of users, computers and networks in your organization

10. Decide how you will link your organization to external e-messaging systems

11. Validate and optimize your design

12. Roll out your plan

Design is Iterative, Not Linear

As you move through the twelve steps, remember that designing an e-messaging system is not a linear process. It's iterative. You will find yourself coming back to each step to gather new information, to reinterpret information you have already gathered and to gather even more information based on those reinterpretations. New information is likely to lead to design chang es and further iterations. Even after you have fully implemented your e-messaging system, you will come back to steps in the design process as problems arise or your organization changes.

Within reason, the more iterations you go through, the better your final design will be. However, take care not to use iteration as a route to procrastination. Whatever you do, pick an e-messaging system and start running it as soon as you can, if only in a limited test environment.

The post was informative. I came found some 5 enterprise messaging system big ant instant messager, bobup communication server, Dbabble, etc. But all these would have not reached its peak something like whats app. Even people rely on whats app clone script for business.