Functional Partitioning
Functional Description
Structure of Program
There are five modules:
- Administration process
- Load Balancing
- SMS Notification
- Email Notification
- Pager Notification
Administration Module
The Server administrator will give instruction to create the server
for SMS, Email, & Pager. He also creates the server property
sheet, which contains the information about the types of server
and their connectivity. A client sheet is also generated which gives
the information about the clients IP address and the information
about the channel interfaces like email, SMS, & Pager.
Any client can be added or deleted through administration module
by the server administrator. This module also generates reports
like, how many messages will be sent within a specified time through
any alert messaging technique (Email, SMS, & Pager).
Also the log file for different servers will be created. This log
file helps for getting the current status of the system. It also
helps to debug the application like, if any client is down, a status
report is written in the client machine log file.
Load Balancing
Load Balancing is done on servers. It is a technique to distribute
the traffic efficiently among network servers so that no individual
server is over burdened. The load balancing helps to offer practical
guidance to planning and implementation of technology in most environments.
The Load Balancer on this system works on capacity driven nature.
The client machines that are working efficiently will get more load.
More work will be given to the client only when he finishes the
previous work. The load balancer works in a multithreaded fashion.
When the client machines are invoked by server an equal number of
threads are created on server. In client machines also more threads
are created equaling the number of channel interface/number of modules
(i.e., SMS, Email, Pager) on the client.
When the machines are invoked (server, clients) the socket connections
are created at a particular port, then server writes to the port
which is read by the client. The client then gets the database through
a temporary array list. Then client processes the information (i.e.,
messages). The client then gives feed back through writing to client
to client socket, which is read by the server socket. If there is
failure in sending, the status is updates (Failure/Success) in database.
|