Académique Documents
Professionnel Documents
Culture Documents
1
Ad Agency
ABSTRACT
The main aim of this project is to provide advertisement details like
advertisement cost in various channels. Depending upon the budget the various
channels can allot different advertisements. Here the total front end is developed using
Asp.Net and backend is developed using SQ server.
!f an agenc" does not communicate or rela" its client#s goals and
creative $ishes properl" problems can occur. %ost &ull'Service Agencies $ork on a
combination of fee'based and commission based compensation. The fee is paid b" the
entit" for $hich the marketing is being done. Ho$ ever an agenc" ma" have better
negotiating po$ers than "our compan" and save "ou more mone" in the long run
an"$a"s. There are far more advantages to having the right advertising agenc" than
not
An advertising agency or ad agency is a (service business) dedicated to
creating* planning and handling Advertising +and sometimes other forms of promotion
for its clients. An ad agenc" is independent from the client and provides an outside
point of vie$ to the effort of selling the client,s products or services. An agenc" can
also handle overall marketing and branding strategies and Sales -romotion for its
clients.
Modules:
This project involved mainl" &our modules.
Registration
Administrator
Budget
.
Ad Agency
Budget List
Modules Description:
Registration:
!n this module he/she has to register himself/herself $ith the personal
details and get the ogin id. After getting the login id he/she has to specif" Ad.
0e1uirements of the kind of Ad he/she has to advertise on behalf of his/her compan"
Administrator:
Administrator should be able to block fraudulent users from using the s"stem.
Admin should be able to add more categories and merge categories.
Normal User:
!n this %odule users can enter into different channels of packages
like short time period or long time. The" can enter into ne$ schemes provided b" ad
agenc". Also the" can upload the videos of their compan" for advertising.
Budget:
Ne$ user#s budget is registered here. The" can 2udget on the advertising ad
$ith the ad agenc" in this module.
Budgets List:
According to budget the advertisements are allotted for specific period.
Here time period the agenc" $ill follo$ up their product is specified.
3
Ad Agency
INDEX
S. No Contents
1. Introduction
2. Analysis
2.1 System Analysis
2.2 System Specification
3. Design Approach
3.1 Introduction to Design
3.2 UML Diagrams
3.3 Dataflow Diagrams
3.4 E-R Diagrams
4. Project Modules
5. Implementation
5.1 Concepts and Technologies
5.2 Testing
5.2.1 Test Cases
6. Output Screens
7. Conclusion
4
Ad Agency
8. Future Enhancements
9. Bibliography
5
Ad Agency
INTRODUCTION
6e don#t sell a 7bo8ed# product. 9ach s"stem $e create for our clients is driven b"
their e8act speci:cations and internal processes. Too often* agencies change their
creative ;o$ and processes to :t technolog". 6e believe it should be the other $a"
around.
An advertising agency or ad agency is a (service business) dedicated to
creating* planning and handling Advertising +and sometimes other forms of promotion
for its clients. An ad agenc" is independent from the client and provides an outside
point of vie$ to the effort of selling the client,s products or services. An agenc" can
also handle overall marketing and branding strategies and Sales -romotion for its
clients.
!n order to avoid the above problem this project is to provide
advertisement details like advertisement cost in various channels. Depending upon the
budget the various channels can allot different advertisements. Here the total front end
is developed using Asp.Net and backend is developed using S1l server.
<
Ad Agency
=
Ad Agency
ANALYSIS
System Analysis:
Existing System:
!f an agenc" does not communicate or rela" its client#s goals and creative
$ishes properl" problems can occur. %ost &ull'Service Agencies $ork on a
combination of fee'based and commission based compensation. The fee is paid b" the
entit" for $hich the marketing is being done. Ho$ ever an agenc" ma" have better
negotiating po$ers than "our compan" and save "ou more mone" in the long run
an"$a"s. There are far more advantages to having the right advertising agenc" than
not.
Proposed System
!n order to avoid the above problem this project is to provide
advertisement details like advertisement cost in various channels. Depending upon the
budget the various channels can allot different advertisements. Here the total front end
is developed using Asp.Net and backend is developed using SQ server.
Objective of the System:
>
Ad Agency
An advertising agency or ad agency is a (service business) dedicated to
creating* planning and handling Advertising +and sometimes other forms of promotion
for its clients. An ad agenc" is independent from the client and provides an outside
point of vie$ to the effort of selling the client,s products or services. An agenc" can
also handle overall marketing and branding strategies and Sales -romotion for its
clients.
System Specifications:
Hardware Requirements
-entium'!? +-rocessor@.
.5< %2 or 51. %2 0am
51. A2 Bache %emor"
Hard disk 1C D2
%icrosoft Bompatible 1C1 or more Ae" 2oard
Software Requirements
Web Technologies : ASP.NET 2.0
Language : C
!atabase : S"L SE#$E# 200%
Web Server : &&S
'(erating Syste) : W&N!'WS *P
E
Ad Agency
1C
Design
Ad Agency
DESIGN
Introduction:
Design is the first step in the development phase for an"
techni1ues and principles for the purpose of defining a device* a process or s"stem in
sufficient detail to permit its ph"sical realiFation.
Gnce the soft$are re1uirements have been anal"Fed and
specified the soft$are design involves three technical activities ' design* coding*
implementation and testing that are re1uired to build and verif" the soft$are.
The design activities are of main importance in this phase*
because in this activit"* decisions ultimatel" affecting the success of the soft$are
11
Ad Agency
implementation and its ease of maintenance are made. These decisions have the final
bearing upon reliabilit" and maintainabilit" of the s"stem. Design is the onl" $a" to
accuratel" translate the customer#s re1uirements into finished soft$are or a s"stem.
Design is the place $here 1ualit" is fostered in
development. Soft$are design is a process through $hich re1uirements are translated
into a representation of soft$are. Soft$are design is conducted in t$o steps.
-reliminar" design is concerned $ith the transformation of re1uirements into data.
UML Diagrams:
Actor:
A coherent set of roles that users of use cases pla" $hen interacting $ith the use Hcases.
Use case:
A description of se1uence of actions* including variants* that a
s"stem performs that "ields an observable result of value of an actor.
1.
Ad Agency
I% stands for Inified %odeling anguage. I% is a language for specif"ing*
visualiFing and documenting the s"stem. This is the step $hile developing an" product
after anal"sis. The goal from this is to produce a model of the entities involved in the
project $hich later need to be built. The representation of the entities that are to be
used in the product being developed need to be designed.
There are various kinds of methods in soft$are designJ
The" are as follo$sJ
Ise case Diagram
Se1uence Diagram
Bollaboration Diagram
Activit" Diagram
State chat Diagram
Use case Diagrams:
Ise case diagrams model behavior $ithin a s"stem and helps the developers
understand of $hat the user re1uire. The stick man represents $hat#s called an actor.
Ise case diagram can be useful for getting an overall vie$ of the s"stem and
clarif"ing that can do and more importantl" $hat the" can#t do.
Ise case diagram consists of use cases and actors and sho$s the interaction bet$een
the use case and actors.
The purpose is to sho$ the interactions bet$een the use case and actor.
13
Ad Agency
To represent the s"stem re1uirements from user#s perspective.
An actor could be the end'user of the s"stem or an e8ternal s"stem.
Use case Diagram
A Ise case is a description of set of se1uence of actions. Draphicall" it is rendered as
an ellipse $ith solid line including onl" its name. Ise case diagram is a behavioral
diagram that sho$s a set of use cases and actors and their relationship. !t is an
association bet$een the use cases and actors. An actor represents a real'$orld object.
-rimar" Actor K Sender* Secondar" Actor 0eceiver.
14
Ad Agency
%aintenan channels
and budget
ogin
Ad Ne$ !nformation
Select Bhanneels
and 2udget
Admin
Iser
Sequence Diagram
Se1uence diagram and collaboration diagram are called !NT90ABT!GN
D!AD0A%S. An interaction diagram sho$s an interaction* consisting of set of objects
and their relationship including the messages that ma" be dispatched among them.
15
Ad Agency
A se1uence diagram is an introduction that empathiFes the time ordering of messages.
Draphicall" a se1uence diagram is a table that sho$s objects arranged along the L'a8is
and messages ordered in increasing time along the M'a8is.
Admin
Iser
ogin
!nformation
Bhannels
2udget
-ermission
Bhecking
?ie$
!nformation
Add
!nformation
Select 2udget
Bhecking
Select
Bhannel
Add Bhannel
Add 2udget
-ermission
Add Bhannel
Activity Diagram
1<
Ad Agency
0egister
!nformations
Iser
Admin
Bhannels 2udgets
ogout
DATA FLOW DIAGRAMS :
1=
Ad Agency
The D&D takes an input'process'output vie$ of a s"stem i.e. data objects flo$ into the
soft$are* are transformed b" processing elements* and resultant data objects flo$ out
of the soft$are.
Data objects represented b" labeled arro$s and transformation are represented
b" circles also called as bubbles. D&D is presented in a hierarchical fashion i.e. the
first data flo$ model represents the s"stem as a $hole. Subse1uent D&D refine the
conte8t diagram +level C D&D@* providing increasing details $ith each subse1uent
level.
The D&D enables the soft$are engineer to develop models of the information
domain N functional domain at the same time. As the D&D is refined into greater
levels of details* the anal"st performs an implicit functional decomposition of the
s"stem. At the same time* the D&D refinement results in a corresponding refinement of
the data as it moves through the processes that embod" the applications.
A conte8t'level D&D for the s"stem the primar" e8ternal entities produce
information for use b" the s"stem and consume information generated b" the s"stem.
The labeled arro$ represents data objects or object hierarch".
RULES FOR DFD:
1>
Ad Agency
&i8 the scope of the s"stem b" means of conte8t diagrams.
GrganiFe the D&D so that the main se1uence of the actions
0eads left to right and top to bottom.
!dentif" all inputs and outputs.
!dentif" and label each process internal to the s"stem $ith 0ounded circles.
A process is re1uired for all the data transformation and Transfers. Therefore* never
connect a data store to a data Source or the destinations or another data store $ith just a
Data flo$ arro$.
Do not indicate hard$are and ignore control information.
%ake sure the names of the processes accuratel" conve" ever"thing the process is
done.
There must not be unnamed process.
!ndicate e8ternal sources and destinations of the data* $ith S1uares.
Number each occurrence of repeated e8ternal entities.
!dentif" all data flo$s for each process step* e8cept simple 0ecord retrievals.
abel data flo$ on each arro$.
Ise details flo$ on each arro$.
Ise the details flo$ arro$ to indicate data movements.
1E
Ad Agency
E-R Diagrams:
The 9ntit"'0elationship +90@ model $as originall" proposed b" -eter in 1E=<
OBhen=<P as a $a" to unif" the net$ork and relational database vie$s. Simpl" stated
the 90 model is a conceptual data model that vie$s the real $orld as entities and
relationships. A basic component of the model is the 9ntit"'0elationship diagram
$hich is used to visuall" represent data objects. Since Bhen $rote his paper the model
has been e8tended and toda" it is commonl" used for database design &or the database
designer* the utilit" of the 90 model isJ
!t maps $ell to the relational model. The constructs used in the 90 model can easil"
be transformed into relational tables.
!t is simple and eas" to understand $ith a minimum of training. Therefore* the model
can be used b" the database designer to communicate the design to the end user.
!n addition* the model can be used as a design plan b" the database developer to
implement a data model in specific database management soft$are.
.C
Ad Agency
Connectivity and Cardinality
The basic t"pes of connectivit" for relations areJ one'to'one* one'to'man"* and man"'
to'man". A one-to-one +1J1@ relationship is $hen at most one instance of a entit" A is
associated $ith one instance of entit" 2. &or e8ample* Qemplo"ees in the compan" are
each assigned their o$n office. &or each emplo"ee there e8ists a uni1ue office and for
each office there e8ists a uni1ue emplo"ee.
A one-to-many +1JN@ relationships is $hen for one instance of entit" A* there are Fero*
one* or man" instances of entit" 2* but for one instance of entit" 2* there is onl" one
instance of entit" A. An e8ample of a 1JN relationships is
a department has man" emplo"ees
9ach emplo"ee is assigned to one department
A many-to-many +%JN@ relationship* sometimes called non'specific* is $hen for one
instance of entit" A* there are Fero* one* or man" instances of entit" 2 and for one
instance of entit" 2 there are Fero* one* or man" instances of entit" A. The
connectivit" of a relationship describes the mapping of associated
.1
Ad Agency
ER Notation
There is no standard for representing data objects in 90 diagrams. 9ach
modeling methodolog" uses its o$n notation. The original notation used b" Bhen is
$idel" used in academics te8ts and journals but rarel" seen in either BAS9 tools or
publications b" non'academics. Toda"* there are a number of notations usedR among
the more common are 2achman* cro$,s foot* and !D9&!L.
All notational st"les represent entities as rectangular bo8es and relationships as
lines connecting bo8es. 9ach st"le uses a special set of s"mbols to represent the
cardinalit" of a connection. The notation used in this document is from %artin. The
s"mbols used for the basic 90 constructs areJ
Entities are represented b" labeled rectangles. The label is the name of the entit". 9ntit"
names should be singular nouns.
#elationshi(s are represented b" a solid line connecting t$o entities. The name of the
relationship is $ritten above the line. 0elationship names should be verbs
Attributes* $hen included* are listed inside the entit" rectangle. Attributes $hich are
identifiers are underlined. Attribute names should be singular nouns.
Cardinality of man" is represented b" a line ending in a cro$,s foot. !f the cro$,s foot is
omitted* the cardinalit" is one.
E+istence is represented b" placing a circle or a perpendicular bar on the line. %andator"
e8istence is sho$n b" the bar +looks like a 1@ ne8t to the entit" for an instance is re1uired.
Gptional e8istence is sho$n b" placing a circle ne8t to the entit" that is optional
..
Ad Agency
.3
Ad Agency
PROJECT MODULES
Administrator
Registration
Budget
Budget List
MODULE DESCRIPTION
Name of the module 1: Ad)inistrator
Description:
Administrator should be able to block fraudulent users from using the s"stem.
Admin should be able to add more channels and timing#s.
Sub modules:
Login page
Change password
Isers N Ads
Bhannel Timings
Iser Details
?ie$ ?ideos
Registration Page:
!n this sub module $e add the details of the user like user name* contact
no* email id* pass$ord and report b" taking the primar" constraint user id. And it also
adds these details in database.
Login Page:
.4
Ad Agency
!n this sub module the user gives his login and pass$ord to enter. !f he is
valid he enters into resume $iFard. !f he is not valid he it $ants valid.
Forgot Password:
!f the user forgot his pass$ord* he enter into forget pass$ord page there b"
giving details he get his pass$ord.
Change Password:
!f the user $ants to change his pass$ord he can change his pass$ord b"
giving some details
Users & Ads
Admin has the rights to see users and their ad#s and has a right to accept or
reject it.
Channel Timings
He see the timing that user had re1uested to sho$ his ad according to the
channel.
User Details
He can check the user details if he $ant.
View Videos
He can do$nload and vie$ the video#s that user added to sho$ in channel
Name of the module -2: User
.5
Ad Agency
Description:
6hen the user login t"pe#s of ads appear he can choose this t"pe. Then he
gets ne$ ad information form. He fills that form and chooses the budget and timing#s
Sub modules:
Slides
Animation
Videos
Name of the module -3: ,-!.ET
Description:
Ne$ user#s budget is registered here. The" can 2udget on the advertising ad
$ith the ad agenc" in this module.
Name of the module -4: ,udget List
Description:
According to budget the advertisements are allotted for specific period.Here
time period the agenc" $ill follo$ up their product is specified
.<
Ad Agency
.=
Ad Agency
.>
Ad Agency
.E
Ad Agency
Overview of Technologies Used
3.1 Front End Technology
Microsoft .NET Framework
The .N9T &rame$ork is a ne$ computing platform that simplifies application
development in the highl" distributed environment of the !nternet. The .N9T
&rame$ork is designed to fulfill the follo$ing objectivesJ
To provide a consistent object'oriented programming environment $hether object
code is stored and e8ecuted locall"* e8ecuted locall" but !nternet'distributed* or
e8ecuted remotel".
To provide a code'e8ecution environment that minimiFes soft$are deplo"ment and
versioning conflicts.
To provide a code'e8ecution environment that guarantees safe e8ecution of code*
including code created b" an unkno$n or semi'trusted third part".
To provide a code'e8ecution environment that eliminates the performance problems
of scripted or interpreted environments.
To make the developer e8perience consistent across $idel" var"ing t"pes of
applications* such as 6indo$s'based applications and 6eb'based applications.
To build all communication on industr" standards to ensure that code based on the
.N9T &rame$ork can integrate $ith an" other code.
The .N9T &rame$ork has t$o main componentsJ the common language runtime and
the .N9T &rame$ork class librar". The common language runtime is the foundation of
the .N9T &rame$ork. Mou can think of the runtime as an agent that manages code at
e8ecution time* providing core services such as memor" management* thread
management* and remoting* $hile also enforcing strict t"pe safet" and other forms of
code accurac" that ensure securit" and robustness. !n fact* the concept of code
management is a fundamental principle of the runtime. Bode that targets the runtime is
3C
Ad Agency
kno$n as managed code* $hile code that does not target the runtime is kno$n as
unmanaged code.
The class librar"* the other main component of the .N9T &rame$ork* is a
comprehensive* object'oriented collection of reusable t"pes that "ou can use to
develop applications ranging from traditional command'line or graphical user interface
+DI!@ applications to applications based on the latest innovations provided b"
AS-.N9T* such as 6eb &orms and L% 6eb services.
The .N9T &rame$ork can be hosted b" unmanaged components that load the common
language runtime into their processes and initiate the e8ecution of managed code*
thereb" creating a soft$are environment that can e8ploit both managed and
unmanaged features. The .N9T &rame$ork not onl" provides several runtime hosts*
but also supports the development of third'part" runtime hosts.
&or e8ample* AS-.N9T hosts the runtime to provide a scalable* server'side
environment for managed code. AS-.N9T $orks directl" $ith the runtime to enable
6eb &orms applications and L% 6eb services* both of $hich are discussed later in
this topic.
!nternet 98plorer is an e8ample of an unmanaged application that hosts the runtime +in
the form of a %!%9 t"pe e8tension@. Ising !nternet 98plorer to host the runtime
enables "ou to embed managed components or 6indo$s &orms controls in HT%
documents. Hosting the runtime in this $a" makes managed mobile code +similar to
%icrosoftS ActiveLS controls@ possible* but $ith significant improvements that onl"
managed code can offer* such as semi'trusted e8ecution and secure isolated file
storage.
The follo$ing illustration sho$s the relationship of the common language runtime and
the class librar" to "our applications and to the overall s"stem. The illustration also
sho$s ho$ managed code operates $ithin a larger architecture.
31
Ad Agency
Features of the Common Language Runtime
The common language runtime manages memor"* thread e8ecution* code e8ecution*
code safet" verification* compilation* and other s"stem services. These features are
intrinsic to the managed code that runs on the common language runtime.
6ith regards to securit"* managed components are a$arded var"ing degrees of trust*
depending on a number of factors that include their origin +such as the !nternet*
enterprise net$ork* or local computer@. This means that a managed component might
or might not be able to perform file'access operations* registr"'access operations* or
other sensitive functions* even if it is being used in the same active application.
The runtime enforces code access securit". &or e8ample* users can trust that an
e8ecutable embedded in a 6eb page can pla" an animation on screen or sing a song*
but cannot access their personal data* file s"stem* or net$ork. The securit" features of
the runtime thus enable legitimate !nternet'deplo"ed soft$are to be e8ceptionall"
featuring rich.
The runtime also enforces code robustness b" implementing a strict t"pe' and code'
verification infrastructure called the common t"pe s"stem +BTS@. The BTS ensures
that all managed code is self'describing. The various %icrosoft and third'part"
language compilers generate managed code that conforms to the BTS. This means that
managed code can consume other managed t"pes and instances* $hile strictl"
enforcing t"pe fidelit" and t"pe safet".
!n addition* the managed environment of the runtime eliminates man" common
soft$are issues. &or e8ample* the runtime automaticall" handles object la"out and
manages references to objects* releasing them $hen the" are no longer being used.
3.
Ad Agency
This automatic memor" management resolves the t$o most common application
errors* memor" leaks and invalid memor" references.
The runtime also accelerates developer productivit". &or e8ample* programmers can
$rite applications in their development language of choice* "et take full advantage of
the runtime* the class librar"* and components $ritten in other languages b" other
developers. An" compiler vendor $ho chooses to target the runtime can do so.
anguage compilers that target the .N9T &rame$ork make the features of the .N9T
&rame$ork available to e8isting code $ritten in that language* greatl" easing the
migration process for e8isting applications.
6hile the runtime is designed for the soft$are of the future* it also supports soft$are
of toda" and "esterda". !nteroperabilit" bet$een managed and unmanaged code
enables developers to continue to use necessar" BG% components and Ds.
The runtime is designed to enhance performance. Although the common language
runtime provides man" standard runtime services* managed code is never interpreted.
A feature called just'in'time +T!T@ compiling enables all managed code to run in the
native machine language of the s"stem on $hich it is e8ecuting. %ean$hile* the
memor" manager removes the possibilities of fragmented memor" and increases
memor" localit"'of'reference to further increase performance.
&inall"* the runtime can be hosted b" high'performance* server'side applications* such
as %icrosoftS SQ ServerU and !nternet !nformation Services +!!S@. This
infrastructure enables "ou to use managed code to $rite "our business logic* $hile still
enjo"ing the superior performance of the industr",s best enterprise servers that support
runtime hosting.
33
Ad Agency
.NET Framework Class Library
The .N9T &rame$ork class librar" is a collection of reusable t"pes that tightl"
integrate $ith the common language runtime. The class librar" is object oriented*
providing t"pes from $hich "our o$n managed code can derive functionalit". This not
onl" makes the .N9T &rame$ork t"pes eas" to use* but also reduces the time
associated $ith learning ne$ features of the .N9T &rame$ork. !n addition* third'part"
components can integrate seamlessl" $ith classes in the .N9T &rame$ork.
&or e8ample* the .N9T &rame$ork collection classes implement a set of interfaces that
"ou can use to develop "our o$n collection classes. Mour collection classes $ill blend
seamlessl" $ith the classes in the .N9T &rame$ork.
As "ou $ould e8pect from an object'oriented class librar"* the .N9T &rame$ork t"pes
enable "ou to accomplish a range of common programming tasks* including tasks such
as string management* data collection* database connectivit"* and file access. !n
addition to these common tasks* the class librar" includes t"pes that support a variet"
of specialiFed development scenarios. &or e8ample* "ou can use the .N9T &rame$ork
to develop the follo$ing t"pes of applications and servicesJ
Bonsole applications.
Scripted or hosted applications.
6indo$s DI! applications +6indo$s &orms@.
AS-.N9T applications.
L% 6eb services.
6indo$s services.
34
Ad Agency
&or e8ample* the 6indo$s &orms classes are a comprehensive set of reusable t"pes
that vastl" simplif" 6indo$s DI! development. !f "ou $rite an AS-.N9T 6eb &orm
application* "ou can use the 6eb &orms classes.
Client Application Development
Blient applications are the closest to a traditional st"le of application in 6indo$s'
based programming. These are the t"pes of applications that displa" $indo$s or forms
on the desktop* enabling a user to perform a task. Blient applications include
applications such as
6ord processors and spreadsheets* as $ell as custom business applications such as
data'entr" tools* reporting tools* and so on. Blient applications usuall" emplo"
$indo$s* menus* buttons* and other DI! elements* and the" likel" access local
resources such as the file s"stem and peripherals such as printers.
Another kind of client application is the traditional ActiveL control +no$ replaced b"
the managed 6indo$s &orms control@ deplo"ed over the !nternet as a 6eb page. This
application is much like other client applicationsJ it is e8ecuted nativel"* has access to
local resources* and includes graphical elements.
!n the past* developers created such applications using B/BVV in conjunction $ith the
%icrosoft &oundation Blasses +%&B@ or $ith a rapid application development +0AD@
environment such as %icrosoftS ?isual 2asicS. The .N9T &rame$ork incorporates
aspects of these e8isting products into a single* consistent development environment
that drasticall" simplifies the development of client applications. The 6indo$s &orms
classes contained in the .N9T &rame$ork are designed to be used for DI!
development. Mou can easil" create command $indo$s* buttons* menus* toolbars* and
other screen elements $ith the fle8ibilit" necessar" to accommodate shifting business
needs.
35
Ad Agency
&or e8ample* the .N9T &rame$ork provides simple properties to adjust visual
attributes associated $ith forms. !n some cases the underl"ing operating s"stem does
not support changing these attributes directl"* and in these cases the .N9T &rame$ork
automaticall" recreates the forms.
This is one of man" $a"s in $hich the .N9T &rame$ork integrates the developer
interface* making coding simpler and more consistent.
Inlike ActiveL controls* 6indo$s &orms controls have semi'trusted access to a user,s
computer. This means that binar" or nativel" e8ecuting code can access some of the
resources on the user,s s"stem +such as DI! elements and limited file access@ $ithout
being able to access or compromise other resources. 2ecause of code access securit"*
man" applications that once needed to be installed on a user,s s"stem can no$ be
safel" deplo"ed through the 6eb. Mour applications can implement the features of a
local application $hile being deplo"ed like a 6eb page.
Server Application Development
Server'side applications in the managed $orld are implemented through runtime hosts.
Inmanaged applications host the common language runtime* $hich allo$s "our
custom managed code to control the behavior of the server. This model provides "ou
$ith all the features of the common language runtime and class librar" $hile gaining
the performance and scalabilit" of the host server.
The follo$ing illustration sho$s a basic net$ork schema $ith managed code running
in different server environments. Servers such as !!S and SQ Server can perform
standard operations $hile "our application logic e8ecutes through the managed code.
Server-side managed code
AS-.N9T is the hosting environment that enables developers to use the .N9T
&rame$ork to target 6eb'based applications. Ho$ever* AS-.N9T is more than just a
3<
Ad Agency
runtime hostR it is a complete architecture for developing 6eb sites and !nternet'
distributed objects using managed code. 2oth 6eb &orms and L% 6eb services use
!!S and AS-.N9T as the publishing mechanism for applications* and both have a
collection of supporting classes in the .N9T &rame$ork.
L% 6eb services* an important evolution in 6eb'based technolog"* are distributed*
server'side application components similar to common 6eb sites. Ho$ever* unlike
6eb'based applications* L% 6eb services components have no I! and are not
targeted for bro$sers such as !nternet 98plorer and Netscape Navigator. !nstead* L%
6eb services consist of reusable soft$are components designed to be consumed b"
other applications* such as traditional client applications* 6eb'based applications* or
even other L% 6eb services. As a result* L% 6eb services technolog" is rapidl"
moving application development and deplo"ment into the highl" distributed
environment of the !nternet.
!f "ou have used earlier versions of AS- technolog"* "ou $ill immediatel" notice the
improvements that AS-.N9T and 6eb &orms offers. &or e8ample* "ou can develop
6eb &orms pages in an" language that supports the .N9T &rame$ork. !n addition*
"our code no longer needs to share the same file $ith "our HTT- te8t +although it can
continue to do so if "ou prefer@. 6eb &orms pages e8ecute in native machine language
because* like an" other managed application* the" take full advantage of the runtime.
!n contrast* unmanaged AS- pages are al$a"s scripted and interpreted. AS-.N9T
pages are faster* more functional* and easier to develop than unmanaged AS- pages
because the" interact $ith the runtime like an" managed application.
The .N9T &rame$ork also provides a collection of classes and tools to aid in
development and consumption of L% 6eb services applications. L% 6eb services
are built on standards such as SGA- +a remote procedure'call protocol@* L% +an
e8tensible data format@* and 6SD +the 6eb Services Description anguage@. The
.N9T &rame$ork is built on these standards to promote interoperabilit" $ith non'
%icrosoft solutions.
3=
Ad Agency
&or e8ample* the 6eb Services Description anguage tool included $ith the .N9T
&rame$ork SDA can 1uer" an L% 6eb service published on the 6eb* parse its
6SD description* and produce BW or ?isual 2asic source code that "our application
can use to become a client of the L% 6eb service.
The source code can create classes derived from classes in the class librar" that handle
all the underl"ing communication using SGA- and L% parsing. Although "ou can
use the class librar" to consume L% 6eb services directl"* the 6eb Services
Description anguage tool and the other tools contained in the SDA facilitate "our
development efforts $ith the .N9T &rame$ork.
!f "ou develop and publish "our o$n L% 6eb service* the .N9T &rame$ork
provides a set of classes that conform to all the underl"ing communication standards*
such as SGA-* 6SD* and L%. Ising those classes enables "ou to focus on the
logic of "our service* $ithout concerning "ourself $ith the communications
infrastructure re1uired b" distributed soft$are development.
&inall"* like 6eb &orms pages in the managed environment* "our L% 6eb service
$ill run $ith the speed of native machine language using the scalable communication
of !!S.
Active Server Pages.NET
AS-.N9T is a programming frame$ork built on the common language runtime that
can be used on a server to build po$erful 6eb applications. AS-.N9T offers several
important advantages over previous 6eb development modelsJ
Enhanced Performance: AS-.N9T is compiled common language runtime code
running on the server. Inlike its interpreted predecessors* AS-.N9T can take
advantage of earl" binding* just'in'time compilation* native optimiFation* and
caching services right out of the bo8. This amounts to dramaticall" better
performance before "ou ever $rite a line of code.
3>
Ad Agency
World-Class Tool Support. The AS-.N9T frame$ork is complemented b" a rich
toolbo8 and designer in the ?isual Studio integrated development environment.
6MS!6MD editing* drag'and'drop server controls* and automatic deplo"ment are
just a fe$ of the features this po$erful tool provides.
Power and Flexibility: 2ecause AS-.N9T is based on the common language
runtime* the po$er and fle8ibilit" of that entire platform is available to 6eb
application developers. The .N9T &rame$ork class librar"* %essaging* and Data
Access solutions are all seamlessl" accessible from the 6eb. AS-.N9T is also
language'independent* so "ou can choose the language that best applies to "our
application or partition "our application across man" languages. &urther* common
language runtime interoperabilit" guarantees that "our e8isting investment in BG%'
based development is preserved $hen migrating to AS-.N9T.
Simplicity. AS-.N9T makes it eas" to perform common tasks* from simple form
submission and client authentication to deplo"ment and site configuration. &or
e8ample* the AS-.N9T page frame$ork allo$s "ou to build user interfaces that
cleanl" separate application logic from presentation code and to handle events in a
simple* ?isual 2asic ' like forms processing model. Additionall"* the common
language runtime simplifies development* $ith managed code services such as
automatic reference counting and garbage collection.
Manageability. AS-.N9T emplo"s a te8t'based* hierarchical configuration s"stem*
$hich simplifies appl"ing settings to "our server environment and 6eb applications.
2ecause configuration information is stored as plain te8t* ne$ settings ma" be
applied $ithout the aid of local administration tools. This QFero local administrationQ
philosoph" e8tends to deplo"ing AS-.N9T &rame$ork applications as $ell. An
AS-.N9T &rame$ork application is deplo"ed to a server simpl" b" cop"ing the
necessar" files to the server. No server restart is re1uired* even to deplo" or replace
running compiled code.
3E
Ad Agency
Scalability and Availability. AS-.N9T has been designed $ith scalabilit" in mind*
$ith features specificall" tailored to improve performance in clustered and
multiprocessor environments. &urther* processes are closel" monitored and managed
b" the AS-.N9T runtime* so that if one misbehaves +leaks* deadlocks@* a ne$ process
can be created in its place* $hich helps keep "our application constantl" available to
handle re1uests.