Master Project
A Platform Independent Conference Tool
Anders Sandstrom
1. Committee Members and Signatures:
Approved by Date
______________________________________ _____________
Advisor: Dr. Edward Chow
______________________________________ _____________
Committee member: Dr. Robert Sebesta
______________________________________ _____________
Committee member: Dr. Sudhanshu Semwal
2. Introduction
This Project is based upon earlier work done at University of Colorado
at Colorado Springs (UCCS) . Sharedraw, which was developed by Dr. Edward
Chow, is a real-time distributed computer conference tool. It allows multiple
users geographically separated, to join a conference and share their freehand
drawing, typing text, erasing and clean the screen in real-time.[1]
Dee Patel continued the work by porting Sharedraw to the Java language[2],
thus becoming Java-Based Sharedraw. This project picks up where Java-Based
Sharedraw ended, extends the capability of drawing and editing functions,
supports separate text-based chatting window, and the loading and
printing of current conference content. Another important feature
is the capability to recod and then play back a conference
sesssion.
3. Project Plan
The largest deliverable of this project will be the Conference tool
it self. The picture below shows an early version of the client's graphical
user interface (GUI).
Picture of client GUI.
Full scale image of client GUI.
Full scale image of client chat-window.
The plan with this project is to take the Sharedraw concept to a new level,
by adding a substantial amount of new features and functionality. This
will create an even more powerful platform independent conference tool.
This tool is now object oriented in the sense that the graphics are treated
as objects compared with the original version of sharedraw where the individual
graphic object on screen are not maintained and can be edited indivdually.
It facilitates the real-time presentation. An object oriented design
makes it easy to add new objects in future releases without having to make
changes in the program design. Another important feature is that Java's
abstract window tool-kit (AWT) is used to supply a platform independent
GUI. This means standard menus, buttons, lists, colors and fonts[3].
One of the important goals of this project is to convert the now
existing conference tool from Java Development Kit (JDK1.02) to JDK1.1.1
which is the current release [4]. JDK1.1.1 offers
extensive improvement on AWT. The new version of JDK has also improved
dramatically on internal functionality such as event handling, and thus
improving the performance. One of the goals of this project is to use the
conference tool as an example for illustrating the advantages of the new
features provided by the JDK 1.1.1.
3.1 Tasks:
3.1.1 Already Complete - done during Spring 97 to present
- Learned the Java programming language and master the Java Abstract
Windowing Tool-kit and User Interface interactions. [3],
[5], [6], [7], [8]
- Developed the message format for the graphical objects transmitted
between clients and the server.
- Prototyped the GUI.
- A platform independent conference management tool running under JDK1.0.2.
with the following features:
- Graphical canvas that can handle:
- Ovals/Circles - filled or outlined.
- Rectangles/Squares - filled or outlined.
- Lines with variable line width.
- Freehand drawing.
- Text with standard fonts, styles and sizes.
- Editing of text, while writing.
- Image buttons.
- Fully functional menus.
- Standard user interface (UI) for color selection.
- Status bar that displays connection status, current tool, and help
text.
3.1.2 In Progress - should finish by the end of April 97
- Learn all the new features and changes in JDK1.1.1.
- Convert the conference tool from JDK1.0.2 to JDK1.1.1.
- Create a separate chatting window with the other conference members
without using the graphical canvas.
- Create printing fuctnion support.
- Load and saving a picture.
- Record and playing back session.
- Create menu shortcuts
- Expand the graphical object manipulation capability by including
functions such as the selection, moving, scaling, and deletion.
May be done:
- Real-time audio.
- Support for PDF and/or PS.
3.1.3 Future - complete during Spring 97 (Listed from highest to lowest
priority)
Must be done
- Graduate.
- Write project report.
- Code documentation using Javadoc.
- All the steps listed under 3.1.1 and 3.1.2 except the tasks listed
under "may be done".
3.2 Deliverables:
- Two versions of the conference tool based on JDK1.0.2 and JDK1.1.1.
- Code documentation to support future development.
- Project report including the man page and user guide.
4.0 References
- Patel Dee, Java-Based Sharedraw A Real-Time Computer Conference Tool,
Project Rapport, Department of Computer Science, University of Colorado
at Colorado Springs, 1996.
- The
Java Language Specification.
- The AWT
Home Page.
- JDK
1.1.1 Documentation.
- Cornell G, Hortstmann, C S, Core JAVA,SunSoft,1996,ISBN 0-13-565755-5
- Jaworski, J, JAVA Developer's Guide, sams net, 1996, ISBN 1-57521-069-X
- The Java Tutorial
- The
Java* Developer/How Do I ? ?
To The Top
Last Modified: 14:35pm MST, April 3, 1997