Software Engineering I
CSCI 577a: Fall 2003
csci577@usc.edu
Project 19

Project Name: Threaded Discussion to Outline Converter

Sponsor:
Martin Diekhoff (email: diekhoff@usc.edu; tel: 213-740-2836)

Partners:
None

Background:
Discussion forums have for many years provided a useful forum for discussion questions and problems of a free-ranging nature. A "Threaded Discussion to Outline Converter" would help enable the long-term survivability of such discussions by merging the knowledge exchanged into a more formal reference document (FAQ or outline). In Web Services, for example, a lot of maintenance and build information is shared informally through email, which could otherwise be recorded in a private discussion forum, and it would be desirable to eventually combine such information into a more formal reference document.

Problem:
From time to time, discussions center around particular topics which become an informal basis for policies or procedures. When conducted informally, discussion tend to be free-ranging, organized to suit short-term needs, and dependency on local expertise increases along with the complexity and distribution of software systems.

Inevitably, a more formal sort of documentation is required. In the same way that well-written software is wisely documented, maintenance and policy discussions of an occasional nature (meaning, discussions and exchanges that occur to solve momentary problems) can be very helpful in helping to delegate work to less experienced support staff. It can also help to alleviate some of the pressure of interruptions and recall required of experienced support staff who are normally overwhelmed with an expanding scope of activities.


The problem is not that information is not shared but, rather, that it is not as well-documented according to formal standards as often and as consistently as it could be. This problem is partly related to the typical load pressures of developers; there is both greater pressure and greater payback for getting pressing work done than in documenting the work itself. I surmise that a system might be developed which would allow centralized organization of support and development notes to proactively organize discussions.

In one embodiment of this system, a group might use a program such as the open source phpBB program, a widely-used and tested forum discussion program. The program does have some minimal voting mechanisms, but it lacks classification tools and a central organizing engine that might take user's posts and organize these contributions (by keyword or by user classification) into a formal results document. Such a document could summarize, concisely, the results of the discussion, and serve as a knowledge reference document (or FAQ), once a discussion is concluded (or once sufficient information exists in a discussion thread to generate a useful document).

Constraints:
Because this project may have far-reaching applications, it is important to constrain the problem to a very narrow capability. In this case, it is suggested that the project focus specifically on relating various posts under a single thread, and feeding questions to posters and participant members that will tend to produce a useful summary of the thread. This might be done by augmenting a program such as phpBB with a program that routinely traverses threads and proactively contacts participants. The program might ask simple generic questions that take a vote on a) whether a topic should be included in final documentation; b) whether this knowledge should be required reading for people new to the subject; c) whether this subject should be considered settled policy, guidelines, or whimsy; and, other useful criteria that would be instrumental in producing, as its final product, a topic outline that concisely presents the results of the threaded discussion!

It is further suggested that the project be constrained to assume all participants are willing and honest partners in a project, and not subject to hostile discussions and/or voter fraud, etc. In this case the project would focus on helping a group like Web Services to organize its procedures into a formal document, using machine or human (or combination thereof) input to accomplish this purpose.

Desired Deliverables:
A formal procedures and policy document or outline, based on loosely organized threaded discussions or annotations to be provided by Web.

 

 

CONTACT US