Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers Request free information on products written about or advertised in BYTE Submit a press release, or scan recent announcements Talk with BYTE's staff and readers about products and technologies

ArticlesEnterprise Visual Basic? Almost...


October 1996 / Reviews / Enterprise Visual Basic? Almost...

Siemens Nixdorf's ComUnity aims to turn Visual Basic 4.0 into a client/server environment but falls short.

Volker Weber and Hans-Jochen Schmitt

Although Microsoft markets the Enterprise Edition of Visual Basic 4.0 (VB 4) as an enterprise-level client/server tool, the product still lacks the high-level business-logic tools of such client/server mainstays as PowerBuilder.

Now, along comes Siemens Nixdorf, the German computer company, with a major effort to provide an overarching framework for client/server development that exploits VB 4's open programmable objects. Called ComUnity, the framework prescribes how to build distributed client/server applications. The related development environment is called the Open Technology (OT) Framework, which in its fir st incarnati 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


Ratings

Technology      ****
Implementation  ***


Key

***** Outstanding
 **** Very Good
  *** Good
   ** Fair
    * Poor




Three Tiers for ComUnity

illustration_link (26 Kbytes)

Implementing ComUnity applications as OLE servers lets them communicate over a network.


Tailor Your UI with ComUnity

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 .

Up to the Reviews section contentsGo to previous article: Go to next article: Linking Tiers with Remote OLESearchSend a comment on this articleSubscribe to BYTE or BYTE on CD-ROM  
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network