DBMS

The Evolution of Client/Server CASE

By Maurice Frank
DBMS, January 1996

How the New Case Tools Promise to Simplify Data Managment and Automate Development.


Years ago, pundits proclaimed the death of the CASE (Computer-Aided Software Engineering) market. Yet today, it's hard to conceive of a development project that does not use some kind of modeling tool to design, generate, and manage databases. Today's CASE tools are proving to be indispensable in managing complex data, application, and object designs. These tools are also assuming a greater role in the development and construction process. This article reviews CASE and modeling tools for client/server development. It also examines the emerging stratification of the CASE/modeling category into different classes of tools for managing different kinds of models: physical data models, logical data models, and object and process models.

How We Got Here

CASE tool support for client/server has not been an overnight phenomenon. It's taken several years for today's leading products to evolve to their present level of support. Looking back, it's easy to see several functional stages along the way. By definition, logical design is independent of the type of platform or architecture underlying the physical implementation. The most practical adaptations by CASE tools to client/server development have focused first on physical database design and more recently on application construction. Each side of the client/server equation has seen incremental advances in the degree of CASE tool integration.

CASE tools began their forays into client/server environments by generating, and later reverse-engineering, relational DBMS schema. At first, the tools translated entities and attributes into SQL CREATE TABLE statements and other Data Definition Language (DDL) statements stored in disk files. DBAs could then run the scripts on the DBMS server. As the tools matured, they employed native DBMS drivers to connect to a DBMS so they could run the DDL scripts and create DBMS tables and indexes. (The last two years have seen greater reliance on ODBC instead of native drivers.) As an encore following table creation, CASE tools such as ERwin from Logic Works began generating triggers and stored procedures, often from customizable templates. Along the way, several tools were designed to reverse-engineer existing database schemas into their CASE repositories, and some even lay out entity-relationship (ER) diagrams automatically after they catalog the relationships among tables.

But client/server systems do not live by databases alone. About two years ago, integrating CASE tools with application development tools became a hotbed of activity. Sybase's PowerBuilder uses extended attributes to capture interface properties of controls associated with table columns. Because PowerBuilder stores these attributes in relational tables, several CASE vendors enhanced their ER models to capture extended attributes. They could then export those extended attributes to PowerBuilder's extended attribute tables (many also import extended attributes into a data model). This feature lets you specify interface properties during the modeling process. For example, you could specify a radio button control for a column. Several CASE vendors jumped on the PowerBuilder bandwagon. Gupta's SQLWindows also attracted support from several CASE vendors.

Extended attributes are an important aspect of PowerBuilder development. CASE tools are only now beginning to generate PowerBuilder applications. One of the earliest examples is Sybase's own S-Designor, a CASE tool that Sybase acquired from SDP Technologies in 1995. Version 4.2.1 of S-Designor, which shipped in November 1995, generates DataWindows, windows, menus, and application objects. More important, developers are able to specify ancestors from which generated objects should inherit, including ancestors in third-party frameworks. S-Designor ships with templates that link Sybase's PowerBuilder Application Library to S-Designor. Sybase promises that future versions of S-Designor will support Visual Basic and other application development tools.

With their heads out of the PowerBuilder sands, CASE vendors are also eyeing other client/server development tools such as Visual Basic (especially the new Visual Basic 4.0 Enterprise Edition -- see the cover story, "Visual Basic 4.0: Ready for the Enterprise?"), Borland's Delphi, and Forté Software's Forté. Both Logic Works and LBMS support Visual Basic 3.0, and both are now upgrading their tools to support Visual Basic 4.0. Other vendors that have already tied their tools to VB (or have immediate plans to do so) include Popkin Systems & Software, Sterling Software (which recently acquired KnowledgeWare and its ADW CASE toolset, which is now known as Key:Enterprise), Sybase, Select Software Tools, and Rational Software (the latter two vendors sell object-oriented CASE tools). I expect VB to attract the same broad support now enjoyed by PowerBuilder. Meanwhile, Borland developed a link between Delphi and LBMS's Systems Engineer, and Popkin Systems & Software has announced that it will support Delphi in an upcoming version of System Architect. Select Software Tools (Select Enterprise), Protosoft (Paradigm Plus), and Sterling have (or will soon) integrated their CASE tools with Forté.

Despite wider and deeper integration between CASE tools and client/server application development tools, current levels of integration are often little more than thin, snapshot-in-time bridges built between the two islands of design and construction. In theory, a design model is a high-level abstract view of a working implementation, yet today's tools rarely treat the model and the application or database as two views of the same thing. Today they remain two separate things that can exchange and translate relatively small parts of their world views. Typically, you create a design model and then generate or build the application in a one-way process.

Another force shaping today's CASE for client/server market is the greater participation by object-oriented (OO) CASE vendors. OO CASE tools embrace object analysis and design methods and notations, as opposed to ER and structured analysis and design diagrams (although some object methods and notations trace their lineage to earlier data and process models). OO CASE tools initially generated DDL for object-oriented DBMSs, but some also began mapping classes to RDBMS tables, reflecting the fact that many OO applications interact with an RDBMS, not an ODBMS. On the application side, the usual targets include C++ and Smalltalk, because these languages carry the flag in most OO camps. However, OO CASE vendors such as Rational and Protosoft have started to support PowerBuilder 4.x and Visual Basic 4.0, because each product steers developers toward greater reliance on classes as an integral part of its application structure. OO CASE vendors finally have a place to hang their hats in the 4GL world.

Several vendors have marketed very low-cost ($500 or less) versions of their CASE tools. These appeal to solo developers, and most support desktop products such as Microsoft Access or Xbase. Unlike their big brothers, who typically support team development, the desktop versions are usually single-user, and some features may also be limited. For example, Sybase's Star-Designor is a subset of S-Designor, but it supports only physical data models, not conceptual models. Logic Works also markets desktop versions of its ERwin product.

On the Horizon

What's next? At least three significant developments signal major changes in how CASE tools must support client/server DBMS and application development tools. On the server side, the next major challenge to client/server CASE vendors will be supporting new object features blended into RDBMSs such as the forthcoming Oracle8. You would expect that CASE tools with strong OO modeling features would be well-primed for this extension, but until DBMS vendors reveal more details regarding their object extensions, it is hard to say what will be needed and how much effort will be required to support it. I also expect object RDBMSs to have an impact on application development tools as well.

The modeling of decision-support and data warehouse applications is another frontier that few CASE vendors have explored, but I assume this market will open up within a year or two. Ralph Kimball, a DBMS contributing editor and data warehouse consultant, has discussed the inappropriateness of ER models for decision-support applications (see "Is ER Modeling Hazardous to DSS?" Ralph Kimball, DBMS , October 1995). Logic Works is investigating how to support (in a future version of ERwin) the modeling of star schemas, which are often used to represent data warehouse designs. Asymetrix is also weaving together models and queries with its new InfoAssistant product. InfoAssistant is an end-user query tool that can create queries using information from an Asymetrix Info Modeler model.

On the application side, component thinking is slowly replacing systems thinking, especially as OLE becomes more common. CASE vendors must extend their tools to model and generate independent components in addition to integrated systems and applications. Again, I suspect that CASE tools supporting class modeling will have a head start in this arena. One example of this approach is Select Software Tools' Select Enterprise for Visual Basic. This object modeling CASE tool generates in-process and out-of-process OLE servers as part of a Visual Basic 4.0 application.

A housekeeping issue to watch is the future of open repositories. Today, several kinds of tools have their own storage mechanisms, although some tools interact with repositories used by other tools. Maintaining multiple representations of the same system is asking for trouble, so I would not be surprised to see more developers turn to repositories shared by multiple tools. LBMS recently introduced its Object Manager product, which serves as a repository for application objects created by tools such as PowerBuilder and Visual Basic. Object Manager also stores test scripts for SQA's TeamTest. I also expect vendors that sell DBMS servers, application development tools, and CASE tools to encourage developers to use RDBMSs as shared object and model repositories.

Categorizing CASE Tools

The client/server CASE tool market consists of tools that support the analysis, design, and modeling of client/server database systems. This market encompasses a diverse group of products with varying feature sets. Classifying tools along functional lines can help you choose an appropriate product for your environment. (Ignore vendor terms such as "high end" or "low end," because these rarely convey any useful or meaningful comparative information.) The following categories are based on broad feature sets:

Data Modeling Tools

Some of the most popular client/server CASE tools limit their scope to data modeling. Two examples are the ERwin product family and S-Designor. Both ERwin and S-Designor use ER diagrams to capture database designs, and both offer strong support for schema generation, reverse engineering, and integration with front-end application development tools such as PowerBuilder. However, a key difference is that S-Designor lets analysts model separate logical and physical designs, while ERwin supports only one kind of model at a time. You can use ERwin to design either a logical model or a physical model, but you would have to synchronize them manually. S-Designer can generate a physical model from a conceptual model, and it will synchronize the two while preserving developer decisions such as denormalized attributes. As an ERwin user, I have found that its strong support for physical database design sometimes makes it easy to drift away from a logical focus in favor of server-specific requirements.

Most data modeling CASE tools employ various flavors of ER diagrams. An exception is Asymetrix's InfoModeler (see "Black Belt Design," DBMS Interview, September 1995), which uses Object Role Modeling. InfoModeler graphically represents a design as objects that play roles, and it can also express a design as a collection of English-like fact statements. Many developers have found this feature useful for verifying designs with non-technical end users.

Although several CASE tools generate schemas for RDBMSs, Cast Software's CAST Workbench is one of the few to integrate data modeling with other database administration tools. CW-Designer, an ER modeling tool, is one of six applications in CAST Workbench. DBAs use the other modules to reverse-engineer, write, test, and manage scripts, and to migrate data into Sybase SQL Server and Microsoft SQL Server databases. Because many client/server projects are still performed by small teams, the same developers often handle a broad array of tasks ranging from database administration to systems design.

Process Modeling Tools

Data shouldn't just sit around. It must do something. Consequently, client/server CASE tools help developers design programs to manage data. Traditional process modeling techniques such as data flow diagrams, structure charts, and state transition diagrams may seem like dinosaurs in our object-oriented age. But, unlike a Raptor, these techniques are still alive and kicking in many CASE tools. System Architect supports more than a dozen different process modeling diagram styles, along with several flavors of ER diagrams and several different object modeling diagrams. Other products that integrate process and data modeling include Silverrun-Enterprise from Computer Systems Advisers and EasyCASE Professional from Evergreen Software Tools.

Blending data, process, and object diagrams with a common repository lets developers design systems from different viewpoints using various levels of abstraction. For example, LBMS integrates several products around its repository. Systems Engineer is a modeling tool that also generates database schemas (from the SE/ServerBuilder module) and application components. It also models GUI applications using diagrams that illustrate navigation paths among windows or forms. Process Engineer provides online methodology guides as well as project management features. Also, Object Manager extends LBMS's repository technology to application development tools, testing tools, and other development products, so they can benefit from repository-based documentation, versioning, check-in, and check-out controls.

Recently, CASE tools have shifted the focus of their process modeling techniques along two lines: object-orientation and business process reengineering. In addition to Popkin's System Architect, Intersolv's Excellerator II and Visible Systems' Visible Analyst Workbench (VAW) supplement process diagrams based on structured techniques with new diagram types for modeling classes and objects.

Object Modeling Tools

Object orientation is not simply a different way to program, it's also a different way to analyze, design, and model systems. While numerous object modeling approaches have emerged over the last five years, about a half dozen have pulled ahead of the pack to gain widespread marketshare. Following in their footsteps, a growing collection of object modeling CASE tools support one or more object modeling diagram and notation styles. These techniques are often named after their originators, including Grady Booch, James Rumbaugh, Ivar Jacobson, Peter Coad and Ed Yourdon, and others.

As today's application development tools become increasingly object-oriented, object modeling CASE tools become more relevant to application developers who do not use C++ or Smalltalk, the traditional focus for object CASE tools. Some popular object CASE tools include Rational Rose by Rational Software, Paradigm Plus by Protosoft, and Select Enterprise by Select Software Tools, which is based on Select OMT Professional. All three now generate application objects for development tools such as PowerBuilder, Gupta SQLWindows, Forté, and Visual Basic.

Methods and Manpower

In some ways, a CASE tool is like a word processor: If you don't know how to write, not even the richest feature set will turn you into a Shakespeare. Even the best CASE tool cannot turn you into a great systems designer if you don't understand the basics of analysis and design. Some CASE vendors, such as LBMS, provide methodology modules that guide developers through the recommended steps in a development project. (LBMS recently acquired Corporate Computing Inc., which markets a methodology geared to developing GUI applications.) The methodologies are usually customizable, so companies can tailor them where necessary.

Beyond online methodology aids, several consulting firms, such as Arthur Andersen and Ernst & Young, provide on-site counselors with the CASE tools they sell. These mentors advise clients not only on the mechanics of making the CASE tool work, but on the fundamental procedures and techniques for developing large systems that involve teams or leagues of developers. Many of the large shops using these services began using CASE tools on mainframe projects, and now utilize them on client/server systems as well. Among the larger shops, Texas Instruments' IEF CASE tool is a popular choice for enterprise-wide development. IEF, supplemented by Texas Instruments' Composer object development environment and Arranger object assembly environment, provides a full life cycle development solution with an implicit methodology.

Building Bridges

Not every tool fits into a classification scheme, and sometimes the most interesting ones are the hardest to categorize. One example is LEAD (Logical Entity Action Design), by Client Server Designs (415-321-5338), a Menlo Park, Calif.-based consulting and applications development firm. LEAD is a bridge between ERwin or System Architect and SQLWindows. LEAD generates a working SQLWindows application, the database, and test data.

Developers build a LEAD model using System Architect or ERwin. The model includes ER diagrams, and if System Architect is used, developers can also create entity state transition diagrams. LEAD's linchpin is the use of two-character prefixes for column names in ER diagrams. These prefixes signify a domain such as date, user ID, state, phone, and so on. LEAD provides almost 20 built-in domain prefixes, and developers can add new ones.

The LEAD Toolkit Console program reads a text file exported by the CASE tool. LEAD generates an application using the LEAD class library, a set of SQLWindows QuickObjects. Each entity in the model becomes a table in the database and a form in the application. (LEAD can also generate one-to-many forms.) Each field on a form is a SQLWindows QuickObject that is based on a LEAD domain.

Client Server Designs is currently working on LEAD version 2, which will generate complete applications for Visual Basic, PowerBuilder, and C++. It will also create OLE controls, so any development environment that supports OLE controls will be able to benefit from LEAD's ability to translate model specifications into application components. Client Server Designs plans to ship version 2 in late 1996.

CenterView Software's (South San Francisco, Calif., 415-873-1295) Choreo is another example of a third-party tool that builds applications from database schemas. Choreo is not a CASE tool, but it performs functions that some CASE tools are now adopting. Choreo reads a DBMS catalog and imports information about tables, columns, primary and foreign keys, indexes, and relationships in a database. If the database is well-designed, Choreo can infer most of the relationships among tables, and it will prompt the developer when it cannot. Choreo stores this information in a "model" file, which is more like a database of its own because no graphical diagram is involved.

A developer runs the Choreo DataLink Manager along with Visual Basic, and drags and drops fields from the Choreo model onto controls on a Visual Basic form. Choreo includes its own grid control, which responds to the drag and drop of a field from the Choreo model. Developers can use other third-party grid controls, but they must write calls to the Choreo API. Once Choreo learns the linkage between a field and a control, it manages all interaction between the Visual Basic application and the database. This approach enables Choreo to coordinate data navigation across one or many windows without additional programming. Choreo includes its native database drivers for Oracle, Sybase and Microsoft SQL Server, and Gupta's SQLBase. An earlier version of Choreo for Gupta's SQLWindows is now marketed by Gupta.

Logic Works is developing a version of ERwin for Visual Basic that will create the Choreo model file from an ERwin model. ERwin will also generate Visual Basic 4.0 forms that use the Choreo controls and database engine.

Designing Complexity

Although CASE tools capture the extensive detail necessary to generate the server side of a client/server database, you'll still need a good DBA tool for many administration tasks. Now, CASE tool vendors are capturing more information that they use to generate 4GL application components for several popular front-end development tools. This makes client/server CASE tools more valuable because they enable developers to spend more time and effort thinking about what a system should do, instead of laboring over the mechanical construction of forms, menus, and related objects. After all, doing the right thing is as important, if not more important, than perfecting or optimizing its implementation.

Client/server systems are increasingly complex. Even if you use rapid prototyping to gather user feedback regarding interface design and application function, any non-trivial system needs a well thought-out design. CASE tools enable developers to model database applications and integrate with both back-end DBMS servers and the front-end application development tools. If you're developing a sophisticated client/server system without using a CASE tool, you may be doomed for extinction. (For an extensive list of CASE tools, see Table 1.)


Maurice Frank is DBMS's editor, based in Marietta, Georgia. You can reach him via CompuServe at 72167,736 or via the Internet at mfrank@mfi.com.

TABLE 1. Product Chart

Product/Company Description
Bachman Information Systems Inc.,
Burlington, Mass.
617-273-9003 or fax 617-229-9904
Several tools, including GroundWorks for data and process modeling, Terrain for database generation, Ellipse for application development, and WindTunnel for database performance monitoring
CAST Workbench
Cast Software Inc., San Francisco, Calif.
415-284-7970 or fax 415-284-7979
A collection of programs, including CW-Designer, an entity-relationship modeling tool, and several database administration programs
Chen Workbench
Chen & Associates Inc., Baton Rouge, La.
504-928-5765 or fax 504-928-9371
A suite of tools for entity relationship diagramming, data flow diagramming, normalization, schema generation, and reverse engineering
Composer, Arranger
Texas Instruments Software, Plano, Texas
214-995-2011 or fax 214-575-4144
An integrated set of modeling and application development tools
Navigator Systems Series
Ernst & Young LLP, Dallas, Texas
214-665-5000 or fax 214-665-5555
A methodology-based application development environment that supports application packages such as SAP R/3
Designer/2000
Oracle Corp., Redwood Shores, Calif.
415-506-7000 or fax 415-506-7200
Data and process modeling tools that integrate with Oracle's Developer/2000 application development tools
EasyCASE Professional
Evergreen Software Tools Inc., Redmond, Wash.
206-881-5149 or fax 206-883-7676
Integrated data and process modeling (several diagram types), schema generation, reverse engineering, and support for PowerBuilder
ERwin/ERX
Logic Works Inc., Princeton, N.J.
609-252-1177 or fax 609-252-1175
A data modeling tool with versions that integrate with PowerBuilder, Visual Basic, and SQLWindows
Excellerator II
Intersolv, Rockville, Md.
301-838-5000 or fax 301-838-5432
A data, process, and object modeling CASE tool that integrates with Intersolv's APS development tool and PowerBuilder
InfoModeler, InfoAssistant
Asymetrix Corp., Bellevue, Wash.
206-462-0501 or fax 206-637-1504
InfoModeler is a data modeling tool based on Object Role Modeling; InfoAssistant is an end-user query tool that can build queries based on an InfoModeler data model
Key:Enterprise
Sterling Software, Applications Development Division, Atlanta, Ga.
800-444-8575 or fax 770-364-9454
A suite of tools including data and process modeling (Key:Model) and application development (Key:Assemble). Also integrates with PowerBuilder and Visual Basic
Systems Engineer, Process Engineer, Object Manager
LBMS Inc., Houston, Texas
713-625-9300 or fax 713-625-9480
Systems Engineer is a data and process modeling tool that integrates with PowerBuilder, Visual Basic, and other tools; Process Engineer is a methodology and project management tool; Object manager is a shared repository
Paradigm Plus
Protosoft Inc., Houston, Texas
713-480-3233 or fax 713-480-6606
An object modeling CASE tool that generates PowerBuilder and Forté applications
Rational Rose
Rational Software Corp., Santa Clara, Calif.
408-496-3600 or fax 408-496-3636
An object modeling CASE tool with versions that generate PowerBuilder and SQLWindows applications; an upcoming version will generate Visual Basic applications
S-Designor
Sybase Inc., Concord, Mass.
508-287-1500 or fax 508-369-4695
A data modeling tool that generates PowerBuilder application objects (DataWindows, menus, windows); generated objects can inherit from objects in application frameworks (future versions will support Visual Basic and other development tools)
Select Enterprise
Select Software Tools Inc., Santa Ana, Calif.
714-957-6633 or fax 714-957-6219
An object modeling CASE tool with versions that generate applications for Forté and Visual Basic
Silverrun-Enterprise
Computer Systems Advisers Inc., Woodcliff Lake, N.J.
201-391-6500 or fax 201-391-2210
Four integrated tools for data and process modeling; generates applications for PowerBuilder, SQLWindows, Blyth Software's Omnis 7, and others; runs on several platforms
System Architect
Popkin Systems & Software Inc., New York, N.Y.
212-571-3434 or fax 212-571-3436
Supports several diagram types and notation styles for data, process, and object modeling; also integrates with PowerBuilder and SQLWindows; support for Borland's Delphi has also been announced
Visible Analyst Workbench
Visible Systems Corp., Waltham, Mass.
617-890-2273 or fax 617-890-8909
A data, process, and object modeling CASE tool. Integrates with PowerBuilder and SQLWindows
A representative sample of CASE tools that support client/server database and applications development.


Subscribe to DBMS and Internet Systems -- It's free for qualified readers in the United States
January 1996 Table of Contents | Other Contents | Article Index | Search | Site Index | Home

DBMS and Internet Systems (http://www.dbmsmag.com)
Copyright © 1996 Miller Freeman, Inc. ALL RIGHTS RESERVED
Redistribution without permission is prohibited.
Please send questions or comments to dbms@mfi.com
Updated Sunday, December 1, 1996