eXtropia: the open web technology company
Technology | Support | Tutorials | Development | About Us | Users | Contact Us
 ::   Tutorials
 ::   Presentations
Perl & CGI tutorials
 ::   Intro to Perl/CGI and HTML Forms
 ::   Intro to Windows Perl
 ::   Intro to Perl 5
 ::   Intro to Perl
 ::   Intro to Perl Taint mode
 ::   Sherlock Holmes and the Case of the Broken CGI Script
 ::   Writing COM Components in Perl

Java tutorials
 ::   Intro to Java
 ::   Cross Browser Java

Misc technical tutorials
 ::   Intro to The Web Application Development Environment
 ::   Introduction to XML
 ::   Intro to Web Design
 ::   Intro to Web Security
 ::   Databases for Web Developers
 ::   UNIX for Web Developers
 ::   Intro to Adobe Photoshop
 ::   Web Programming 101
 ::   Introduction to Microsoft DNA

Misc non-technical tutorials
 ::   Misc Technopreneurship Docs
 ::   What is a Webmaster?
 ::   What is the open source business model?
 ::   Technical writing
 ::   Small and mid-sized businesses on the Web

Offsite tutorials
 ::   ISAPI Perl Primer
 ::   Serving up web server basics
 ::   Introduction to Java (Parts 1 and 2) in Slovak


Introduction to Microsoft DNA
The Tier Solutions - The Holy Grail  
Previous Page | Next Page | Table of Contents

The Microsoft implementation of the collaborative approach was dubbed DNA and was realized using the following set of technologies:

  • A thin presentation client that understands standard information sent to it. (Web Browser)
  • Encapsulation of the business logic in a manner that remains flexible. (COM)
  • Data stored in a consistent and hopefully interchangeable solution. (XML)

We can see how the model and the technologies could now work together.

First, a lightweight front-end could perform the presentation and client interaction in a familiar and robust environment. The HTML browser solves this. Information is displayed and submitted in a standardized fashion and governed by an independent and open community.

Secondly, business rules could be captured in a middle tier where they could change but remain scalable. To capture logic, one must build an encapsulated function that can be accessed via the presentation layer and talk to the data layer. COM, which will discuss in greater detail in just a bit, was designed with such ideas in mind; code re-use, maintenance and encapsulation.

Finally, we could store the data within it's own layer to protect the other layers from proprietary databases and Meta stores.

While this may initially seem like a utopian list of features, the technology had provided the solutions.

A number of technologies are needed to make the collaborative or "tiered" approach work. In fact, DNA, and the DNA technologies hoped to provide an 'n' tier solution (this will become apparent soon).

Technologies Needed Microsoft Products Other Products
Lightweight Presentation Internet Explorer, HTML, XML Others include Netscape
Rendering Engine Internet Information Server (Web Engine) For large solutions see other variants of IIS by MS.
Fast Implementation (between Rendering and Business Components) Active Server Pages, Scripting (VBScript, Jscript and even PerlScript) (COM) Enables IIS to produce flexible HTML driven by Business Components.
Component Communication COM (Common Object Model), MSMQ, COM+ Competitors include Corba and RMI, PerlRPC
Business Components COM Objects (with/without MTS support)
Fast Implementation (Business Layer to Data ActiveX Data Objects (More COM), ODBC Using lightweight wrappers to access a generic data abstract layer.
Data Access and Translation OLEDB, Universal Data Access and ADSI ODBC
Data Storage SQL Server, Exchange, Active Directory and NTFS Obviously other databases are included like Oracle and Informix.

This table by no means provides the complete or definitive list of the technologies involved, or the boundaries of their scope. However, it does give some indication of where and when the technologies mentioned later in this tutorial are used.

There are many other technologies used in other areas, for example, that include access to legacy systems, third party integrations, and even exchangeable data format. However, we are primarily focused on what DNA is and where ASP sits.

By now, you will have realized that COM, the Component Object Model, plays a large part in the Microsoft implementation of the multi-tiered solutions.

This is no co-incidence, as COM was designed to solve the problems of communication, implementation and open access within the layers. The COM approach centers on a language independent framework to build components and services. It's obviously successful - if we look at our table we can see that a large number of the technologies either use or are built from COM. Also note, that nearly all of the technologies presented here for DNA are mainly based on the Windows NT technology.

So what are the Microsoft technologies and what functions do they perform that we should know about? Well, almost all of those specified go to make up the majority of DNA based applications in one form or another. With this in mind a quick tour of the technologies is required.

For further information on Microsoft DNA, the architecture, the technologies and where DNA is headed you can access the Microsoft Developer Network site. For more information on COM, you can point your browser to Microsoft.

Previous Page | Next Page | Table of Contents