Chat In The Hat

aniseedsplashSoftware and s/w Development

Aug 15, 2012 (4 years and 11 months ago)


Chat In The Hat

Justin McCarron, Tom Allen,

Clayton Chang, Vincent Pai,

Jeffrey Hebrank, Luo Pan,

Allen Weiss

Software Toolset

Client and server applications will be
developed in Java

Swing GUI Toolkit

Java SE 6 introduces several other exciting
features such as system tray functionality,
splash screens, and more advanced layout

Server side app will likely have
a Swing GUI as


Networking between client and server
applications will utilize the library

Socket and ServerSocket classes library

To store user information and messages to
offline users

For the stream readers and writers that send
information via the sockets


CVS for version control

Eclipse? Popular, powerful

DrJava? Simpler


Swing GUI Builder, drag and drop

Decision has not been made

Group Dynamics

PM: Justin McCarron

: Lead

Clayton Chang,

Vincent Pai, Luo Pan,

: Lead

Tom Allen

Jeff Hebrank, Al Weiss

Documentation and

Simple Web site

Jar file download, client and server apps

Link to html “readme” and “help”

Support forum

UI Prototype

Wow that looks nice


The basics, What we will start with

Use case

Use Case: Send a Message to another User

Primary Actor:


ChatInTheHat Instant Messenger

User goal

Stakeholders and Interests:


wants to send a message to another user, the Receiver


receives the message from the Sender.

Both Sender and Receiver have ChatInTheHat open.

Minimal Guarantee:
ChatInTheHat can tell if something goes wrong and will notify the Sender of the problem.

Success Guarantee:
Receiver receives the message and the message is displayed on both users’ screens.

Main Success Scenario:

1. Sender selects a user (the Receiver) to send a message to.

2. Sender types a message.

3. Sender clicks the send button or hits enter.

4. The ChatInTheHat client parses the message.

5. The ChatInTheHat client sends the message to the ChatInTheHat server.

6. The ChatInTheHat server sends the message to the receiver.

7. The message is displayed on both the Sender’s and the Receiver’s screens.


1a. The Sender selects a Receiver that does not exist.

1a1. The System will notify the Sender.

1b. The Sender selects a Receiver who is not online.

1b1. The System will report that the intended Receiver is not online to the Sender.

1b2. The Sender either cancels the message or tells the ChatInTheHat server to deliver it to the Receiver the next time the
Receiver logs on.

2a. The Sender attempts to type special reserved characters, which are used in parsing.

2a1. The System will notify the Sender that those characters are not allowed in messages.

4a. The ChatInTheHat client fails to parse the message.

4a1. The System will notify the Sender that the message could not be parsed.

5a: The ChatInTheHat server does not receive the message because of web failure or server problems.

5a1. The System will notify the Sender that the server did not receive the message.

Risk Summary

ChatInTheHat is intended to
be an instant
messaging service

essential features may be cut

Message storing

Chat channels

Team balancing

Depending on workload/difficulty