130 likes | 267 Views
Business Instant Messaging. Facilitating Inter-Office Communication . Problem Statement . Create a mechanism that enables employees to engage in conversations in real-time where the conversations can be archived and retrieved.
E N D
Business Instant Messaging Facilitating Inter-Office Communication
Problem 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.
Email Burst nature (spam factor) Diverging conversations External access difficult Instant Messaging Insecure No central repository of conversations Difficulty sharing conversation contents with others Failed Solutions
Our 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.
January 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.
Network Server
Web UI Design Decisions Database XML Model XSL/XSLT View Controller
Database 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.
IM 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.
Client GUI Design Decisions • Interface modeled after popular instant messaging software. • Use of Borland C++ over Microsoft’s Visual C++ due to ease and flexibility of GUI development
Task Aug 28 Sep 4 Sep 11 Sep 18 Sep 25 Oct 2 Oct 9 Oct 16 Oct 23 Oct 30 Nov 6 Nov 20 Nov 27 Dec 4 Requirements Elicitation X X Research X X Product Design X X X Software development X X X X X X X Debugging and Testing X X X X X X X X Module integration X X Customer testing X X X Prototyping X Customer Training X Final Presentation X Schedule
Project Risks • Customer Backs Out • Product Fails In Production Environment • Team Member Falls behind Schedule • Project Is Too Ambitious