A Dual Framework and Algorithms for Targeted Data Delivery

normalpetsΛογισμικό & κατασκευή λογ/κού

4 Νοε 2013 (πριν από 3 χρόνια και 7 μήνες)

65 εμφανίσεις

A Dual Framework and Algorithms for Targeted Data Delivery


Abstract:

In this project, we develop a framework for comparing pull based solutions and present
dual optimization approaches. The first approach maximizes user utility while satisfying
constraint
s on the usage of system resources. The second approach satisfies the utility of user
profiles while minimizing the usage of system resources. We present an adaptive algorithm and
show how it can incorporate feedback to improve user utility with only a mod
erate increase in
resource utilization.

Architecture:





Existing System:

Much of the existing research in pull
-
based data delivery

casts the problem of data
delivery as
follows:

Given

some set of limited system resources, solve a (static)

Optimization

problem to maximize the utility of a set of user

profiles
. A more serious limitation is that most
prior work provides
static
solutions to the problem of maximizing utility subject to system
constraints, and cannot easily adapt to changes in source behavior
. Existing solutions typically
rely heavily on the existence of an accurate update model of sources. Unfortunately such models
may not be completely accurate. Further, source behavior may change over time.

The autonomy and diversity of Web and Grid resourc
es invariably means that any choice of
values for these parameters may not be appropriately chosen.



Disadvantages:



They do not attempt to determine an adequate level of resource consumption
appropriate to satisfy a set of profiles given the update patter
ns of servers.



E
stimating the needed system

resources is critical
.

Proposed System:

In this proposed system, we present a solution
fbSUP
that incorporates feedback and
dynamically changes the scheduling for probing. fbSUP assumes that the underlying model
is
accurate and utilizes feedback to adapt to stochastic variations.

We develop a framework for
comparing pull based solutions and present dual optimization approaches. The first approach
maximizes user utility while satisfying constraints on the usage of
system resources. The second
approach satisfies the utility of user profiles while minimizing the usage of system resources.

a
n

update model for pull
-
based monitoring is necessarily stochastic and therefore is subject to
variations, due to the model varia
nce.

Advantages:



fbSUP can satisfy user profiles and capture more updates compared to
existing policies



Increase

the utility of SUP by dynamically

changing monitoring schedules.

Algorithm:

fbSUP Adaptive algorithm:

Input


: User profile (Γ, α £ µ), update profile (π, ∞ £ ψ),

Frequency (∆)

Output: Notification (Ω) to user

Step 1: if exist (Γ= π £ µ, ψ) in ∆

Such that send Ω to user

Step 2: else don’t send

Step 3: if exist (α=∞£ µ, ψ) in ∆


Such that

send Ω to user

Step 4: else don’t send notification (Ω)


Modules:


1.

System resources constraint module:

The system resources that will be consumed to satisfy
user profiles
should be
determined by the specific profiles and the environment, while register us
er must select
specific requirements of profile. The challenge is to deliver relevant data to a client at the
desired time, while conserving system
resources. After enter login user must get only select
system resources.



2.

Profile Create

Module:

Admin

will

have

to
specific configurations of
resources.
The

large number of
resources
will be add in the admin.user can request the
targeted data

based on the system
resource. The use of profiles could lower the load on servers by accessing them only
when a user pr
ofile is satisfied. Our profile language

consists

of following category,
subcategory, title, author, description, author

and published date. The user can access the
profile with help of
content and author.


3.

Satisfy user Profile Module:

There

are many scena
rios where targeted data

delivery requires a proxy server to
efficiently monitor multiple

servers to satisfy user
profiles. While

update the profile
details, it

will check with Adaptive feedback of
user. If the modified profile details match with
feedback
then it will send the notification to user for satisfy the user requirement.

The large
number of resources and the specialized user profiles will challenge a proxy server to
actively and efficiently monitor resources and satisfy user profiles.


4.

Notificatio
n Module:


We can expect an update trace to have stochastic behavior, correlations, and bursts.
Any offline solution must be able to
adapt
to reflect the online changing behavior of sources.
Adaptations may include exploiting feedback from probes; changing

the model of updates is
notified to the
user. The period of time on which the notification is executable for some event
defines a possible “execution interval,”duing which monitoring should take place. That
means that the query part of a notification that

defines the monitoring task should be
executed.


System Requirements:

Hardware Requirements:

Processor


:

Intel Duel Core.

Hard Disk

:

60 GB.

Floppy Drive

:

1.44 Mb.

Monitor


:

LCD Colour.

Mouse


:

Optical Mouse.

RAM


:

512 Mb.


Software Requi
rements:

Operating system

:

Windows XP.

Coding Language

:

ASP.Net with C#

Data Base


:

SQL Server 2005




Software description



Introduction to .Net

.NET is Microsoft's new platform for building Web services. This article briefly explains core
elemen
ts of .NET to learn how enterprise applications are developed and run with this latest
technology.



What is .NET?

.NET is a new environment that provides ease to develop and run software applications. It offers
enterprise Web services and rich standard r
un
-
time services available to components written in
various programming languages.

Built on open Internet protocols and standards, .NET is basically a product strategy from
Microsoft. Note that. NET is not a programming language; it's a virtual
-
machine te
chnology with
a framework that separates presentation from computation and provides ability to call a variety
of Web services.

.NET features VB.NET and ASP.NET, a new version of ASP programming language, and C#
which is a brand new object
-
oriented programm
ing language.

Common Language Runtime

All .NET code ultimately runs within the Common Language Runtime (CLR) that acts as an
intermediary between languages similar to Java Virtual Machine (JVM). This means, a single
.NET application may consist of several
different languages. CLR offers two strong attributes:
language interoperability and language independence. Other important features of CLR include
garbage collection, exception handling, cross
-
language inheritance, debugging and side
-
by
-
side
execution of
different versions of the same .NET component.

Overview of the .NET Framework

The .NET Framework is a new computing platform that simplifies application development in
the highly distributed environment of the Internet. The .NET Framework is designed to f
ulfill the
following objectives:

To provide a consistent object
-
oriented programming environment whether object code is stored
and executed locally, executed locally but Internet
-
distributed, or executed remotely.

To provide a code
-
execution environment
that minimizes software deployment and versioning
conflicts.

To provide a code
-
execution environment that guarantees safe execution of code, including code
created by an unknown or semi
-
trusted third party.

To provide a code
-
execution environment that el
iminates the performance problems of scripted
or interpreted environments.

To make the developer experience consistent across widely varying types of applications, such as
Windows
-
based applications and Web
-
based applications.

To build all communication
on industry standards to ensure that code based on the .NET
Framework can integrate with any other code.

The .NET Framework has two main components: the common language runtime and the .NET
Framework class library. The common language runtime is the found
ation of the .NET
Framework. You can think of the runtime as an agent that manages code at execution time,
providing core services such as memory management, thread management, and remoting, while
also enforcing strict type safety and other forms of code a
ccuracy that ensure security and
robustness. In fact, the concept of code management is a fundamental principle of the runtime.
Code that targets the runtime is known as managed code, while code that does not target the
runtime is known as unmanaged code.
The class library, the other main component of the .NET
Framework, is a comprehensive, object
-
oriented collection of reusable types that you can use to
develop applications ranging from traditional command
-
line or graphical user interface (GUI)
application
s to applications based on the latest innovations provided by ASP.NET, such as Web
Forms and XML Web services.



The .NET Framework

Within a container, the .NET application is hosted that provides enterprise
-
class qualities of
service including transaction
, security, and messaging services.

.NET managed components are used to build the business layer of the .NET application. The
basic function of this layer includes performing business processing and data logic. It connects
with databases using Active Data

Objects (ADO). It ties up with existing systems using services
provided by Microsoft Host Integration Server 2000, such as the COM Transaction Integrator
(COM TI). Most importantly, it integrates with business partners using Web services
technologies incl
uding SOAP, UDDI, and WSDL. In the same way, business partners connect
with the .NET application via similar Web technologies.

NET is coupled tightly with the operating systems on which it runs (all of them are Windows
systems), and includes a full range o
f features and functionality, including the database, desktop
interface, browser, and everything in between. J2EE provides a more abstracted and loosely
integrated environment than .NET, but it's one that runs on virtually any hardware and operating
system

platform. .NET integrates Web services more tightly with other Microsoft products. J2EE
developers must, by definition, employ a broader approach to integrate with other comparable
technologies, often from different vendors. .NET is available on Windows o
nly, which requires
the hardware to be Intel
-
based. J2EE is available on multiple platforms, including a broader
range of hardware.

Microsoft takes the .NET architecture a step, basing a large part of it on XML and Web services.
This means you need to rec
ode your existing Microsoft applications to move them to .NET.


ASP.NET Technology


Web Forms pages are built with ASP.NET technology. ASP.NET is a unified Web platform that
provides all the services necessary for you to build enterprise
-
class application
s.

ASP.NET, in turn, is built on the .NET Framework, so the entire framework is available to any
ASP.NET application. Your applications can be authored in any language compatible with the
common language runtime, including Microsoft Visual Basic, Visual C#
, and JScript .NET. The
following sections provide an overview of the features offered by ASP.NET.

ASP.NET Page Framework and the Web Forms Page


The ASP.NET page framework is a programming framework that runs on a Web server to
dynamically produce and man
age Web Forms pages. In Visual Studio, Web Forms provides a
forms designer, editor, controls, and debugging, which together allow you to rapidly build
server
-
based, programmable user interfaces for browsers and Web client devices.

Web Forms pages run on an
y browser or client device. However, you can design your Web
Forms page to target a specific browser, such as Microsoft®

Internet Explorer 5, and take
advantage of the features of a specific browser or client device. ASP.NET supports mobile
controls for We
b
-
enabled devices such as cellular phones, handheld computers, and personal
digital assistants (PDAs).

The ASP.NET page framework creates an abstraction of the traditional client
-
server Web
interaction so that you can program your application using tradit
ional methods and tools that
support rapid application development (RAD) and object
-
oriented programming (OOP).

Within Web Forms pages you can work with HTML elements using properties, methods, and
events. The ASP.NET page framework removes the implementa
tion details of the separation of
client and server inherent in Web
-
based applications by presenting a unified model for
responding to client events in code that runs at the server. The framework also automatically
maintains the state of a page and the con
trols on that page during the page processing life cycle


Web Applications in Visual Studio


Visual Studio .NET allows you to create applications that leverage the power of the World Wide
Web. This includes everything from a traditional Web site that serve
s HTML pages, to fully
featured business applications that run on an intranet or the Internet, to sophisticated business
-
to
-
business applications providing Web
-
based components that can exchange data using XML.

This topic provides an overview of the types
of Web applications you can create in Visual
Studio, how they relate to one another and to other Visual Studio technologies, and suggestions
about where to learn more about the types of Web applications you want to create.


Where Does Visual Studio Fit In?


As with any .NET application, if you have the .NET Framework, you can create applications
using text editors, a command
-
line compiler, and other simple tools. You can copy your files
manually to IIS to deploy the application.

Alternatively, you can use V
isual Studio. When you use Visual Studio to create Web
applications, you are creating essentially the same application that you could create by hand.
That is, Visual Studio does not create a different kind of Web application; the end result is still
an Web

application.

The advantage of using Visual Studio is that it provides tools that make application development
much faster, easier, and more reliable. These tools include:

Visual designers for Web pages with drag
-
and
-
drop controls and code (HTML) views wi
th
syntax checking.

Code
-
aware editors that include statement completion, syntax checking, and other IntelliSense
features.

Integrated compilation and debugging.

Project management facilities for creating and managing application files, including deploy
ment
to local or remote servers.

If you have used Visual Studio before, these kinds of features will seem familiar, because they
are similar to features that you get for creating applications in previous versions of Visual Basic
and Visual C++. With Visua
l Studio .NET you can use these kind of features to create Web
applications.

Elements of Web Applications

Creating Web applications involves working with many of the same elements you use in any
desktop or client
-
server application. These include:

Project

management features When creating a Web application, you need to keep track of the
files you need, which ones need to be compiled, and which need to be deployed.

User interface Your application typically presents information to users; in an
ASP.NET

Web
a
pplication, the user interface is presented in Web Forms pages, which send output to a browser.
Optionally, you can create output tailored for mobile devices or other Web appliances.

Components Many applications include reusable elements containing code t
o perform specific
tasks. In Web applications, you can create these components as XML Web services, which
makes them callable across the Web from a Web application, another XML Web service, or a
Windows Form, for example.

Data Most applications require so
me form of data access. In Web applications, you can use
ADO.NET, the data services that are part of the .NET Framework.

Security, performance, and other infrastructure features As in any application, you must
implement security to prevent unauthorized us
e, test and debug the application, tune its
performance, and perform other tasks not directly related to the application's primary function.


What Web Forms Pages Help You Accomplish


Web application programming presents challenges that do not typically a
rise when programming
traditional client
-
based applications. Among the challenges are:

Implementing a rich Web user interface. A user interface with a complex layout, a large amount
of dynamic content, and full
-
featured user
-
interactive objects can be dif
ficult and tedious to
design and implement using basic HTML facilities. It is particularly difficult to create a rich user
interface for applications likely to run on many different browser and client device platforms.

Separation of client and server. In
a Web application, the client (browser) and server are different
programs often running on different computers (and even on different operating systems).
Consequently, the two halves of the application share very little information; they can
communicate, b
ut typically exchange only small chunks of simple information.

Stateless execution. When a Web server receives a request for a page, it finds the page, processes
it, sends it to the browser, and then, effectively, discards all page information. If the use
r requests
the same page again, the server repeats the entire sequence, reprocessing the page from scratch.
Put another way, a server has no memory of pages that it has processed. Therefore, if an
application needs to maintain information about a page, thi
s becomes a problem that has to be
solved in application code.

Unknown client capabilities. In many cases, Web applications are accessible to many users using
different browsers. Browsers have different capabilities, making it difficult to create an
appli
cation that will run equally well on all of them.

Complications with data access. Reading from and writing to a data source in a traditional Web
applications can be complicated and resource
-
intensive.

Complications with scalability. In many cases Web app
lications designed with existing methods
fail to meet scalability goals due to the lack of compatibility between the various components of
the application. This is often the single failure point for applications under a heavy growth cycle.

Meeting these c
hallenges for Web applications can require substantial time and effort. Web
Forms pages and the ASP.NET page framework address these challenges in the following ways:

Intuitive, consistent object model. The ASP.NET page framework presents an object model
that
allows you to think of your forms as a unit, not as separate client and server pieces. In this
model, you can program the form in a more intuitive way than in traditional Web applications,
including the ability to set properties for form elements and
respond to events. In addition,
ASP.NET server controls are an abstraction from the physical contents of an HTML page and
from the direct interaction between browser and server. In general, you can use server controls
the way you might work with controls i
n a client application and not have to think about how to
create the HTML to present and process the controls and their contents.

Event
-
driven programming model. Web Forms pages bring to Web applications the familiar
model of writing event handlers for ev
ents that occur on either the client or server. The
ASP.NET page framework abstracts this model in such a way that the underlying mechanism of
capturing an event on the client, transmitting it to the server, and calling the appropriate method
is all automa
tic and invisible to the implementer. The result is a clear, easily written code
structure that supports event
-
driven development.

Intuitive state management. The ASP.NET page framework automatically handles the task of
maintaining the state of your form
and its controls, and it provides you with explicit ways to
maintain the state of application
-
specific information. This is accomplished without heavy use of
server resources and can be implemented with or without sending cookies to the browser.

Browser
-
i
ndependent applications. The ASP.NET page framework provides for creating all
application logic on the server, eliminating the need to explicitly code for differences in
browsers. However, it still allows you to automatically take advantage of browser
-
spec
ific
features by writing client
-
side code to provide improved performance and a richer client
experience.

.NET Framework common language runtime support. The ASP.NET page framework is a
technology of ASP.NET. ASP.NET is built on the .NET Framework, so the

entire framework is
available to any ASP.NET application. Your applications can be authored in any language
compatible with the runtime, including Microsoft Visual Basic, Visual C#, and JScript .NET. In
addition, data access is simplified using the data a
ccess infrastructure provided by the .NET
Framework, including ADO.NET.

.NET Framework scalable server performance. The ASP.NET page framework allows you to
scale your Web application from one computer with a single processor to a multi
-
computer
"Web farm
" cleanly and without complicated changes to the application's logic.


Web Application Data Access


Most Web applications involve at least some level of access to data. Does not directly include
data access facilities. Instead, Web applications use ADO.NE
T data services.

ADO.NET provides a complete framework for accessing and managing data from a variety of
sources, including databases and XML files or streams. ADO.NET includes
providers


classes
that allow you to connect to data sources, execute commands
, and read results. You can
optionally keep data in a
dataset
, which is a disconnected, in
-
memory cache.

Data access in Web applications, whether in a Web Forms page or an XML Web service,
introduces special challenges:

Statelessness The components of Web

applications usually do not preserve state, which makes it
impractical to maintain live connections to a data source (or other resources).

Scalability Because Web applications can have user loads that vary substantially over short
periods of time, data a
ccess has to be designed with scalability in mind.


Introduction to RDBMS


A relational database uses to store information. For example, we might want to track the
products our company manufactures. In a relational database, we create several tables to st
ore
different piece of information about the products, such as an inventory table, a manufacturing
table and a shipping table.

Each one of these tables includes a column for the product’s part number. if several table contain
the same column with the same

information, then the information in one table can refer to the
information in another table.

Because the information in all of the table is connected by this common column, we can easily
find out how much product we have on hand, the product’s manufactur
ing time, when a product
shipped, and when and for what price the product was billed.


SQL
-
Server
-
2005


SQL
-
Server
-
2005is a relational database management system (RDBMS). A relational database is
an integrated collection of related tables and other databas
e objects. The data concerning the
structure of the database, often called the metadata is also stored in the database. The body of
programs that allows the user to manipulate (store, modify retrieve etc.) the database is called the
management system for t
he database (DBMS).

SQL
-
Server
-
2005is the most widely used database management system in the world. It is an
object
-
relational DBMS and runs on virtually every kind of computer, from PCs and
Macintoshes, to minicomputers and giant mainframes. It is designe
d to meet the requirements of
the network computing and to provide reliabeand source data management for applications
ranging from small departmental applications to high
-
volume on
-
line transaction system or
query
-
intensive data warehouse applications.

SQ
L
-
Server
-
2005tables have two main components:

Columns

Each column represents some attribute of the object modeled by the table, such as a parts table
having columns for ID, color, and weight.

Rows


Each row represents an individual occurrence of t
he object modeled by the table. Foe ex, the
parts table would have one row for each part carried by the company.

Because each column represents one attribute of an object, the data in each occurrence of the
column is similar. One of the properties of a
column is called its data type, which defines the
type of data the column can hold. Oracle 9i


Users can also create their own user
-
defined data types.



Structured Query Language (SQL)


To work with data in a database, you must use a set of commands
and statements (language)
defined by the DBMS software. There are several different languages that can be used with
relational databases; the most common is SQL. Standards for SQL have been defined by both the
American National Standards Institute (ANSI) a
nd the International Standards Organization
(ISO).



SQL
-
Server
-
2005Features


Microsoft SQL
-
Server
-
2005supports a set of features that result in the following benefits:

Ease of installation, deployment, and use

SQL
-
Server
-
2005includes a set of administr
ative and development tools that improve your
ability to install, deploy, manage, and use SQL
-
Server
-
2005across several sites.

Scalability

The same database engine can be used across platforms ranging from laptop computers running
Microsoft Windows 95/98

to large, multiprocessor servers running Microsoft Windows NT,
Enterprise Edition.

Data warehousing

SQL
-
Server
-
2005includes tools for extracting and analyzing summary data for online analytical
processing (OLAP). SQL
-
Server
-
2005also includes tools for v
isually designing databases and
analyzing data using English
-
based questions.

System integration with other server software

SQL
-
Server
-
2005integrates with e
-
mail, the Internet, and Windows.




System Design


Input Design


Input is one of the most expensi
ve phases of the operation of a computerized system. The input
data are the lifeblood of the system and has to be analyzed designed with almost care and
consideration. Input system design features can ensure the reliability of the system and generate
corre
ct reports from the accurate data. It also determines whether the user can interact with the
system. Different type of problem occurs with the system usually be traced back to faulty input
design method. The input data is validated, edited organized in an
acceptable form by the system
being processed.


In the proposed system, the input design collects all fields about that system and stores into a
table format. Each and every input was checked for its validity. Wrong message will be
displayed in the screen
when any invalid data was given as the input in the page while entering
data, operations need to know the following


Allocated space for each field.

The field sequence, which must in the source document.

The format in which data field were entered.

The nam
e of the item for the specified code.




Output Design

Computer output is most important and direct source of information to the user. Efficient and
intelligible output design should improve the system’s relationship with the user and help in
decision maki
ng. The nature of processing and procedures related to the system were classified
and gives the output results.


Why the outputs are required are,

For re
-
input to the computer for being connected with other data and further processing.

For permanent storag
e.



While designing the output, the type of the output, concern format, frequency responses
etc have been taken into consideration.



The output that is report plays a major role in the system. Report are printed periodically
in order to help the higher
authorities of the company to make decisions and to get overall
information about the system.























System Testing

Unit Testing



Unit testing involves the design of test cases that validate that the internal program logic is
functioning pr
operly, and that program inputs produce valid outputs. All decision branches and
internal code flow should be validated. It is the testing of individual software units of the
application .it is done after the completion of an individual unit before integra
tion. This is a
structural testing, that relies on knowledge of its construction and is invasive. Unit tests perform
basic tests at component level and test a specific business process, application, and/or system
configuration. Unit tests ensure that each
unique path of a business process performs accurately
to the documented specifications and contains clearly defined inputs and expected results.


Integration Testing



Integration tests are designed to test integrated software components to determine if th
ey
actually run as one program. Testing is event driven and is more concerned with the basic
outcome of screens or fields. Integration tests demonstrate that although the components were
individually satisfaction, as shown by successfully unit testing, th
e combination of components is
correct and consistent. Integration testing is specifically aimed at exposing the problems that
arise from the combination of components.


Verification and Validation

Data validation checking is done to see whether the corr
esponding entries made in different
tables are done correctly. Proper validation checks are done in case of insertion and updating of
tables, in order to see that no duplication of data has occurred. If any such case arises proper
warning message will be d
isplayed. Double configuration is done before the administrator
deletes a data in order to get positive results and to see that no data have deleted by accident.


White box testing is a test case design method that uses the control structure of other proce
dural
designs to divide the test cases. Test cases derive that:


Guarantee that all independent parts within a module have been exercised at least once.

Exercise all loops at their boundaries and within their operational bounds.

Exercise internal data stru
cture to ensure their validity.


After all these each module was tested and the tested module was linked and integration testing
was carried out.


SYSTEM STUDY:


FEASIBILITY STUDY:

The feasibility of the project is analyzed in this phase and business propo
sal is put forth
with a very general plan for the project and some cost estimates. During system analysis the
feasibility study of the proposed system is to be carried out. This is to ensure that the proposed
system is not a burden to the company. For fea
sibility analysis, some understanding of the major
requirements for the system is essential.

Three key considerations involved in the feasibility analysis are




ECONOMICAL FEASIBILITY



TECHNICAL FEASIBILITY



SOCIAL FEASIBILITY


ECONOMICAL FEASIBILITY:



This study is carried out to check the economic impact that the system will have on
the organization. The amount of fund that the company can pour into the research and
development of the system is limited. The expenditures must be justified.

Thus the developed
system as well within the budget and this was achieved because most of the technologies used
are freely available. Only the customized products had to be purchased.




TECHNICAL FEASIBILITY:

This study is carried out to check the techn
ical feasibility, that is, the technical
requirements of the system. Any system developed must not have a high demand on the available
technical resources. This will lead to high demands on the available technical resources. This
will lead to high demands
being placed on the client. The developed system must have a modest
requirement, as only minimal or null changes are required for implementing this system.


SOCIAL FEASIBILITY:



The aspect of study is to
check the level of acceptance of the system by the user. This
includes the process of training the user to use the system efficiently. The user must not feel
threatened by the system, instead must accept it as a necessity. The level of acceptance by the
us
ers solely depends on the methods that are employed to educate the user about the system and
to make him familiar with it. His level of confidence must be raised so that he is also able to
make some constructive criticism, which is welcomed, as he is the f
inal user of the system.