Asynchronous conferencing system in program management

From: John Conover <john@email.johncon.com>
Subject: Asynchronous conferencing system in program management
Date: Wed, 23 Nov 94 01:00 PST



FYI, attached pls. find a brief synopsis of an asynchronous conferencing
system that I used in cross functional program management. The system was
designed several years ago, so is a bit dated, but one of its advantages
is its inherent simplicity. The attached is a "cut and stick" from some of
the reports on the system's development. The project/program team
consisted of little over a hundred professionals, from approximately 20
specialties, and 4 core corporate functions.

        John

Information systems are used in program management, which must coordinate
the various activities of the corporate functions (ie., engineering,
marketing, etc.) involved in development projects. After researching the
issues, (see below,) We concluded that a distributed full text system that
uses the mail (MTA) system as a communication medium is the desirable
direction to pursue. Our reasoning is as follows:

        1) The Unix MTA is almost universal, and will operate
        effectively over uucp and/or ethernet connectivities in a
        non-homogeneous hardware environment.

        2) Each transaction is logged, with a date/time stamp, and who
        created the transaction.

        3) The MTA already has remedial file storage capabilities,
        which can be used to query/respond to transactions at a later
        date.

        4) Most(?) computers are already connected together, and users
        are familiar with how to use the system.

        5) The MTA database can be NFS'ed to conserve machine
        resources.

        6) It is a text based system.

We discounted the "hyper text" type of systems, because the links must be
established before the document is stored-which is fine if you know what
you are going to query for. In a general management application, this is
seldom the case. We set up a prototype system, using the following
(readily available) programs:

        1) elm, because it has a slightly more sophisticated file
        storage structure, and a very powerful aliasing capability
        that can alias team members as a group. Additionally, it has
        limited query capabilities, and can, through its forms
        capabilities, send mail transactions in a structured format.
        (Which is advantageous if the transactions are used for
        notification of schedule milestone completion, etc.)

        2) The dbm library to build an extensible hash query system
        into the file storage structure made by elm.  This was
        operated in two ways, by an RPC direct call, and a mail daemon
        that "read" incoming mail (to a query "account") and returned
        (via mail) all transactions that satisfied boolean
        conditionals on requested words. (A data dictionary was added
        later, so that the dictionary could be scanned for matches to
        regular expressions, which were then passed to the extensible
        hash system, but for some reason, this was seldom used.) The
        query was made through a very simple natural language
        interface, ie.,

                send john and c.*r not January

        would return all transactions containing john, excepting those
        written in January. (We did not attempt phrases, it looked
        complicated-this is ill advised by Tenopir, etc.  below.)
        This program contained approximately 350 lines of C code.  A
        soundex algorithm was added later to overcome spelling
        errors-the full text database contained the soundex of the
        words in a document, and any words searched for were converted
        to soundex prior to the query. (See the works by Knuth for
        details of the soundex algorithm.) Also a parser was added so
        that the boolean search words could be grouped in postfix
        expressions, eg., ((john & conover) ! (January | march)).

This prototype was well received, and was used as follows:

        1) Management "decreed" that the system would be used as a
        management tool, and all data had to be entered, or
        transcribed into the system (including the minutes of
        meetings, etc.) If it didn't exist in the system, it did not
        exist. All discussions, and reasons for decisions had to be
        placed in the system. ALL team members and upper management
        had identical access to ALL transactions. (Mail could be used
        for private correspondence, such as politicking, etc. but all
        decisions, and the reasons for the decisions had to be placed
        in the system.) The guiding rule was that at the end of the
        project, the system contained a complete play by play
        chronology and history of all decisions, and reasoning
        concerning the project, and, by the way, who was responsible
        for the decisions. On each Monday, everyone entered into the
        system, his/her objectives for the week, and when each
        objective was finished, she/he mailed the milestone into the
        system-ie., all group members and management could thus find
        out the exact status of the project at any time (ie., a
        "social contract" was made with management and the rest of the
        members of the team.) In some sense, it is really nothing more
        than an automated, real-time MBO system. At any time, a
        discussion could be initiated on problems/decisions in the
        system by anyone. The project manager was assigned the
        responsibility of "moderator," or chair person for his/her
        section of the project. Each Friday, the system was queried
        for project status, and the status plumbed to TeX for
        formating, and printed for official documentation. This
        document was discussed at a late Friday people-to-people staff
        meeting.  (The reason for setting things up this way can be
        found in Davido, below.)

        2) Marketing was responsible for acquiring all market data on
        magnetic media, (from services like Data Quest, the Department
        of Commerce, etc.) and each document was "mailed" into the
        system so that the information was available for retrieval by
        anyone.  All had access to the progress made by engineering,
        and can contribute information on issues as the program
        develops-ie., this was a "concurrent engineering" environment.

        3) Engineering was responsible for maintaining schedules, and
        reflecting those schedules in the system-if slippages occurred
        the situation could be addressed immediately by management,
        and a suitable cross functional resolution could be arrived
        at.

        4) Sales was responsible for adding customer inputs,
        concerning the project, into the system, so customer
        definitions could be retrieved by all project members.

The results were very impressive not only by productivity standards, but
also by "correctness to fit and form" standards (ie., the right product
was in the market at the right time, the first time.) This has becoming a
central agenda, as outlined in Davido, below.

Bibliography:

"Computer-Supported Cooperative Work," Irene Greif
"A model for Distributed Campus Computing," George A. Champine
"Enterprise Networking," Ray Grenier and George Metes
"Connections," Lee Sproull and Sara Kiesler
"5th Generation Management," Charlse M. Savage
"Intellectual Teamwork," Jolene Galegher, Robert E. Krout and Carmen Egido
"In the Age of the Smart Machine," Shoshana Zuboff
"The Virtual Corporation," William H. Davido and Michael S. Malone
"Accelerating Innovation," Marvin L. Patterson
"Paradigm Shift," Don Tapscott and Art Caston
"Developing Products in Half the Time," Preston G. Smith and Donald G. Reinertsen
"Full Text Databases," Carol Tenopir and Jung Soon Ro
"Text and Context," Susan Jones
--

John Conover, john@email.johncon.com, http://www.johncon.com/


Copyright © 1994 John Conover, john@email.johncon.com. All Rights Reserved.
Last modified: Fri Mar 26 18:58:08 PST 1999 $Id: 941216132558.8192.html,v 1.0 2001/11/17 23:05:50 conover Exp $
Valid HTML 4.0!