You are on page 1of 7

University of Polytechnics Romania , faculty of Computers and

automatics

PHD student Name : Salman Hussam

PHD conductor Name: Dr.Prof.Ing. Mircea Petrescu

PHD project title : USING LOG FILES TO IMPROVE WORK EFFICIENCY

PHD project description : as I believe that spending a lot of time at


work is becoming a social problem , and people do not have time for
family ,sport and other activities , I created LOGGER , it is a
monitoring application for employees at work, it controls the time they
spent on social media while they are at work , it is also an application
that interfere with the user by sending alarm massages when it thinks
its the need to and alarm the users to get back to work so they finish
work early and go back to family/sports , social activities so they they
have time for everything !

The Article from the project that we will speak about today is :

Sending the data already gathered from the client to the Server

Sending the data to the Server


1.1 Several requirements surfaced in the analysis stage
1.2 Analyzing Data
1.3 Presenting information

As a client-server application, the Logger is based on a communication interface


between the two machines. This communication is highly required for the data
recorded to be sent and stored on the server side. This is why, the communication
method is very important. For this, I had to choose between a web service and a
WCF service as a communication medium. The web service provides an efficient
way of facilitating communication between applications, but it has limitations.
One major drawback is that the communication can happen only over HTTP
(hypertext transfer protocol). Another one is that it provides simplex
communication and there is no other way to have halp-duplex or even full-duplex
communication. These are the main reasons that a Logger type application cant
use a web service for sending data to the server. ((Example of HTTP
communication))

This image presents


how the server
receives the Client's
requests and direct
them to the other
servers that handle
this request depending
on its Type
But the Master server
is the only one who
Receives the information directly from client
-------------------Here is the WCF service (WCF
= Windows Communication
Foundation)
Its a framework that allows
synchronic messages
transmission between clientserver , \ server-oriented \
such that Client is not waiting
any response message from

server
The WCF (Wondows Communication Foundation), provides what web services
dont. WCF offers other protocols for data communication and even half/full
duplex communication. By using WCF, we can define a communication service
and setup and then configure it so we can use it via HTTP, TCP, IPC or even
Message Queues.
Another explanation of WCF is that it is a framework which was designed for
developers who want to develop distributed service-oriented applications. The
WCF is used by developers to create, host, consume and secure services by using
the Microsoft platform. In this way, developers could concentrate on
implementing theirs applications and not the communication environment with
protocols and low level details.
The main differences between the web service and WCF service are presented in
the following table:
Web Service
Communicate only through
HTTP
Simplex and requestresponse based
communication
Hosted in a web server in a
stateless fashion

WCF Service
Communicate over HTTP,
TCP, IPC, MSMQ
Simplex, request-response,
duplex communication
Can be hosted in many
ways (inside IIS, in a
windows service, self
hosted)

1.1 Several requirements surfaced in the analysis stage


Now that the mechanisms to gathering data were perfected, it was just
a matter of sending the data to the Server.
* the connection must be authorized, meaning that not just anyone
should be able to communicate with the server.

- In the same time, there are considerations prohibiting the application


to query the user for the proper credentials.
* the data must be protected from prying eyes, meaning that it must
be encrypted somehow.
* the size of the package must be as small as possible, due to possible
constraints on the network speed.
- the data must take the form of a string, as the webservice uses XML to
send it.
As we mentioned above the data should be protected while sending ,
and send in a seccured environment , so One way of doing an
authorized connection is to use an OAuth (Open Authorization). This
open standard provides a secure way to access a server resources on
the behalf of a resource owner .
This type of authentication is commonly used by major web sites like
Google, Facebook and Twitter , so the users dont have to worry about
their access credentials being compromised.
As a comparison between OpenID and OAuth the following diagrams highlight
their differences when a user does a authentication process.

OpenID Authentication example

OAuth example

1.2 Analyzing Data


The tests have allowed for
gathering a lot of data and it
showed things that were not
taken into account at the time
the application was designed.
The kernel method that I had
used to list the open files did not
only show files, but all the file
handles that were opened,
including devices, registry keys
and special internal kernel BaseNamedObjects
Even for an idle computer, the number of such kernel files, temporary
files or log files averages 700 , and can reach 4500 during intense usage.
1.3 Presenting information

A brilliant idea would be to Google the information. I mean, why not?


Isn't Google a search engine for web pages, files and images? I could
imitate the simple textual nature
of the Google query engine and
then allow the application to show
links to different related
information, But this is not
database centric, but more
focused on context and meaning.
SO ,
I created a web-query-interface
database centric, one that allows
to create customized queries on
multi dimensional data. Like
OnLine Analytical Processing .

THE END

You might also like