Exploring Microsoft's DNA
An Overview of the Windows Distributed iNternet Applications Architecture
By Ken Spencer
The Windows Distributed iNternet Applications Architecture (DNA) is Microsoft's approach to distributed applications. It describes how to use Component Object Model (COM) and other technologies to build scalable applications. DNA is not a totally new architecture; it's really a term describing how the various Microsoft technologies fit together.
Figure 1 shows the standard DNA model and how the various parts come together.
A DNA application resembles a classic multitier application in that it is split into layers: user interface, business tier, and data tier. In
Figure 1, the user interface is shown as the presentation layer. In a typical Web application, the user interface is developed in HTML. The HTML is generated on the server using Active Server Pages (ASP) or other objects. The business-logic tier is built using Visual Basic, Visual C++, or Visual J++ and resides on a server. The data tier uses objects built from one of these languages and some type of persistent-data storage such as SQL Server or Oracle database.
The DNA model is important for two reasons. First, the three-tier architecture allows for scalability. You can move the business-logic and data-tier objects and storage to different servers, add other technologies to assist in scaling (more on this in a moment), and add faster hardware to improve performance.