Home
Contact Us
Who we are
Client Profiles
Software Design
COM / DNA
Microsoft .Net
Scripts
Current Development Technologies
 Distibuted interNet Architecture (DNA)
Microsoft developed and promoted this technology three to four years ago. The multitier architecture is a fundamental requirement for building a scalable application. Instead of designing an application to run solely on one computer, it is designed to run on multiple tiers or on multiple computers. This is a principle upon which Windows DNA is built. Arete Industries has used Windows DNA exclusively in all of our development efforts over the last several years.
With a Windows DNA-based application, the client application might be as simple as a browser running on a remote workstation. The server side application is an Active Server Pages (ASP) or Internet Server Application Programming Interface (ISAPI) application hosted by a Web server, which may be executing scripts. The scripts invoke objects that execute business logic. The business objects then manipulate data located on a database server.

All of the server-side operations can occur on one or multiple servers. The multitier approach offers the benefit of distributing loads across multiple servers, providing for more scalability than that offered through a single server solution.

 Component Object Model (COM)
An important part of Windows DNA, COM allows a developer to encapsulate business functionality in discrete, self-contained components. And, because components represent discrete tasks, they are also easier to develop, test, and reuse. Applying this to the Web application architecture described above, the scripts executed on the Web server invoke COM objects that implement the business logic.

COM objects lend themselves to building scalable applications in three ways. First, they remove excess business logic from the presentation and data tiers, dedicating each tier to specific tasks. Second, COM objects can share resources, such as data connections. Third, COM objects can be distributed to multiple servers. COM objects also promote high availability of applications by allowing multiple servers to perform the same task.

 Asynchronous Messaging
Another building block for constructing a scalable application is asynchronous messaging. When incoming workloads cannot be predicted, or steps within the application take varying amounts of time to complete, many distributed applications require the ability to handle delays between a request and a response. Message Queuing allows the applications we develop to use components that communicate with one another using queued messages and ensures that messages are routed securely and robustly to and from message queues.

Being able to write applications that do not require immediate responses from either clients or servers allows Arete Industries developers to provide the flexibility required to handle real-world conditions, such as routine pauses within business processes, the onslaught of peak traffic conditions, and temporary network outages (depending on the physical distribution of servers). Using Message Queuing also helps developers write applications that are more readily available and scalable. In WIndows 2000 this technology can be implemented using Queued Components from within the Windows 2000 COM+ environment.

 Active Server Pages (ASP)
Active Server Pages, now in version 3.0, is a script-based interpreted language designed to expedite development of html/dhtml web pages. It mixes html and business logic code together in a single file. When misused this can result in extremely complex code which is difficult to debug, enhance and maintain. Arete Developers have all come from a structured, object-oriented, non-procedural development background, and produce well-designed, structured, consistent ASP code designed to be reuseable and maintainable.
 Microsoft SQL Server
Arete Industries database administrators and developers have been working with SQL Server since 1993, when version 4.2 was initially released. We have developed, or assissted in development, of over fifteen production systems using SQL technologies, including JET, DAO, RDO, ODBC, and finally ADO - versions 1.1 through 2.7. The systems we design are typically driven by SQL Stored procedures for performance and scaleability, and operate through compiled Visual Basic Database objects for reuseability and maintainability. One of the database systems we designed and deployed was the engine for a 350,000 page views per day web site.