Remote System Monitoring and Controlling via Web based
Mobile or Desktop Application
Introduction:
The idea of
remote system monitoring and controlling application is to do some of the
actions like ex: Shutdown, Reboot, Hibernate of the users systems remotely. The
user can also make use of this application to query additional details of the
systems.
Consider a
scenario where you have a set of systems (Computers) and you want to control
them from your mobile or any other desktop anywhere from the world. So this
started as initial requirement of how we can implement the same to control
numerous systems remotely.
Consider
another scenario of how you can retrieve the information of a particular system
remotely from your handheld devices or through desktops. By retrieving
information, one may be interested in knowing the following
1. Machine Name
2. CPU information
3. Username
4. Domain Name
5. OS Version
Software
Requirements Specification
1. Aim: The aim of this project is to
provide a facility for the end user to remotely control their systems through
desktop or mobile based web application.
2. Purpose: The purpose of this project
is to implement a proof or concept of the same. And to show how easily it can
be done with .NET technology
3. Scope: The scope of this project is
very limited to controlling the system with few actions like Shutdown, Reboot,
Hibernate, Logoff, Force close all applications etc. The user registration is
done only at the client application and the it should be always running
in-order to control the system remotely.
4. User Characteristics: The Following things are taken into
consideration with this software development
a. Users can have multiple systems for
controlling. There is absolutely no limit in the number of systems being
controlled by the users.
b. The user can either control her/his
systems through mobile or desktop based web application.
c. Each user can control his/her system
only and don’t have access to control others systems.
d. Right now there is only one type of
user of this system i.e. the System Administrators who will be using this
system to control or fetch additional information of the system on their own
interest.
Software
and Hardware Requirement
Software
Requirements:
· Operating system: Microsoft Windows XP / Win 7 / Vista
· .NET framework 4.0
· SQL Server 2008
Hardware
Requirements:
· Processor Pentium 4
· RAM- 256Mb
· HDD-10GB
Technologies
Used
·
Visual
Studio.NET
- The
Client Application is developed with .NET C# Winform technology
- The Server
side web application is developed with ASP.NET MVC3 technology.
·
Internet
based / Cloud based Microsoft SQL Server 2008
- This
software is designed with Software as a Service model with a common
single cloud database which stores all the users and their system
information.
How does
the software functions?
Client
Application:
When
you run the client application for the first time, you will have to register
yourself with the username and password. The same has to be provided as log on
information which will authenticate the user in client and server applications.
Once
authenticated, the user has to click on the Start button for continuous
monitoring of the system behind the scene. The system registers by itself by
putting an entry in database (this happens only for the first usage of the client app)
so that the user can control that particular machine. When the user closes the client application,
the entry in the database for that system will be deactivated. For subsequent usable of the client application,
the system will be activated for monitoring and controlling.
Server
Application:
It
is a web based application, on requesting the user will be authenticated. The
use has to provide the same username and password he/she has provided at the
time of user registration in client app.
On successful
authentication, the list of active systems will be displayed in a screen. The
user can select one and perform the actions like Shutdown, Reboot etc.
Database Entity Relationship Design Diagram
Snapshots of
Server Application