General Application Design Issues

The following links are views into sections of the Duwamish Books articles. For a full list of the articles, look under each individual phase in the Contents pane of this Help file.

Many of the most important development concepts, with wide application beyond the scope of this sample, are mentioned here.

Use of data objects

Business objects are not only abstracted as database entities, they are abstracted as business data objects. This allows Customers, Orders, and Sales to be represented by data that is closely analogous to the actual business object being modeled and that is not limited by what can be represented as a database entity.

Use of disconnected recordsets in a distributed application

Disconnected recordsets and hierarchial disconnected recordsets (introduced in ADO 2.0) allow applications to retrieve data and disconnect from the database (even from the network) and to work off line without burdening the database and network with an open connection. Recordsets also serve as intelligent and language-agnostic data containers in COM and distributed COM applications.

Distributing components with MTS

Microsoft Transaction Server (MTS) simplifies distributed application development by unifying component remoting, resource management, and transaction control under a single technology.

Transaction control

Transactional control techniques are closely coupled with data access technology, so it's not surprising that we have documented our odyssey through the subject.

Performance and scalability

An important criterion for each design decision in the application is application scalability. Scalability is considered with other factors in the following discussions.

Interchangeable components in Visual Basic and Visual C++

Collecting payments from an e-commerce site