|
Chapter
6: Conclusion
5.1.
Conclusion
The Interactive Secure
Communication system aimed to provide users with
various means of communication, including
message exchange, file transfer, and voice
conferencing. The developed system can be used
by companies as a low-cost alternative solution
to the typical telecommunication systems.
The developed system consists of
three primary subsystems that are distributed
amongst the system modules. These subsystems
are: the ISC Message Exchange Subsystem, the ISC
File Transfer Subsystem, and the ISC Voice
Conferencing Subsystem. Each of the subsystems
performs a specific task to provide service(s)
to authorised users. As ISC was intended to be a
distributed application, it was designed an
implemented based on the client/server model.
A significant characteristic of
the application is the selection of Java as the
programming language with which it was
developed. Throughout the design phase, the
demand for full portability of the application
was considered crucial. That is, the application
should be able to be executed independently of
the workstation of the user. In order to achieve
what was mentioned above and to build a
user-friendly tool, Java was selected. With the
use of Java, the developed application may run
over any platform, as long as the Java Virtual
Machine is supported by the platform.
Prior to implementing the ISC
system, the system design phase took place. The
design phase provided a suitable architecture
within the system requirements. However, during
the design phase, frequent feedback from
individuals was taken into account in order to
satisfy users’ needs.
As
mentioned earlier, the ISC system was developed
based on object oriented concepts by using Java
as the programming language. During the system
implementation, Java capabilities of networking
were used to enable the system modules to
communicate amongst each other. In addition, ISC
commands were defined in order to provide
sessions control, such as: creating ISC
sessions, adding and removing users from a
session.
It is worth mentioning that many
aspects in the implementation phase had to be
learned, such as the Java Media Framework
package and the Real-Time Transfer Protocol
functions, in order to accomplish the project
goal.
5.2.
Problems Encountered
The implementation task for
system was carried out with some problems
encountered. However, most of the problems faced
were overwhelmed with the help of the intensive
research that was carried out. Furthermore, the
only major problem, which caused the
implementation phase to stop, occurred during
the implementation of the ISC Voice Conferencing
Subsystem.
This problem rose as the voice
system was designed based on the Java Media
Framework that is not supported by the
programming tool that was used for the
implementation of the client application.
However, this problem can be overcome by using
an alternative programming tool, other than
Symantec Visual Café.
In addition, if no other
alternative is found, some improvements could be
added to the new system design that is
identified in the Implementation Chapter (6.2).
Although, most of the implementation of the
proposed system is completed (using both of
JBuilder and Visual Café), the implemented
segments could not be merged together to act as
a single system since Visual Café is unable to
support the required JMF libraries.
5.3.
Results and Performance
ISC modules were tested on
Windows XP system with 256RAM, Pentium III 1G
MHZ processor. Loading time of the client
application is around 5 seconds. However, the
time required for loading a private or file
transfer session is not noticeable. In addition,
the server application was successfully tested
with over 40 users connected to the application.
Generally speaking, the system modules performed
what was expected.
5.4.
Future Enhancements
As for future enhancements, the
following features, which were not proposed to
be implemented in this project, may improve the
function and performance of the application:
o
Enable the incorporation of video
data.
o
Enable multiple users to join a
private session.
o
Enable users to establish
multiple file transfer session concurrently.
o
Provide users with an online
registration mechanism.
o
Enable users to run the
application as an Applet, if desired.
o
More sophisticated graphical user
interface, e.g. animation.
Overall, the project was an
opportunity to show my understanding of the
development of network programming, as well as,
an indication of my ability to apply them on a
real-world software development project. It also
demonstrates my ability to use Java classes and
techniques, including I/O, networking, and
multi-threading, to implement such a system and
my ability to put into practice the skills,
tools, and techniques that I have learned
throughout this BSc course. Finally, it shows my
ability to conduct research in the subject
matter. |