Documente Academic
Documente Profesional
Documente Cultură
Windows DNA
INTRODUCTION
For some time now, both small and large companies have been building robust applications for personal computers that continue to be ever more powerful and available at increasingl lower costs! While these applications are being used b and the platform in which the millions of users each da , new forces are having a profound effect on the wa software developers build applications toda develop and deplo their application! "he increased presence of #nternet technologies is enabling global sharing of information$not onl from small and large businesses, but individuals as well! "he #nternet has spar%ed a new creativit in man , resulting in man new businesses popping up overnight, running &' hours a da , seven da s a wee%! (ompetition and the increased pace of change are putting ever)increasing demands for an application platform that enables application developers to build and rapidl deplo highl adaptive applications in order to gain strategic advantage! #t is possible to thin% of these new #nternet applications needing to handle literall millions of users$a scale difficult to imagine a *ust a few short &' hours a da ears ago! As a result, applications need to deal with user volumes of this scale, reliable to operate and fle+ible to meet changing business needs! "he application platform that underlies these t pes of applications must also provide a coherent application model along with a set of infrastructure and prebuilt services for enabling development and management of these new applications!
"oda , the convergence of #nternet and Windows computing technologies promises e+citing new opportunities for savv computing solutions that organi-ation, to more effectivel Dept! of #" businesses, to create a new generation of improve the responsiveness of the dramaticall
Seminar Report 11
Windows DNA
directl , and to better connect people to information an time or an place! When a technolog s stem delivers these results, it is called a Digital Nervous S stem! A Digital Nervous S stem relies on connected .(s and integrated software to ma%e the flow of information rapid and accurate! #t helps ever one act faster and ma%e more informed decisions! #t prepares companies to react to unplanned events! #t allows people focus on business, not technolog ! (reating a true Digital Nervous S stem ta%es commitment, time, and imagination! #t is not something ever compan will have the determination to do! 4ut those challenges, 3ow can the ta%e who do will have a distinct advantage over those who don5t! #n creating a Digital Nervous S stem, organi-ations face man people, applications, and data6 3ow can the advantage of new #nternet technologies while preserving e+isting investments in build modern, scalable computing lower the overall solutions that are d namic and fle+ible to change6 3ow can the
to bring software integration to manufacturing environments! /arlier this month, a new Windows DNA 1ab opened near Washington, D!(! )) the third such facilit Windows DNA! (learl , Windows DNA is gaining a strong following! 4ut as with an trend, it raises an obvious 8uestion, What e+actl new industr the 7nited States to spring up as a resource for companies building solutions on
offer6 0ore important, what does it mean to the people it5s designed to affect6 9igish Avalani, group manager of Windows DNA mar%eting at 0icrosoft, e+plains that Windows DNA refers to the Windows Distributed interNet Application architecture, launched b 0icrosoft in fall of 1::;! <Windows DNA is essentiall a 5blueprint5 that enables corporate developers and
independent software vendors =#S>s? to design and build distributed business applications using technologies that are inherent to the Windows platform,< Avalani Dept! of #" & .#/",S0A123A
Seminar Report 11
Windows DNA
sa s! <#t consists of a conceptual model and a series of guidelines to help developers ma%e the right choices when creating new software applications!< Applications based on Windows DNA will be deplo ed primaril b businesses, from small companies to large enterprise organi-ations! (onsumers are li%el man electronic commerce Web sites and online ban%ing applications! A ma*or force driving the need for Windows DNA is the #nternet, which has dramaticall changed the computing landscape! Five ears ago, the process of developing programs used b straightforward! 4 one person on one computer was relativel to use of the applications built to ta%e advantage of Windows DNA, such as
contrast, some of toda 5s most powerful applications support of devices )) from handheld computers to high)
thousands of simultaneous users, need to run &' hours a da , and must be accessible from a wide variet performance wor%stations! "o meet these demanding re8uirements, application developers need ade8uate planning tools and guidance on how to incorporate the appropriate technologies! "he Windows DNA architecture addresses this need!
integrate the #nternet, client@server, and .( models of computing for a new class of distributed computing solutions! 7sing the Windows DNA model, customers can build modern, scalable, multitier business applications that can be delivered over an networ%! Windows DNA applications can improve the flow of information within and without the organi-ation, are d namic and fle+ible to change as business needs evolve, and can be easil integrated with e+isting s stems and data! 4ecause integrated Windows platform services Windows DNA applications leverage deepl
that wor% together, organi-ations can focus on delivering business solutions rather than on being s stems integrators! See Figure 1!
Dept! of #"
.#/",S0A123A
Seminar Report 11
Windows DNA
demand< communication capabilities of the #nternet, while empowering end users and control of toda 5s .( applications! #n short, the
Dept! of #"
'
.#/",S0A123A
Seminar Report 11
ta%e advantage of the #nternet without compromising their abilit advances in .( technolog !
Interopera%i!it'&
build to wor% with their e+isting re8uire
applications and to e+tend those applications with new functionalit ! "he solutions can be integrated! "he development!
solutions that adhere to open protocols and standards so that other vendor re*ect approaches that force them to rewrite the and the thousands still under legions of applications still in active use toda
True integration&
deplo trul scalable and manageable
distributed applications, %e capabilities such as securit , management, transaction monitoring, component services, and director services need to be developed, tested, and delivered as integral features of the underl ing platform! #n man other platforms, these critical services are provided as piecemeal, non)integrated offerings often from different vendors, which forces #" professionals to function as s stem integrators!
deplo
Crgani-ations want to provide their customers with applications that are easier to solutions that do not involve intensive effort and massive resources to deplo into a wor%ing environment, and that reduce their cost of ownership both on the des%top and server administration side!
Crgani-ations want to be able to achieve all of the above while meeting tight application deliver need for massive re)education or a <paradigm shift< in the wa the build software! /+pose services and functionalit amount of code developers must write!
Reduced comp!e)it'&
Dept! of #"
.#/",S0A123A
Windows DNA into the operating s stem and e+pose them in a can
through the components! Reduce the need for information =#"? professionals to function as s stem integrators so the
Dept! of #"
.#/",S0A123A
Seminar Report 11
Windows DNA
.rovide a language)neutral component model so developers can use tas%) appropriate tools! 4uild on the .( model of computing, wherein customers can deplo solutions on widel available hardware!
Dept! of #"
.#/",S0A123A
Seminar Report 11
Windows DNA
DI TRI+UT,D
INT,RN,T A$$(ICATION
applications to interoperate at all tiers of the architecture! "hrough (C0, part of the application via pluggable software components that can be written in (FF, >isual 4asic, 9ava, or other languages! 4ecause of this open approach, Windows DNA supports a broad range of development tools toda , including tools from 0icrosoft, 4orland, .owersoft, and man other vendors! Dept! of #" G .#/",S0A123A
Seminar Report 11
Windows DNA
0icrosoft developed the Windows Distributed interNet Application Architecture =Windows DNA? as a wa to full integrate the Web with the n)tier model of development! Windows DNA defines a framewor% for delivering solutions that meet the demanding re8uirements of corporate computing, the #nternet, intranets, and global electronic commerce, while reducing overall development and deplo ment costs! Windows DNA architecture emplo s standard Windows)based services to address the re8uirements of each tier in the multi tiered solution, user interface and navigation, business logic, and data storage! "he services used in Windows DNA, which are integrated through the (omponent Cb*ect 0odel =(C0?, include, D namic 3"01 =D3"01? Active Server .ages =AS.? (C0 components (omponent Services Active Director Services WindowsH securit services 0icrosoftH 0essage Iueuing 0icrosoft Data Access (omponents
0icrosoft built Windows DNA using open protocols and public interfaces, ma%ing it eas for organi-ations to integrate third)part products! #n addition, b supporting industr )defined standards for #nternet computing, Windows DNA will ma%e it easier for developers to respond to technolog recentl are illustrated in the following diagram! changes! Some of the technologies added to the Windows DNA are outlined in the section given below, and
Dept! of #"
.#/",S0A123A
Seminar Report 11
Windows DNA
De-e!opment Tec"no!ogies
Dept! of #"
1J
.#/",S0A123A
Seminar Report 11
Windows DNA
0icrosoft Windows Distributed interNet Application =Windows DNA? Architecture is a d namic set of technologies that "his section contains, (omponent Services D namic 3"01, D namic 3 perte+t 0ar%up 1anguage =D3"01?! Windows Script (omponents K01, /+tensible 0ar%up 1anguage =K01?! Active Director Service #nterfaces ou can use to build Web applications! 0icrosoft has added several %e aspects to the architecture with Windows &JJJ!
Component
er-ices :
New with Windows &JJJ, (omponent Services provides a number of services that ma%e component and Web application development easier! "hese services include,
.ueued Components
Iueued (omponents allow ou to create components that can e+ecute immediatel if the client and server are connected! "he provide an eas wa to invo%e and e+ecute components as nchronousl ! #n the event that the client and server are not connected, the component can hold e+ecution until a connection is made! Iueued (omponents assist the developer b %nowledge of marshaling! using method calls similar to those calls used in component development, thus diminishing the need for an in)depth
Component
er-ices ,-ents
(omponent Services /vents lets publishers and subscribers loosel connect to data sources so that these sources can be developed, deplo ed, and e+ecuted separatel ! "he publisher does not need to %now the number and location of the subscriber, and the subscriber uses an intermediate bro%er to find a publisher and manage the subscription to it! "he event s stem simplifies component and Web application development b %nown to each other! Dept! of #" 11 .#/",S0A123A allowing both publisher and subscriber identities to be persistent, .ublishers and subscribers identities can be manipulated without being
Seminar Report 11
Windows DNA
D'namic /T#( :
D namic 3"01 =D3"01?, which 0icrosoft introduced with #nternet /+plorer '!J, allows ou to create much richer 3"01 that responds to events on the client! 4 upgrading our 3"01 pages to ta%e advantage of D3"01, ou will not onl enhance the user e+perience, ou will also build Web applications that use server resources more efficientl ! D3"01 controls the appearance of 3"01 pages b setting properties in the
document ob*ect model =DC0?, a model which 0icrosoft has proposed to the World Wide Web (onsortium =WA(? as a standard! D3"01 e+poses an event model that allows ou to change DC0 properties d namicall !
Windows
cript Components :
ou with an eas wa to create (omponent
Cb*ect 0odel =(C0? components using scripting languages such as 0icrosoft >isual 4asic Scripting /dition =>4Script? and other languages compatible with the /(0A &E& language specification =such as 0icrosoft 9Script &!J and 9avaScript 1!1?! Lou can use script components as (C0 components in applications such as #nternet #nformation Services =##S?, 0icrosoft Windows Scripting 3ost =WS3?, and an other application that can support (C0 components! Script component technolog is made up of the following, "he script component run)time =Scrob*!dll?!
Interface handlers, which are components that e+tend the script component run)time! An interface handler is a compiled component =generall written in (FF? that implements specific
ou will our
receive the Automation interface handler, which ma%es it possible to call script component from an !asp file!
Lour script component file =a!sct file?! #n our script component, ou specif which interface handler ou want to use! Lour script component also defines
Dept! of #"
1&
.#/",S0A123A
Seminar Report 11
Windows DNA
the methods that can be called from an !asp file to accomplish the intended functionalit ! Script components are an e+cellent technolog for developing protot pes of (C0 components! Script components, li%e an other (C0 component, can be registered with (omponent Services if ou intend for them to participate in transactions, or if ou want to ta%e advantage of the (omponent Services run)time environment! 4ecause the ob*ects! are (C0 components, script components can access the AS. built)in
Dept! of #"
1A
.#/",S0A123A
Seminar Report 11
Windows DNA
0#(:
/+tensible 0ar%up 1anguage =K01?, li%e 3"01, allows ou to appl mar%up, in the
form of tags, to a document! 3owever, unli%e 3"01, K01 is designed to be used as a generali-ed mar%up language! #n other words, mar%up applied to an K01 document can be used to conve fle+ibilit ma%es K01 e+tremel not onl displa and formatting information as with 3"01, but semantic and organi-ational structure for the document! "his powerful, and the possible range of applications is impressive!
Acti-e Director'
er-ice Interfaces:
Service #nterfaces =ADS#? is a (C0)based director protocols, including Windows Director Services, 1DA.,
service model that allows ADS#)compliant client applications to access a wide and NDS, while using a single, standard set of interfaces! ADS# shields the client application from the implementation and operational details of the underl ing data store or protocol! An application called an ADS# provider ma%es itself available to ADS# client applications! "he data e+posed b namespace, defined b the provider is organi-ed in a custom the provider! #n addition to implementing the interfaces
defined b ADS#, the provider also can implement the ADS# schema! "he schema is used to provide metadata about the namespace structure and ob*ects that are provided b the ADS# provider!
AD I and II
##S currentl stores most #nternet site configuration information in a custom data to
store called the ##S metabase! ##S e+poses a low)level D(C0 interface that allows applications to gain access to, and manipulate, the metabase! "o ma%e it eas functionalit provided b the D(C0 interface, and e+poses it to an access the metabase, ##S also includes an ADS# provider that wraps most of the ADS#) compliant client applications!
Dept! of #"
1'
.#/",S0A123A
Seminar Report 11
Windows DNA
wor% on separate parts at the same time! Developers can also reuse components swap out or update a particular component without affecting other portions of the application! (C0 also offers the advantage of programming language independence! "hat means developers can create (C0 components using the tools and languages the 5re familiar with, such as >isual 4asic, (, (FF and 9ava! An eas wa to loo% at it is that (C0 serves as the glue between the tiers of the
Dept! of #"
1D
.#/",S0A123A
Seminar Report 11
Windows DNA
er-er mac"ine
.lacing increases over application, our our the and business control entire over ob*ects on the server
configuration issues! #t also increases securit aspects of the s stem, and reduces the client) side software footprint!
1. Centra! Data%ase
4 %eeping all data in a central location, ou open up
Dept! of #"
1E
.#/",S0A123A
Seminar Report 11
Windows DNA
opportunities for data sharing between clients and for central reporting! 4usiness ob*ects need onl a central point)of)entr into the data store!
3. 3+ CO# D((s
>isual 4asic provides eas control of databases, and into the automation methods for /+cel, Access and SourceSafe!
4. II
We%
er-er
0icrosofts web server software product! "his comes with the N" Server operating s stem, and provides support for Active Server .ages, #SA.#, and custom embedded controls!
5. Acti-e
er-er $ages
##S! #t is a combination of
3"01, >4Script, and (C0! "hese scripts run on the web server, and then converted to 3"01 for the client response! AS. provides default components for interaction with the server or with a database! "he custom business ob*ect components for our application! can also embed
C!ient mac"ine
DNA e+pands the client base of boundaries easier! our application to an one capable of running the #nternet /+plorer '!J browser, ma%ing crossing machine
6. Acti-e0 contro!s
"hese are visual components that are embedded into a web page and downloaded to the client machine! "he can provide custom displa or input be ond that which is available in the standard set of controls =buttons, te+t fields, and lists?! An e+ample ActiveK control would be a custom chart or grid!
Dept! of #"
1;
.#/",S0A123A
Seminar Report 11
Windows DNA
8. D'namic /T#(
"his e+tension to the 3"01 standard provides precise placement of ob*ects on the screen, data binding, effects, and d namic modification capabilities!
9. Customgrap"ics
Mraphics and presentation are the final piece to this pu--le! A consistent M7# provides customers with a pleasing means of interfacing with our application! Miven the proper underl ing infrastructure, the multitier model of presentation, business logic and data can ph sicall distribute processing over man computers! 3owever, the core abstractions that have wor%ed for singleN and twoNtier models in the past$high)level programming languages, database management s stems, and graphical user interfaces$do not full address the re8uirements of multitier application development! A different level of abstraction is needed to develop scalable, manageable and maintainable multiuser applications, and at 0icrosoft we believe this abstraction is cooperating components!
Cooperating Components
0icrosoft5s Windows DNA strateg rests on 0icrosoft5s vision of cooperating standard called the (omponent used component software model in
components that are built based on the binar Cb*ect 0odel =(C0?! (C0 is the most widel
the world, available on more than 1DJ million des%tops and servers toda ! #t provides the richest set of integrated services, the widest choice of eas )to)use tools, and the largest set of available applications! #n addition, it provides the onl currentl viable mar%et for reusable, off)the)shelf client and server components! (C0 enables software developers to build applications from binar components that can be deplo ed at an software tier of the application model! "hese
components provide support for pac%aging, partitioning, and distributed application functionalit ! (C0 enables applications to be developed with components b encapsulating an t pe of code or application functionalit , such as a user interface control or line of business ob*ect! A component ma have one or more interfacesB each e+poses a set of methods and properties that can be 8ueried and set b other components and applications! For e+ample, a customer component might e+pose various properties such as name, address, and telephone number!
Dept! of #"
1G
.#/",S0A123A
Seminar Report 11
Windows DNA
With the 0icrosoft Windows DNA model, components ta%e awa DNA model rel
the comple+it
of
building multitier applications! Applications based on components and the Windows on a common set of infrastructure and networ%ing services provided in the Windows application platform! "he 0icrosoft Windows N" securit service, for e+ample, provides access control to the #nternet #nformation Server =##S?, as well as transaction and message 8ueuing services! Cther common services include s stems management, director support! services, networ%ing, and hardware
development of their applications to the Windows platform to ta%e full advantage of the rich user interface Windows has to offer! 1i%ewise, customers have come to e+pect a rich, highl functional user interface from their applications! "he e+tended reach of information and services to customers that the #nternet has enabled has created a new challenge for the application developer! "he application developer toda must develop a user interface that is distributable, available on Windows and non)Windows platforms, and supports a wide range of client environments, from handheld wireless devices to high)end wor%stations! Let, applications must be rich with features to sta have come to e+pect! As depicted in Figure A, Windows DNA offers a broad range of presentation options, giving the application developer the choice when developing the best solution! Windows DNA permits the developer to choose the appropriate Windows components and #nternet technologies to support the richest possible interface and range of client environments, from handheld wireless devices to high)end wor%stations! 0aintaining broad reach to a wide range of client environments while achieving the greatest compatibilit with all browsers, application developers will generall use standard 3"01 in developing their browser neutral applications! 0icrosoft tools and application services support the current generation of standard 3"01! competitive and maintain the functionalit that customers
Dept! of #"
1:
.#/",S0A123A
Seminar Report 11
Windows DNA
and
richness in an applications user interface that customers have come to e+pect! "his is o%a for some applications as their application re8uires broad reach and browser neutralit ! "here is a class of applications that don5t have a browser neutralit "he realit than the is that man application developers who want to provide more functionalit re8uirement!
can achieve with standard 3"01 write code to determine the browser and
being used! "hese browser enhanced applications are written to ta%e advantage of the technologies inherent in the browser to gain ma+imum functionalit Dept! of #" &J
.#/",S0A123A
Seminar Report 11
Windows DNA
richness! With technologies li%e d namic 3"01 =D3"01? and scripting, application developers can create actions with functional Web)based interfaces for data entr or reporting without using custom controls of applets! D3"01 is based on the WA()standard Document Cb*ect 0odel, which ma%es all Web)page elements programmable ob*ects! "hin% of D3"01 as a <programmable< 3"01! (ontents of the 3"01 document, including st le and positioning information, can be modified d namicall b script code embedded in the page! "hus, scripts can change the st le, content, and structure of a Web page without having to refresh the Web page from the Web server! 4 doing so, the client does not have to repeatedl return to the Web server for changes in displa resulting in increased networ% performance! 7nli%e 9ava applets or 0icrosoft ActiveK controls, D3"01 has no dependencies on the underl ing virtual machine or operating s stem! For clients without D3"01 support, the content appears in a gracefull degraded form! "here are times when D3"01 plus scripting is not enough! Segments of applications need to leverage the operating s stem and underl ing machine on which it is hosted, while still maintaining an active connection to the #nternet for data or additional services! #t is in those instances that application developers can ta%e advantage of the robust components and #nternet services provided b Windows to build Internet- reliant applications! 7nli%e page)based applications that are being run within the conte+t of a browser, an #nternet)reliant application is a full)fledged Windows e+ecutable that has full access to the broad range of services provided b the Windows client! "hese applications generall use a combination of 3"01, D3"01, scripting, and ActiveK controls to provide rich integration with the client s stem as well as full connectivit to remote services on the #nternet! Applications written using the 0icrosoft WinA& application programming interface =A.#? offer the most functionalit developers toda with reach limited to the application platforms that support the WinA& A.#! "hrough the use of cooperating components, can have access to #nternet technologies in the Windows application platform from within a WinA&)based application! Applications written to the WinA& A.# that ta%e advantage of s stem features and leverage #nternet connectivit are called Internet-enhanced applications! Some common e+amples embedding h perlin%s from within of documentation written in .#/",S0A123A are the 0icrosoft Cffice :; and 0icrosoft >isual Studio :G development s stems! "hese applications support unified browsing b the application, host the browser for the displa Dept! of #" &1
Dept! of #"
&&
.#/",S0A123A
Seminar Report 11
Windows DNA
App!ication
er-ices
"he business logic tier is the heart of the application, where the application)specific processing and business rules are maintained! 4usiness logic placed in components bridge the client environments and the data tiers! "he Windows DNA application platform has been developed through volume, transactional, large)scale ears of innovation in supporting high) deplo ments, and provides a application
powerful run)time environment for hosting business logic components! As depicted in Figure ', the application platform for developing Windows DNA applications include Web services, messaging services, and component services!
We%
er-ices
to the
#ntegrated with 0icrosoft5s application platform is a high)performance gatewa the presentation tier! 0icrosoft5s #nternet #nformation Server enables
development of Web)based business applications that can be e+tended over the #nternet or deplo ed over corporate intranets! With ##S, 0icrosoft introduced a new paradigm to the #nternet$transactional applications! "ransactions are the plumbing that ma%es it possible to run real business applications with rapid development, eas scalabilit , and reliabilit !
Dept! of #"
&A
.#/",S0A123A
Seminar Report 11
Windows DNA
Active Server .ages =AS.?, a component of ##S, is the language)neutral, compile) free, server)side scripting environment that is used to create and run d namic, interactive Web server applications! 4 combining D3"01, scripting, and components, AS. enables application developers to create d namic, interactive Web content and powerful Web)based applications! With the trend toward distributed computing in enterprise environments, it is important to have fle+ible and reliable communication among applications! 4usinesses often re8uire independent applications that are running on different s stems to communicate with each other and e+change messages even though the applications ma not be running at the same time! Applications built using a combination of AS. scripts communicating with cooperating components can interoperate with e+isting s stems, applications, and data!
Component
er-ices
Windows DNA is based on a programming model called (C0 =(omponent Cb*ect 0odel?! "he (C0 model has come into widespread use since its introduction b 0icrosoft and it is an integral part of man 0icrosoft applications and technologies, including #nternet /+plorer and the Cffice suite of applications! 7nli%e traditional software development, which re8uired each application to be built from scratch, (C0 allows developers to create comple+ applications using a series of small software ob*ects! 0uch li%e cars or houses are built with standardi-ed <parts,< (C0 lets developers ma%e portions of their applications using components! For e+ample, a component might be a ta+ calculation engine or the business rules for a price list! A growing number of third)part vendors sell (C0 components! "his approach speeds up the development process b from one pro*ect to the ne+t, and the can easil allowing several teams to
wor% on separate parts at the same time! Developers can also reuse components swap out or update a particular component without affecting other portions of the application! (C0 also offers the advantage of programming language independence! "hat means developers can create (C0 components using the tools and languages the 5re familiar with, such as >isual 4asic, (, (FF and 9ava!
Dept! of #"
&'
.#/",S0A123A
1::Js, the underl ing concept that facilitated interoperabilit that enabled interoperabilit a great wa
to achieve
to design and develop software in general! So, in be ond the des%top introducing 0icrosoft
the mid)1::Js 0icrosoft broadened (C05s applicabilit application to also include distributed applications b
"ransaction Server =0"S?! 0"S was an e+tension to the (C0 programming model that provided services for the development, deplo ment, and management of component)based distributed applications! 0"S was a foundation of application platform services that facilitated the development of distributed applications for the Windows platform in a much simpler, more cost)effective manner than other alternatives! (C0F is the ne+t evolutionar distributed applications b step of (C0 and 0"S! "he unification of the
programming models inherent in (C0 and 0"S services ma%es it easier to develop eliminating the tedious nuances associated with developing, debugging, deplo ing, and maintaining an application that relies on (C0 for certain services and 0"S for others! "he benefits to the application developer is to ma%e it faster, easier, and ultimatel cheaper to develop distributed applications b s stem services! "o continue to broaden (C0 and the services offered toda application platform! "he include, +ring 'our own transaction. (C0 components are able to participate in transactions managed b non)(C0F transaction processing =".? environments and process)access) in 0"S &!J, (C0F reducing the amount of code re8uired to leverage underl ing
that support the "ransaction #nternet .rotocol ="#.?! ,)panded securit'. Support for both role)based securit permissions securit ! #n the role)based securit
of an application is granted or denied based on the logical group or role that the caller has been assigned to =for e+ample, administrator, full)time emplo ee, or part)time emplo ee?! (C0F e+pands on the current implementation of role) based securit b including method)level securit for both custom and IDispatc"7,)8)based interfaces!
Dept! of #"
&D
.#/",S0A123A
Seminar Report 11
Windows DNA
Centra!i9ed administration. "he (omponent Services /+plorer, a replacement for toda 5s 0"S /+plorer and D(C0(NFM, presents a unified administrative model, ma%ing it easier to deplo , manage, and monitor n)tiered applications b eliminating the overhead of using numerous individual administration tools!
information and transient state information in a consistent manner! #t is an in) memor , full transactional database s stem designed to provide e+tremel fast access to data on the machine on which it resides! .ueued components. For as nchronous deferred e+ecution when cooperating components are disconnected, this is in addition to the session)based, s nchronous client@server programming model, where the client maintains a logical connection to the server toda ! ,-ent notification. For times when a loosel coupled event notification
mechanism is desirable, (C0F /vents is a unicast@multicast, publish@subscribe event mechanism that allows multiple clients to <subscribe< to events that are <published< b various servers! "his is in addition to the e+isting event notification framewor% delivered with connection points! (oad %a!ancing. 1oad balancing allows component)based applications to distribute their wor%load across an application cluster in a client)transparent manner!
#essaging
er-ices
coupled and reliable
0icrosoft 0essage Iueue Server =0S0I? provides loosel ma%es it eas event deliver to integrate applications b
networ% communications services based on a messaging 8ueuing model! 0S0I implementing a push-style business environment between applications, and to build reliable applications
that wor% over unreliable but cost)effective networ%s! "he simple application based on (C0 lets developers focus on business logic and not on sophisticated communications programming! 0S0I also offers seamless interoperabilit available from 0icrosoft5s independent software vendor =#S>? partners! with other message 8ueuing products, such as #405s 0ISeries, through products
Dept! of #"
&E
.#/",S0A123A
Seminar Report 11
Windows DNA
across the enterprise! "oda , companies building database solutions face a number of challenges as the see% to gain ma+imum business advantage from the data and information distributed throughout their corporations! 7niversal Data Access provides high)performance access to a variet tool and language independent! 7niversal Data Access does not re8uire e+pensive and time)consuming movement of data into a single data store, nor does it re8uire commitment to a single vendor5s products! 7niversal Data Access is based on open industr specifications with broad industr support, and wor%s with all ma*or established database platforms! As depicted in Figure D, the 7niversal Data Access)based framewor% operates at two levels! At the s stems level, C1/ D4 defines a component)based architecture specified as a set of (C0)based interfaces that encapsulate various database management s stem services! "he C1/ D4 architecture does not constrain the nature of the data sourceB as a result, 0icrosoft and #S> have introduced providers for a wide variet of inde+ed se8uential files, groupware products, and des%top products! At the application level, ActiveK Data Cb*ects =ADC? provides a high)level interface to enable developers to access data from an programming language! of information sources, including relational and nonrelational data, and an eas )to)use programming interface that is
Dept! of #"
&;
.#/",S0A123A
Seminar Report 11
Windows DNA
Dept! of #"
&G
.#/",S0A123A
Seminar Report 11
Windows DNA
platform interactivit re8uired b toda 5s, and tomorrow5s, business Web sites! .roducing a good n)tier application often entails a series of *udgments in planning and implementing the final product! When those decisions are poorl made, development teams can encounter time)consuming$and often difficult to solve$ performance problems after the application has been installed and implemented! Fortunatel , man of these problems can be anticipated and prevented! "his article shows ou how to find and eliminate them earl in the development process! "he mista%es that follow were identified b them ma not prevent all of the problems 0icrosoft (onsulting Services =0(S? ou5ll encounter, ou will significantl
consultants worldwide! We5ve assembled some useful solutions, and while following reduce performance degradation!
ca!a%i!it'
at odds! For
are not the same, but neither are the process information at an incredibl
as the number of users sending it information is less than 1JJ! When that Dept! of #" &: .#/",S0A123A
Seminar Report 11
application reaches the point at which 1J,JJJ users are simultaneousl input, the performance ma degrade substantiall , because scalabilit be partiall
wasn5t high
enough in the list of considerations during the development c cle! Cn the other hand, that same high)performance application ma time! 4 rewritten in a subse8uent iteration and have no problem handling 1JJ,JJJ customers at one then, however, a substantial number of customers ma have migrated to a product someone else got right the first time! Sometimes applications see% scalabilit strictl in terms of number of concurrent users
through performance, with the idea being that the faster a server
application runs, the more users can be supported on a single server! "he problem with this approach is that increasing the number of simultaneous users ma create a bottlenec% that will actuall middle tier! 4 reduce the level of performance as the load increases! Cne cause of this %ind of behavior is caching state and data in the avoiding such caching in the design phase of the development process, countless hours of bac%trac%ing and rewriting code can be avoided! "he ideal is to find a point of balance that provides acceptable performance in a scalable implementation of a particular application! Finding this point alwa s involves trade) offs! 1et5s loo% at some of the basic concepts involved in scalabilit ! Throughput refers to the amount of wor% =number of transactions? an application can perform in a measured period of time and is often calculated in transactions per second =tps?! Scalability refers to the amount of change in linear throughput that occurs when resources are either increased or decreased! #t is what allows an application to support an where from a handful to thousands of users, b subtracting resources as necessar simpl adding or to <scale< the application! Finall , transaction resources, plus
the amount of time the transaction ta%es actuall using these resources! "he point to note here is that scalabilit increases as throughput increasesB that is, the higher the throughput growth per resource, the greater the scalabilit ! (learl , application developers must concentrate their efforts on increasing throughput growth if the are to increase scalabilit ! Cf course, the obvious 8uestion then does one go about increasing throughput6 "he answer to sound reasonabl simple, Reduce the overall growth of becomes, how e+actl that 8uestion ma
transaction times! 4ut *ust how eas might that be6 Dept! of #" AJ .#/",S0A123A
Seminar Report 11
Windows DNA
"ransaction times can be e+tended b a variet of factors! Ac8uiring the necessar resources can be slowed b such factors as networ% latenc , dis% access speed, database loc%ing scheme, and resource contention! Added to that are elements that can affect resource usage time, such as networ% latenc , user input, and sheer volume of wor%! Windows DNA application developers should concentrate on %eeping resource ac8uisition and resource usage times as low as possible! Fran% Redmond lists the following wa s to manage some of these factors, Avoid involving user interaction as part of a transaction! Avoid networ% interaction as part of a transaction! Ac8uire resources late and release them earl ! 0a%e more resources available! Ctherwise, use 0"S to pool resources that are in short suppl or are e+pensive to create! 7se 0"S to share resources between users because it is usuall e+pensive to create a new resource than to reuse an e+isting one! /liminating the confusion that e+ists about the relationship of performance and scalabilit , in this conte+t, primaril means remembering that running a high) consideration for gaining an acceptable performance application is not the onl more
level of performance in a Windows DNA application! #t must be scalable so that the largest number of simultaneous users can be logged on without compromising throughput to an unacceptable level!
Finall , a middle tier returns processed information to the presentation tier so it can be used however the program or user sees fit! Within these three areas, performance can degrade significantl when developers use programming practices that are either little understood or mista%enl following sections! embraced as the <right< thing to do! in the "hese performance)compromising mista%es are e+plained more full
general practice of attempting to coalesce ad*acent free bloc%s into larger bloc%s!
Dept! of #"
A&
.#/",S0A123A
Seminar Report 11
Windows DNA
for because of the nature of the data store, but as much of this as possible should happen in the database before the dataset is returned to the middle tier!
#aintaining a
0ost developers have heard that maintaining state in 0"S@(C0F components is a bad thing to do, but a surprising number of pro*ects still attempt it! Sometimes this happens with the hope that performance won5t degrade to a significant degree! Cn the other hand, it is sometimes said that ou can't use stateful components in 0"S and that, of course, is not true! 3owever, to achieve scalabilit ou shouldn't use stateful components! Specific issues e+ist with using the Session and Application ob*ects to store state of an %ind! Not the least of these issues is the current inabilit to scale such ob*ects across multiple servers! "his becomes especiall problematic =even in single)server deplo ments? when one attempts to cache ob*ect instances, such as database connections in Session or Application ob*ects! 1et5s sa ou5re using 0icrosoft5s ActiveK Data Cb*ects =ADC?! #f ou5ll introduce both scalabilit storing a connection ob*ect this wa , ou store our and performance,
benefit of connection pooling! #n terms of performance, doing this ensures that the connection ob*ect will onl serve the user for which a given session is created, and the connection will not be released to the pool until the end of the session! 4e ond that length of time, ou must also ta%e into account the default timeout assigned to a session variable! Session resources for each user are consumed for &J minutes of idle time before being released! Lou can reduce this length of time either manuall or programmaticall , but ou ris% creating additional difficulties! #nstead of storing the ob*ect in a Session variable involve the overhead normall ou need to, in effect, create it
and destro it in ever applicable AS. page! "han%s to 0"S and (C0F, this doesn5t associated with ob*ect creation and destruction! 4 using a techni8ue %nown as interception, the 0"S run time inserts a transparent la er called a conte+t wrapper between a base client and an ob*ect in the 0"S run) time environment! "he 0"S run time is then able to monitor the connection and ta%e control on a call)b )call basis! 0"S re8uires the use of the SafeRef method but Dept! of #" AA .#/",S0A123A
Windows DNA in (C0F =Windows &JJJ and later?, because (onte+ts have
development process can prevent this problem! As in most software engineering situations, this is usuall damage! Failing to discover poor performance until late in the pro*ect5s development c cle is rarel an effective idea! solution! #f poor choices are inadvertentl made, discovering the problem earl through selective testing can minimi-e the
Dept! of #"
A'
.#/",S0A123A
Seminar Report 11
Windows DNA
F,ATUR,
OF
WINDOW
DNA helps to design and build multi)tier client@server applications! #t provides a structured approach to creating applications whose components are clearl separated into distinct functional groups, with common communication protocols lin%ing these groups! "his provides the benefits of faster and less error)prone design and development, and interchangeabilit of components!
DNA provides client transparenc ! "he front)end =or client? is independent of the bac% end of the application, i!e! it needs no %nowledge of this, irrespective of what, the bac% end of the application does, or how it does it! As long as it follows the DNA protocol and processing guidelines, it can be almost an thing$ from a standard Web browser to a speciall almost an programming language! developed application written in
DNA applications provide full transactional processing support! #n applications of an real level of comple+it , multiple operations are performed at different of the
levels of the application, and at different times! "o guarantee integrit well as monitoring of ever plumbing seamlessl ! components,
results, there needs to be control over each set of operations as a whole, as individual step! DNA, and the associated software accomplish this almost transparentl and can
DNA can be used to create applications that are fault tolerant! As no networ% can ever be 1JJS guaranteed to give continuous and fast performance! A distributed application needs to be able to cope with networ% dela s and software failures, while protecting data integrit and reliabilit ! DNA is ideal for distributed applications! Cnce an application becomes distributed, i!e! divided into separate parts lin%ed b a networ%, the problem of communication between the parts arises! /arlier it was necessar to create custom formats and techni8ues for passing information between each and providing high availabilit
Dept! of #"
AD
.#/",S0A123A
Seminar Report 11
Windows DNA
part of the application, leading to longer design and implementation periods, an increased number of bugs, and poor interoperabilit applications! 4 development speed and application reliabilit is boosted! "he DNA methodolog covers man e+isting technologies to help design and between different standardi-ing the communication protocols and interfaces,
implement robust, distributed applications! #t visuali-es this whole application as a series of tiers, with the client at the top and the data store at the bottom! "he core of DNA is the use of business ob*ects in a middle tier of the application! Also, in DNA, business ob*ects are implemented as software components! "hese components can be accessed b the client interface application or b another component, and can themselves call on other components, data stores, etc! (omponenti-ation of business rules brings man benefits, such as easier maintenance, encapsulation of the rules, protection of intellectual cop right, etc! 3ence, DNA is an approach to design that can speed up overall development time, while creating more reliable and fault tolerant applications that are easil distributable over a whole variet of networ%s! "o run these applications, Windows DNA relies on a rich set of integrated services supplied b the Windows platform! "hese services are infrastructure technologies scalable, distributed application )) for instance, that would be re8uired for an 4
transaction processing, securit , director services and s stems management! providing a stable base of common services, Windows DNA relieves developers from the burden of creating their own infrastructure and allows them to focus instead on delivering business solutions! Developers save time, reduce costs, get their applications to mar%et more 8uic%l proactivel to changing business and e8uip companies for responding "hese benefits are especiall conditions!
compelling in toda 5s competitive business climate! Several more good reasons wh companies should base their applications on
Windows DNA! 4ecause the architecture is built on open protocols and industr standards, solutions from other vendors integrate easil into the environment! "his helps ensure interoperabilit also facilitates compatibilit replacing them! Dept! of #" AE .#/",S0A123A with mission)critical business applications, such as with e+isting computing s stems, which means that s stems as opposed to corporate databases and enterprise resource planning s stems! An open approach companies can continue to ta%e advantage of their legac
Seminar Report 11
Windows DNA
"he
benefits
of
distributed
computing
applications
that
embrace
#nternet
technologies are man ! For individuals, it means the freedom to communicate or access information at an responding 8uic%l time and from an place! For businesses, it means ma%ing more informed decisions, better understanding their customers, and as their business needs evolve! For software developers, the challenge has been how to build these solutions! Windows DNA offers them a cohesive and proven application architecture for distributed and #nternet)based computing solutions!
Dept! of #"
A;
.#/",S0A123A
Seminar Report 11
Windows DNA
Conc!usion
"he Windows DNA architecture and the Windows N" platform offer man advantages to customers and their #S> partners! #ts %e benefits include, .roviding a comprehensive and integrated platform for distributed applications, freeing developers from the burden of building the re8uired infrastructure or assembling it using a piecemeal approach! /as interoperabilit with e+isting enterprise applications and legac s stems to e+tend current investments! 0a%ing it faster and easier to build distributed applications b providing a distinct
pervasive component model, e+tensive prebuilt application services, and a wide choice of programming language and tools support! Windows DNA applications have proven themselves in a wide range of
represent in the modern distributed computing demonstrated! "he have, however, also shown
themselves to re8uire careful planning and thorough testing throughout the development process! Avoiding the %inds of mista%es noted in this article should reduce the amount of resources re8uired to produce the %ind of Windows DNA application ou want! .erformance and load testing is unavoidable! Do it in a our particular application, and manner that simulates real)world conditions for
ou5ll be rewarded with an n)tier application that wor%s and wor%s well!
Dept! of #"
AG
.#/",S0A123A
Seminar Report 11
Windows DNA
References
1! &! A! www!microsoft!com www!bengalcore!com www!msdn!com
Dept! of #"
A:
.#/",S0A123A
Seminar Report 11
Windows DNA
A+ TRACT
0icrosoft Windows Distributed interNet Applications Architecture =Windows DNA? is the application development model for the Windows platform! Windows DNA specifies how to, develop robust, scalable, distributed applications using the Windows platformB e+tend e+isting data and e+ternal applications to support the #nternetB and support a wide range of client devices ma+imi-ing the reach of an application! Developers are free from the burden of building or assembling the re8uired infrastructure for distributed applications and can focus on delivering business solutions! Windows DNA addresses re8uirements business at all and tiers data! of modern the tightl distributed familiar .( integrated
applications, environment,
presentation,
logic,
1i%e
applications b accessing a rich set of application services in the Windows platform using a wide range of familiar tools! "hese services are e+posed in a unified wa through the (omponent Cb*ect 0odel =(C0?! Windows DNA provides customers with a roadmap for creating successful solutions that build on their e+isting computing investments and will ta%e them into the future! 7sing Windows DNA, an developer will be able to build or e+tend e+isting applications to combine the power and richness of the .(, the robustness of client@server computing, and the universal reach and global communications capabilities of the #nternet!
Dept! of #"
'J
.#/",S0A123A
Seminar Report 11
Windows DNA
CONT,NT
INTRODUCTION =
TO$ WINDOW DNA $,RFOR#ANC, #I TA?, /OW TO $R,3,NT T/,# F,ATUR, AND AD3ANTAG, OF WINDOW
DNA
CONC(U ION
6:
R,F,R,NC,
6A
Dept! of #"
'1
.#/",S0A123A
Seminar Report 11
Windows DNA
AC?NOW(,DG#,NT
sincere than%s to $rof& #&N Agnisarman #r& mines" =Staff incharge? for their %ind co)
Nam%oot"iri =3ead of the Department, (omputer Science and operation for presenting the seminar! # also e+tend m facult sincere than%s to all other members of the
Fa"mida #o"ammed
Dept! of #"
'&
.#/",S0A123A