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
Why a new methodology?  
Previous Page | Next Page | Table of Contents

It is also important to ask ourselves what the point is of adopting yet another development methodology. Isn't the point just to get things done? Why all this theory?

Well, the answer to that is that if you intend to be developing softawre for any length of time, it is important to find ways to do it well. And to do that, you should adopt a development methodology that will make the process of software development more a processing of engineering than a process of artistic creation

And of course, the best way to understand why the DNA is such a good development methodology is to look at its role in the history of software development.

Understanding the historical stages?  
If we were to review the history of application development on the Personal Computer it would encompass a morass of information.

But if we were to focus on information related only to the nature of application development, we can begin to see an evolution that stretches from the early days of software engineering into our near future. This history can roughly be broken into three stages:

  1. Monolithic applications (single encapsulated executables)
  2. Client/server applications (data driven models)
  3. Collaborative Systems (Three tier and 'n' tier application)

Let's take a look at each of these methodologies.

Previous Page | Next Page | Table of Contents