DBMS

S-Designor 5.1

By Sanjiv Purba
DBMS, October 1996 S-Designor is a comprehensive modular toolset for building client/server databases and applications. Each module delivers solutions tailored to a specific role in the project.

The S-Designor CASE toolset integrates four modules, namely DataArchitect, ProcessAnalyst, AppModeler, and MetaWorks. The DataArchitect module is a conceptual and physical data modeling tool. The ProcessAnalyst module supports popular process modeling techniques. The AppModeler is an application generator that works effectively with PowerBuilder, Visual Basic, and other third-party products. The MetaWorks module offers a repository that lets large development teams share components.

These four modules share a common look and feel that is consistent with other Sybase/Powersoft products, such as PowerBuilder. Data entry is intuitive and assisted by online help and item selection lists. This version of the toolset supports the 32-bit environment offered by Windows 95 and NT. Companies that have not upgraded to Windows 95 can opt to run the toolset in 16-bit Windows 3.x environments. I was successful in moving a conceptual and physical data model from the 16-bit to the 32-bit version of DataArchitect without data loss.

DataArchitect

The DataArchitect module is loaded with two levels of features for building and manipulating data models. The user begins to model data at the conceptual level. (See Figure 1.) The Conceptual Data Model (CDM) consists of objects such as a domain, data item, entity, entity attribute, and relationship link between entities. S-Designor also supports an inheritance link between a supertype (parent) entity and one or more subtype (child) entities. The link enables a subset of attributes or key field information to be drawn from the parent entity. It is also possible to generate independent child entities based on a subset of attributes/key field information from a supertype entity.

A CDM is converted to a Physical Data Model (PDM) based on a specific DBMS, such as SQL Anywhere, Sybase SQL Server, Oracle, or Informix. Product specific optimization is specified at the PDM stage.

This module is easy to learn, use, and navigate. Point-and-click functionality permits objects (for example, entity symbols) to be selected from the tool palette and placed onto the worksheet. Zoom functions permit focus to be concentrated on a single cell or on progressively larger areas of the worksheet. Relationships are drawn by moving the mouse through entities with the relationship symbol selected. Cardinality can be represented in accordance with user preference.

The DataArchitect module provides support for a mix of ANSI SQL Standard data types, plus others such as OLE. Users should realize that the data type selected for the CDM may not exist in the database selected for the PDM. In this case, DataArchitect selects a data type from those that are available. For example, I converted the CDM shown in Figure 1 to SQL Anywhere format. The conversion process selected numeric(8,2), a close approximation of the money data type. The conversion process relies on mapping information contained in definition tables stored in ASCII format. These tables can be modified by the user. Customizations (for example, normalization and certain types of extensions) to the PDM, after generation from the CDM, are maintained separately by the DataArchitect module.

Characteristics for objects on the worksheet are manipulated via popup property sheets, which can be used to change font appearance, color, size, and business validation rules. The user is assisted by help lists, pulldown menus, error lists, and detailed message descriptions.

One problem with many corporate data models is their sheer size. It is difficult to work with them on-screen or on paper. By linking submodels into a global model, DataArchitect simplifies the management and manipulation of larger data models. This module also supports reusability by supporting inheritance from existing entities.

ProcessAnalyst

The ProcessAnalyst module manages process models, which are a key tool in most application development methodologies for capturing business requirements and designing solutions. An 11-lesson tutorial is packaged with this module to help users get a quick start. By the end of the tutorial, users will know how to model processes, external entities, flows, and data stores. They will also learn how to annotate and manipulate objects. Figure 2 shows a sample process model.

The look and feel of this module is virtually the same as the DataArchitect module. Data can also be shared between these two modules. I successfully imported the data items and domains from a CPM created using DataArchitect with no loss of information. ProcessAnalyst offers the by-now-familiar property sheet to tailor the characteristics of the model, process, data store, external entities, data flow, and data item.

This module supports decomposition of a process into subprocesses. Functional models are supported to represent data flow from external entities and internal processes. A model can consist of multiple data-flow diagrams - with inputs and outputs shown on each. An integrity check function is available to verify processes, external entities, data stores, off-page connectors, and split-merges.

Popular process modeling conventions supported by this module include the Yourdon/DeMarco and the Gane and Sarson data flow diagramming notations. This module also supports the OMT functional model for object-oriented analysis, which consists of a data-flow component, a data model component, and an object modeling component. S-Designor currently supports only the data-flow component of the OMT model. According to Jay Stevens, Team Leader of Design Tools Technical Support at Powersoft, consideration is being given for future support of the other components of the OMT model.

AppModeler

AppModeler is tightly integrated with DataArchitect. This module builds GUI applications using a PDM, a class library with a 4GL tool such as PowerBuilder 4.0 or 5.0 to generate Windows-based applications. The product currently ships with templates for PowerBuilder 4.0, PowerBuilder 5.0, and PFC (PowerBuilder Foundation Class). Support is planned for third-party frameworks in the future. AppModeler can use models that are established in the DataArchitect module to generate applications with stored procedures and triggers. The module can also interface with other development tools such as Centura SQLWindows, Cognos Axiant, and Cognos PowerHouse. AppModeler release 5.1 generates Visual Basic objects based on the physical database model created by the DataArchitect module.

Data validation is managed at two levels and supports a variety of edit styles, validation rules, and format masks. AppModeler manages business rules on the client platform (PC) using 4GL code and validation rules built into the user interface design tool. On the database server platform, the tool supports the use of constraints, triggers, and stored procedures to manage validation rules and format masks. Business rules can be attached to objects such as a domain, table, column, reference, or link. Use of the domain permits standards to be carried from one project instance to another or across the enterprise. This module supports iterative prototyping techniques by gathering design decisions at the logical level and then automatically generating an application with minimal development investment. When using a prototyping technique, designers should be careful to minimize physical optimization to avoid loss of their interim work.

AppModeler allows optimization of the physical database through the PDM. Physical database characteristics are created using a database DML script, triggers for referential integrity, and other product-specific extensions. This module also reverse-engineers models from existing systems.

Extensive reporting capabilities, based on a comprehensive hierarchical table of contents, are available for all of the modules. S-Designor can produce both standard reports and user customized reports. It is also possible to use the MetaWorks dictionary as a starting point for direct extraction of data using third-party reporting tools.

MetaWorks

MetaWorks is the glue that binds the other modules together. It offers a central dictionary that supports team development by permitting users to sign models out. MetaWorks supports the basic client/server model by positioning the central data dictionary on a central database server (such as SQL Anywhere). By using ODBC, MetaWorks can support the data dictionary on Oracle, Informix, CA-OpenIngres, Sybase SQL Server, Microsoft SQL Server, and SQLBase. The application modules are saved on the client platform. Intersolv ODBC drivers are packaged with the toolset.

The basic process for using MetaWorks is to connect to the database and extract relevant models out of the dictionary. The models are subsequently manipulated on the client platform. Designers who are finished working on models consolidate them back into the central dictionary. It is important to realize that changes made to the model on the client platform are not automatically merged with the central dictionary until consolidation takes place. S-Designor marks objects with a date value to enable identification of changes made to the central model following an extraction.

Extraction operates on objects such as entities, associations, links, relations, entity properties, and symbols. Locking mechanisms restrict access to a single designer at a time. MetaWorks does not currently support true version control; however, according to Powersoft's Jay Stevens, there are plans to integrate MetaWorks with Powersoft's ObjectCycle in the future to provide this capability.

A MetaBrowser management tool provides a high-level view of projects and models in the dictionary. This tool has two components: the MetaBrowser Information Manager and the MetaBrowser Multimodel Manager. The MetaBrowser Information Manager can be used to manage projects, models, and applications. The Multimodel Manager can be used to operate on several projects at the same time for comparisons and modifications.

The S-Designor toolset contains the functionality that organizations typically look for in an integrated CASE solution to support standard application development methodologies. The challenge is to establish the human procedures and discipline to exploit the powerful features that are offered by this valuable toolset.


FIGURE 1


--The user begins to model data in the Conceptual Data Model (CDM). The CDM consists of objects such as a domain, data item, entity, entity attribute, and relationship link between entities.


FIGURE 2


--A Process Model is a key tool in most application development methodologies for capturing business requirements and designing solutions.
Sanjiv Purba is a manager and a senior architect with the Deloitte & Touche Consulting Group. He is also the author of several IT books published by John Wiley and Sons. You can reach Sanjiv at 416-601-6621 or via email at spurba@dttus.com.
Table of Contents - October 1996 | Home Page
Copyright © 1996 Miller Freeman, Inc. ALL RIGHTS RESERVED
Redistribution without permission is prohibited.
Please send questions or comments to mfrank@mfi.com
Updated Monday, September 23, 1996