Title: Business Instant Messaging
1Business Instant Messaging
- Facilitating Inter-Office Communication
2Problem Statement
- Create a mechanism that enables employees to
engage in conversations in real-time where the
conversations can be archived and retrieved. - The system must be accessible both from within a
local network and from the internet.
3Failed Solutions
- Email
- Burst nature (spam factor)
- Diverging conversations
- External access difficult
- Instant Messaging
- Insecure
- No central repository of conversations
- Difficulty sharing conversation contents with
others
4Our Solution
- Instant Messenger with server based archival
abilities and optional encryption. - Web message boards for discussing projects
amongst team members that can be accessed from
inside or outside the LAN. - They are integrated.
5January
Robert and Melissa Chat about Product X
February
Unfortunately, Melissa quits and Robert moves to
a different department. Before leaving, Robert
makes their conversations public
April
Tom and Lisa, two new hires, are assigned to
Project X. Although nobody is actively working
on the project, all dialog has been archived and
organized.
6Network
Server
7Web UI Design Decisions
Database
XML
Model
XSL/XSLT
View
Controller
8Database Design Decisions
- Main Entities are User, ContactList, Alias,
Messages, GroupPage, Conversation. - Normalized, 3NF.
- Uses ADO to talk to Web UI and ODBC to talk to
communications layer. - Test in Access run on SQL Server.
9IM Server/Client Communications Layer Design
Decisions
- Need for IM Server to be scalable
- Binary protocol chosen over XML protocol due to
time and space gains. - ODBC chosen over ADO for DB connectivity.
- C chosen over Java due to performance and
scalability concerns.
10Client GUI Design Decisions
- Interface modeled after popular instant messaging
software. - Use of Borland C over Microsofts Visual C
due to ease and flexibility of GUI development
11Schedule
12Test Plan Matrix
13Project Risks
- Customer Backs Out
- Product Fails In Production Environment
- Team Member Falls behind Schedule
- Project Is Too Ambitious