Project Plan Implementation
Project Plan Implementation
Collaboration
Supervisor:
Group Members:
Member P.N.D. De Silva B.C.P.S.S.M. Balasooriya K.R.Y.S. Wijesiri M.H.S. Tharaka B.W.D.H. Prasad
Group Leader:
P.N.D. De Silva
Project Type:
Implementation
Introduction
The project is designed for small companies so that the employees of a particular company can collaborate to ease current status of their tasks. Our application is hosted and the client companies can register in our site to use the service. This works as a cloud system and provides communication facilities for employees even when they are on the way using the mobile client.
Requirements Analysis
Functional Requirements
Real time conversation for members of the company
Employees of the company can chat with the other employees of the same company File sharing
An employee can send files (text, word, pdf etc) to a particular employee or all the employees Notice Board
Only the boss has the privilege to publish notices. Other employees can read and comment to the notices Tool for employees to suggest ideas to improve the company
Employees have a tool to suggest new ideas to improve the company, productivity, efficiency etc. Tool for boss to assign work for employees employees.
Boss can assign work to a particular employee or a group of He/she also can set deadlines.
Employees can use the mobile client to access the notice board. So they do not always need access to a PC/lap Notifications -
Notifications like boss assigning work, notice board messages are sent to the mobile phone Tool for Real time conversation -
Employees of the company can chat with the other employees of the same company using the mobile phone
The System has a rich user interface so the users can very easily get familiar with the system Security -
The System has a good security system. HTTPS is used to protect form data. Passwords are not stored in the database instead hash values of the passwords are stored. Reliability -
24/7 running servers are used to host the application. So the companies can rely on the system. Robustness -
The System is able to cope with errors during execution. This is achieved through form validation, exception handling etc. Portability -
We can use the same code when moving software from one platform to another instead of creating new code since Java technologies are used and the open fire chat server runs on both Windows & Linux platforms.
Data Requirements
Company Information
Company name Email address of the company (primary key) Name of the boss
Employee Information
Name of the employee Email address Email address of the relevant company (foreign key)
Hardware Requirements
24/7 Running server
Software Requirements
Glassfish Application Server -
Glassfish is the application server used to host our application. Availability of Java Mail Sessions & Database connection pools are the main reasons why Glassfish was selected MySQL DBMS -
MySQL was chosen as the Database Management System since it is free & there is a solid community so we can get technical support when necessary Hibernate -
Hibernate is used for mapping an object oriented model to a traditional relational database. Open Fire -
Open Fire is used to develop the chat server. It is free and has built-in java functions that provide most of the XMPP capabilities easily. Spark Web -
Spark Web is used to build the chat client. Since it uses flash it can be used with many modern browsers & it is a web based chat client. Mobile Chat Client -
We choose two chat clients. One client runs on BlackBerry & the other runs on Android.
Similar Systems
Microsoft Cloud Services
Microsoft Cloud Services provide most of our features but people who use these services have to pay a high cost. But our system provides it free of charge.
Google Apps
Google Apps provide services with some cost. But we provide free of charge. Google App users have to use their own domains too. But our users do not want any domain or server.
Unique Feature
Using Google & MSN chat employees can chat with anyone outside the company as well. This reduces productivity. But in our system the employees can chat only with the fellow employees. So the productivity increases
Java EE technologies such as Servlets, JSPs are used. Better performance than other technologies & also platform independent. JavaScript -
Android SDK is used to provide the functionalities of the Android mobile client. BlackBerry SDK-
BlackBerry SDK is used to provide the functionalities of the BlackBerry mobile client
Time Plan