on works with VB 4. Siemens Nixdorf plans to port it to other languages, including C++. Our examination of a beta version revealed an ambitious product that nonetheless falls well short of its goals.
Members of the ComUnity
ComUnity consists of a three-layer application model that comprises a Presentation Layer, a Business Logic Layer, and a Database Layer (
see the figure
). This model, like other three-tier architectures, offers advantages in scalability, usability, maintenance, and performance compared to monolithic applications. You can distribute the layers across a network, with the Presentation Layer on users' desktop computers, the Business Logic Layer on an applications server, and the Database Layer on a database server.
To implement ComUnity's architecture in VB, Siemens Nixdorf had to employ Microsoft's standard development tools, including VB 4 itself, Microsoft Visual C++ 2.2, and OLE components. But b
ecause these tools are best suited for small-scale software projects, Siemens Nixdorf added more tools to improve support for large projects.
Inside the OT Framework
Central to OT Framework's Database Layer is a relational data dictionary that serves as a central repository where all the tables, attributes, and relations are managed. From the data dictionary, OT Framework generates Open Database Connectivity (ODBC) data sources, migrates databases, generates SQL statements for data access, and even produces simple entry forms for the user interface.
Unfortunately, even though you can manage the data dictionary with a simple data-entry and maintenance tool, OT Framework provides no graphical representation of the data-dictionary information. It does, however, import data models produced with CASE tools, such as Microtool's CASE 4.0 and IBM's Mood.
The data dictionary becomes part of the run-time environment repository that's distributed with OT Framework applications. Because t
he data dictionary contains information on the relationships between tables, applications can provide for relational integrity even if the underlying database has no such provisions.
The Presentation Layer, which establishes the user interface (UI), is built around VB 4. A forms generator uses the data-dictionary information to generate default VB 4.0 data-entry forms. You can customize these forms, but they also work with real data right out of the box.
OLE Automation acts as the glue between the Presentation Layer UI and the Business Layer. Perl scripts link code and single UI controls, but the program generates them automatically, so users don't have to deal directly with Perl. A cross-checker monitors the UI forms against any modifications in the data dictionary.
The forms are stored in the run-time repository, and you can use OT Framework tools to further customize the UI by working on the forms data. Users can use the Tailoring Tool (
see the screen
) to customize the UI:
data-entry fields can be switched off, changed, or moved, even in the delivered version of an application. Developers who are skittish about giving users this much control over the UI can turn the tailoring tool off. Regardless of whether a site contains some highly individualized UIs, centralized program updates can merge with them seamlessly.
Putting It All Together
As
the figure
indicates, the glue between the UI and the database is the Business Logic Layer. OT Framework implements this layer in VB 4 code using the new VB 4 class concept. This pseudo-object-oriented feature allows you to define reusable classes and instances, but it doesn't support inheritance or polymorphism. OT Framework comes with predefined classes for UI handling and general-purpose business applications, such as order entry.
The application framework itself is a template-based VB data dictionary called Code Wizards. Regrettably, except for a run-time debugger, there are no tools in
the Business Logic Layer -- you're on your own as far as business processes are concerned. Thus, any higher-level knowledge must go from paper directly into VB code.
An Incomplete Toolkit
If you're not familiar with the VB environment, ODBC data sources, or tool-based software development environments in general, installing ComUnity can be a bit daunting. The beta version of the setup routine had some rough edges; the ODBC data sources for the data dictionary and the target applications are not added automatically. You must also add the VB Code Wizards and Form Wizards manually to the VB environment.
From a lone developer's point of view, OT Framework's major advantage is its vast library of reusable VB code for business applications software. The tool is rather loosely integrated with the VB environment. For small-scale projects, it does not go much beyond VB 4 or other add-ins and components that are on the market.
ComUnity also lacks an integrated version-control and projec
t management tool. It relies on Microsoft Visual Source Safe, which comes bundled with the VB 4 Professional Edition, for version control. But Siemens Nixdorf says it's working to integrate Microsoft Project into a future version of ComUnity OT Framework.
Missing from this first implementation of the ComUnity architecture are integrated Upper-CASE tools, such as data modelers and object-oriented modeling tools. Sinking the whole business logic into pure VB code is asking for trouble, especially if users ask for changes in the application.
As long as you equate cross-platform development with Windows 95 and NT on Intel platforms, you'll have no problems with OT Framework. Its VB-centric approach restricts you to those platforms.
In the final analysis, ComUnity OT Framework caters to very specific needs. If you're a VB developer building large-scale business applications and are willing to learn a new application framework, give version 1.0 of ComUnity OT Framework a closer look. Everyone else shoul
d take a pass on it for now.
Product Information
ComUnity OT Framework.......................$1000 per seat
(quantity discount available)
Siemens Nixdorf
Information Systems, Inc.
Burlington, MA
Phone: (800) 225-1484
Circle 983 on Inquiry Card.
Siemens Nixdorf Informationssysteme AG
Munich, Germany
Circle 984 on Inquiry Card.
HotBYTEs
- information on products covered or advertised in BYTE
Technology ****
Implementation ***
Key
***** Outstanding
**** Very Good
*** Good
** Fair
* Poor
illustration_link (26 Kbytes)

Implementing ComUnity applications as OLE servers lets them communicate over a network.
screen_link (30 Kbytes)

ComUnity OT Framework's Tailoring Tool lets users modify a custom application's UI.
Volker Weber and Hans-Jochen Schmitt are principals at ifos, a consulting firm in Darmstadt, Germany. They can be reached at
100120
.577@compuserve.com
.