NAU Capstone Design Sequence
Sponsor Project Description

Mogwi : A modular group teaming environment

Sponsor Information:

Dr. Eck Doerry
Dept. of Computer Science
Northern Arizona University
Flagstaff, AZ 86011

(928) 523-9377
Eck.Doerry@nau.edu


Project Overview:

Over the past decade, there has been a rapidly increasing trend towards decentralization in all sectors of industry, as companies merge, spawn affiliates, and generally move into a global mode of operation. At the same time, there has also been an increasing focus on small team product development, in which a select group of team members with complementary skill sets collaborate to accomplish some design and development task. The fact that these team members are often located at different sites -- ranging from different buildings on a large corporate campus to international affiliates -- has led to tremendous interest in developing virtual environments that provide a "place" for such teams to meet, share artifacts, and coordinate their activities. These systems are collectively known as "groupware".

The MOGWI (MOdular GroupWork Infrastructure) system explores a particular avenue in groupware design. Most groupware tools are either (a) single-purpose utilities (e.g. Netmeeting, Corporate Time, etc) that embody a single (or few) specific functions or (b) large monolithic systems (e.g. Teamwave) that involve specialized client software and integrate a plethora of tools. The MOGWI concept envisions a simple, lightweight system that small teams can easily set up and configure to support a small group project. Unique characteristics include:

  • Web-based. The entire client side of the system must be browser-based; no special client software is needed. The current prototype uses a system of communicating applets to achieve the desired effect.
  • Highly modular. The system should consist of a minimal "core", to which users are able to seamlessly add the tools (modules) that they will need to support a particular project. This makes is possible to configure a system that contains only those tools a team needs!
  • Identity and Security. The system must provide strong identity and security measures. Access to team site should be restricted, identity of the actors within the site (who owns what, who did what) should be preserved throughout.

An exploratory prototype of the MOGWI system was constructed several years ago by a team of students in a Groupware Systems course. The goal of this Capstone project is to re-implement the core module(s) of the system to fix design flaws and bugs, and to add one module for handling team task management. The design team is encouraged to reconsider all design decisions made in the prototype in an effort to simplify and improve the product.


Knowledge, skills, and expertise required for this project:
  • Java/Swing --- All of the client-side code (applets) must be implemented in Java1.3(Swing).
  • Java networking --- some knowledge of Java networking is useful, including Remote Procedure Call (RPC).
  • General Web programming --- need to know how to set up webpages, deal with applets.
  • Databases (minimal) --- MOGWI uses a simple MYSQL database running on the server to cache data about the system and transactions.

Equipment Requirements:

Equipment needs include:

  • Development workstations that support Java code development.
  • A server on which to install the database and java-server (server-side code)

Students may use their own workstations if they like. Workstations and a Linux Server are also available in the Collaborative Computing Lab (CCL). Students will have free access to the CCL as a place to meet and work.


Deliverables:

Although the MOGWI system will eventually support a host of sophisticated modules, this project has much more limited goals:

  • Core Module(s): The heart of the system is a central module called the Central Module Registrar (CMR) that tracks which other modules (applets) users have placed the team webpage, and mediates inter-module communication. It handles login, security, database interactions and data storage requests from other modules. This module exists, but needs to be thoroughly re-implemented.
  • Newsgroup Module. This module is already implemented, but should be tweaked/integrated into the revised system. The module implements a secure forum for archiving group discussion. Similar to a typical USENET news reader, but with additional features for access-management and archiving.
  • Task and Workflow (TAW) module. This module implements a very simple tool for task management to allow the team to coordinate its efforts. It's really a glorified task list, except that it tracks who is assigned to various tasks, how far they are, and links tasks to other tasks that depends on them.
  • Fully documented code; complete design documentation.
  • Web-based documentation for using the MOGWI system. Includes instructions for installing the system for use by a sys. admin. and instructions for using MOGWI for end users.