Competitive Analysis of Market Leaders in Data Modeling

24
Competitive Analysis of Market Leaders in Data Modeling: PowerDesigner, ERwin and ER/Studio NOVEMBER 2008 WHITE PAPER

Transcript of Competitive Analysis of Market Leaders in Data Modeling

Page 1: Competitive Analysis of Market Leaders in Data Modeling

Competitive Analysis of MarketLeaders in Data Modeling:PowerDesigner, ERwin and ER/Studio

NOVEMBER 2008

WHITE PAPER

Page 2: Competitive Analysis of Market Leaders in Data Modeling

i

TABLE OF CONTENTS1 Introduction1 Product Overviews

1 ER/Studio 7.61 ERwin Data Modeler 7.22 PowerDesigner 15.02 User Interface Differences3 Modeling Features

5 Required Features for a Data Modeling Solution5 Model Types

6 Conceptual ? Logical ? Physical ?Logical ? Conceptual

8 Model Comparisons and Merges8 Impact Analysis10 Reverse / Forward Engineering10 Modeling Notation

11 Import / Export11 Database Support16 Repository (Collaborative Modeling)17 Extensibility and Customization18 Business Process Modeling19 Object Oriented Modeling19 Enterprise Architecture Modeling19 Dependency Matrices20 Projects20 Framework Matrices

21 Summary21 About the Author

TABLE OF FIGURES4 Figure 1 PowerDesigner Orthogonal Layout4 Figure 2 ER/Studio Orthogonal Layout7 Figure 3 : PowerDesigner LDM Tools9 Figure 4 ERwin Impact Analysis9 Figure 5 PowerDesigner Impact Analysis13 Figure 6 PowerDesigner Oracle Physical Options14 Figure 7 ER/Studio Oracle Physical Options

14 Figure 8 ER/Studio Oracle Partition Support15 Figure 10 PowerDesigner Oracle

Datatype Examples15 Figure 11 ER/Studio Oracle Datatype Examples18 Figure 12 PowerDesigner Allows Data to be

Assigned to Business Processes

Page 3: Competitive Analysis of Market Leaders in Data Modeling

INTRODUCTION

When a project requires data modeling, there is a choice of several different products. The three market-leadingproducts are ER/Studio (from Embarcadero), ERwin (from CA) and PowerDesigner (from Sybase). All three will allow amodeler to create data models, reverse engineer databases, document database systems, create basic reports andcreate/modify diagrams in a Windows-standard manner. If an organization needs to create a database one time,generate the script to build it and never modify it again, then the best choice would be the least expensive of thethree products. However, it is rare that an organization needs to create one database and leave it alone. As abusiness' needs get more complex, the products reviewed in this paper quickly diverge. There is one clear leaderamongst them: PowerDesigner.

PRODUCT OVERVIEWS

With all tools reviewed, there were similarities. All modeling tools reviewed provide a drawing canvas and a navigatoror explorer and a log window. Toolbars can be turned on or off, but only PowerDesigner allows for toolbar customization.All tools have undo/redo capabilities. These are Windows applications and, as such, are intuitive from a user-experienceperspective. Please see the table for differences in user-experience features following the vendors' descriptions.

ER/Studio 7.6

From the Embarcadero web site, ER/Studio is “an industry-leading data modeling tool, helps companies discover,document, and re-use data assets. With round-trip database support, data architects have the power to easilyreverse-engineer, analyze, and optimize existing databases. Productivity gains and enforcement of organizationstandards can be achieved with ER/Studio's strong collaboration capabilities.”

Downloading ER/Studio was straightforward and easy. I was able to download an evaluation copy directly fromtheir website. This evaluation is valid for 15 days, which is certainly enough time to properly evaluate the solution.The installation went flawlessly.

I was contacted by Embarcadero a few times, by both phone and email. When I asked a couple of questionsregarding generating LDMs and PDMs from CDMs, I was offered a demonstration. During the demonstration, theyattempted to meet my requests of creating the LDM from a CDM. Although EA/Studio is used for the CDM creation,they were able to export the model file and send it directly into ER/Studio for LDM genesis. However, when I asked forthem to make a change in the LDM and have that show in the CDM, the import into EA/Studio did not work asexpected. Upon export from EA/Studio into ER/Studio, the object's GUID (identifier) is not kept. After modificationsto the LDM or PDM, an import back into EA/Studio will not update the original object – it does not identify thatobject – EA/Studio creates a secondary object so that the modeler still has the information available.

Additional issues that arose during the demonstration will be addressed in the appropriate sections throughoutthis document.

ERwin Data Modeler 7.2

CA states “CA ERwin Data Modeler is a data modeling solution that enables you to create and maintain databases,data warehouses and enterprise data resource models. These models help you visualize data structures so that you caneffectively organize, manage and moderate data complexities, database technologies and the deployment environment.”

When I made an attempt to download ERwin, I found that the link on the website was broken. I called CA torequest an evaluation copy of ERwin. After gathering my information, I was told that a salesperson would call meback. I never received a phone call from a salesperson. Two days later, I tried the link again and was able tosuccessfully obtain an evaluation copy – good for 25 entities and 15 days.

Installing Data Modeler seemed to work correctly. However, it did not create a Program Group in Windows, nor didit create a desktop link for starting the product. In order to use the modeling tool, I needed to navigate through theWindows folder hierarchy to find the program.

1

Page 4: Competitive Analysis of Market Leaders in Data Modeling

PowerDesigner 15.0

Sybase “PowerDesigner uniquely combines several standard modeling techniques (UML, Business Process Modelingand market-leading data modeling) together with leading development environments, such as .NET, Workspace,PowerBuilder, Java, and Eclipse, to bring business analysis and formal design solutions to the traditional softwaredevelopment lifecycle. And it works with more than 60 RDBMS.”

The ability to download the fully functional version of PowerDesigner 15 was provided from Sybase's website.Installation was flawless.

User Interface Differences

2

Feature PowerDesigner ERwin ER/Studio

Model Organization Yes, a full workspace that canbe saved independently fromthe models. Multiple modelsand model types can be opensimultaneously.

No. The model explorerwithin the tool only allowsvisibility into one model at atime, regardless the numberof open models.

No. The model explorer onlydisplays one model. There is,however a set of tabs withinthe tool to easily changefrom one model to another.

Workspace Yes—this can be savedindependently from themodels. Full flexibility andorganization is provided.

No. No.

Multiple Diagramswithin a Model

Yes. Yes. Yes, through the use ofsub-models.

Subject Areas in aModel

Yes, via UML standardpackages—allows nesting.

Yes, but only one level. Yes, through the use ofsub-models.

Object Placement Standard windows controls Standard windows controls Standard windows controls

Model Layouts Auto layouts include Basic,Hierarchical, Organic,Orthogonal, Circular, Treewith scope of selectedsymbols or all symbols.

Under Format->Preferences,there is a “layout entirediagram” button but it didnot work, even when tableswere stacked on each other.

Auto layouts include Circular,Hierarchical, Orthogonal,Symmetric, Tree. All objectswere included.

Freeform Text Yes. No. Yes.

Customize Toolbars Yes. No. No, but dockable.

Edit Text Directly onGraphic

Yes. Yes. Yes.

Page Grid Yes. Yes. Yes.

Find Objects Yes. Yes. Yes.

Product Documentation Yes, there are PDF versions ofthe documentation as wellas full documentation onlineat http://sybooks.sybase.com.

Product documentation isnot available online.

Yes, there are PDF versions ofthe documentation as wellas full documentation onlineat http://www.embarcadero.com/resources/documentation.html

Undo/Redo Yes, unlimited. Yes and when using therepository, the undo/redo ismaintained across modelingsessions.

Yes, but the buffer getscleared when executingmany functions (i.e., LDM ?

PDM generation).

Zoom in/out Yes. Yes. Yes.

Page 5: Competitive Analysis of Market Leaders in Data Modeling

Modeling Features

3

Feature PowerDesigner ERwin ER/Studio

Conceptual, Logical andPhysical Models

Yes No No, but conceptual modelsavailable in a separate tool.

Naming Standards Yes Yes through templates Yes, extensive support.

Shortcuts to Objects in OtherModels

Yes No No

Templates for ModelCreation

Yes Yes Yes

Check Model (Validation) Yes—customizable toinclude user-definedconstraints such astables must have threecolumns.

Yes Yes but not customizable.

Multidimensional Modeling Yes, extensive Yes Yes

Generate Test Data Yes No No

Impact and Lineage Analysis Yes No Minor support

Object Oriented Model Yes No No

Business Process Model Yes No No but supported in adifferent tool

Enterprise ArchitectureModel

Yes No No

Projects and FrameworkMatrices

Yes No No

User Profiles Yes No No

Mapping Tool (Connectionsbetween objects in differentmodels)

Yes No No

Inter-Model Synchronization Extensive, CDM-LDM-PDM, including othermodel types

Yes, only with LDM-PDM Yes, only with LDM-PDM

Page 6: Competitive Analysis of Market Leaders in Data Modeling

4

Figure 1 PowerDesigner Orthogonal Layout

Figure 2 ER/Studio Orthogonal Layout

Page 7: Competitive Analysis of Market Leaders in Data Modeling

REQUIRED FEATURES FOR A DATA MODELING SOLUTION

Model Types

To fully model a system, it is necessary to combine business analysis with technology implementations. Where datamodeling is concerned, an organization must create conceptual data models, logical data models and physical data models.

A conceptual data model (CDM) is usually in the form of an entity-relationship diagram, however it is purely dataand relationships. A CDM is not relational. It is developed in order to understand, capture, and analyze the businessneeds from a data perspective. These models will be devoid of implementation details (data storage structures) orsoftware constraints. Entities, attributes and identifiers are found in a CDM. Additionally, the relationships andinheritances that connect the objects, or artifacts, exist in the CDM. The CDM is a higher-level business model. Someof the relationships might be one-to-many yet some might be many-to-many. The CDM will typically be created priorto an LDM for a new system. The CDM might also be used for an existing system where the technology needs to beverified with the business.

Once a CDM has been created, a modeler should be able to generate a logical data model (LDM) from it. The LDM isquite similar to the CDM in terms of the objects that are contained therein. However, the beginning of physical datastorage is modeled in the LDM. Many-to-many relationships are not permitted in an LDM so they becomeintermediate entities. One-to-many relationships become primary key-foreign key identifiers. LDMs illustrate thelogical entity types, the data attributes describing the entities and the relationships between the entities.

A CDM does not have foreign-key constraints—these are created when a CDM is used to generate an LDM.Additionally, while a CDM supports a many-to-many relationship, the LDM does not permit many-to-many. Since theLDM is relational, many-to-many relationships cannot exist as many-to-many violates relational storage concepts. TheLDM is relational but the CDM can transform to different types of logical models (hierarchical, object-oriented, andrelational) so the CDM is better to represent the use of the data by the business.

The physical data model (PDM) would typically be created after the LDM. This model will be used to design theschema of the database that will be used for the system. Entities become tables, attributes become data columns andthe relationships will be implemented in the database-specific structures (referential integrity, stored procedures).When creating or generating a PDM, the specific database is chosen (Oracle 11i, Sybase ASE 15, Microsoft SQL Server2008 are several choices). The PDM is frequently used to generate the data description language (DDL) that will allowfor database creation or modification.

The LDM and the PDM are similar but vastly different in terms of the level of detail each supports. The LDM is usedto explore domain concepts with the business stakeholders; the PDM is used to create and maintain the database.Multiple PDMs can be generated from a single LDM—this can be useful for database migrations, creation of productionand development databases or application migrations.

A modeling tool should provide the ability to model at any level, with generation to the other model types. Allartifacts should be linked to their corresponding objects in the other models (for example, the entity “Customer” inthe CDM should be linked to the “Customer” entity in the LDM as well as the “Customer” table in the PDM). Alllinkages should be maintained in the modeling tool so that a proposed change in an object can be analyzed beforeit is changed.

5

Page 8: Competitive Analysis of Market Leaders in Data Modeling

6

Conceptual ? Logical ? Physical ? Logical ? Conceptual

A data modeling tool MUST support round-trip engineering. Whether a modeler is starting from a conceptualmodel or reverse engineering a database into a physical model, a tool is useless unless it can support all aspects. Thisis baseline functionality. Other aspects of the tools, discussed herein, might be “nice to have” but the ability for a toolto support complete traceability and round-trip engineering must be present.

When a modeler receives requirements or specifications from a business unit, the first step is to create aconceptual data model. In many cases, it would be useful to have a business process model as well. The CDM wouldbe tied to the business model so that the stakeholders within the organization would have an understanding of thedata and its use to support the processes. This also ensures that data elements used in a system are necessary. Thereare many existing systems and applications that carry data that is never used.

After the CDM has been created, the next step would be to generate an appropriate model to begin development.Within the scope of this paper, that model would be a logical data model (relational). It would be useful to have theability to create an object-oriented model from the CDM (PowerDesigner does this) but that is beyond the scope of apure data modeling environment. The LDM would be created directly from (or generated from) the CDM. Many-to-many relationships would be converted to intermediate entities; foreign keys would be created and relationalstructures would be created.

From the LDM, a PDM could be a next step. When generating the PDM, a database choice must be made forimplementation. This could be Oracle 11g, Sybase ASE 15.0, IBM DB2 or others. The physical limitations of the storagestructures would typically be included in the PDM (which tablespace? how big? How many rows are anticipated?).

The PDM can be used to generate a database creation script or can be used to directly create the database throughan ODBC or direct connection to the database server. This is known as forward-engineering.

At each step of the process, it is paramount for the data modeling tool to be able to show a lineage of the objects.When examining the properties of a column in a table (in the PDM), the modeler should be able to see what attributeof what entity was used for its creation. This visibility and traceability helps to ensure that the organization uses onlythe data elements necessary for the implementation of a project or system. Furthermore, the understanding of whereobjects originate contributes to the proper business process implementation. The corollary to this full traceability isimpact analysis (discussed in a following section).

Of the tools considered for this paper, only PowerDesigner supports full round-trip engineering as well as givingthe modeler the ability to work forwards or backwards (i.e., start from LDM, create CDM and PDM from the LDM).PowerDesigner has conceptual, logical and physical data modeling all in one tool. With all data modeling aspects inone tool, the organization has the utmost flexibility in building, analyzing, and maintaining data-oriented systems.The illustration below shows the tools menu from within the LDM workspace. Note that generation from LDM toCDM, LDM and PDM are all supported.

Page 9: Competitive Analysis of Market Leaders in Data Modeling

7

Figure 3 PowerDesigner LDM Tools

ER/Studio supports logical and physical data modeling in the same tool. For the modeler to be able to performconceptual data modeling, it is necessary to use EA/Studio. Currently, at the time of this writing (October 2008),Embarcadero will include a license for EA/Studio with the purchase of ER/Studio Enterprise. However, the tools havedifferent interfaces and there were some problems illustrated during the aforementioned demonstration. Whenexporting the CDM from EA/Studio into ER/Studio, the LDM seemed to be created successfully.

When a change was made to an entity in the LDM and the attempt was made to propagate the change to theCDM, there were too many steps and it was not effective. First, the LDM needed to be saved. Then, the modelerneeded to change tools to EA/Studio and import the LDM. EA/Studio recognized that it was a version of a CDM thatwas in the workspace and stepped the modeler through the wizard to incorporate the changes into the current CDM.Even though the demonstrator tried several times, the changes were not visible in the CDM. EA/Studio did create anadditional entity, though, appending a number to the name (“customer1” instead of “customer”) that showed thechanges in the LDM. This is not an acceptable method for propagation of downstream changes into more abstractmodels. Because EA/Studio and ER/Studio have different user interfaces modelers who are tasked with CDM and LDMcreation would not be able to work efficiently. Full traceability is not possible.

ERwin supports logical and physical data modeling. When creating a new model, one has the choice of a new LDM,a new PDM, or a combined LDM/PDM. There is no option for a CDM, even in a different tool. CDM concepts areimplemented in the LDM using ERwin (many-to-many relationships, which should be described in the conceptualdata model, are permitted in the ERwin LDM). Models are created from a template, which can help to speed up modelcreation. The ERwin documentation discusses that the use of the LDM is to provide a “broad view of businessinformation requirements sufficient to plan for development of the business information system.” This is preciselythe purpose of the conceptual data model: tying business requirements to data elements.

Page 10: Competitive Analysis of Market Leaders in Data Modeling

8

Model Comparisons and Merges

Whether a model is in a repository, the current workspace or saved in the file system, it is going to be necessary tocompare models and merge differences from one model to another. The modeler might be working on a particularentity in the LDM while another modeler would be working on the same model. Merge and compare functions helpto contribute to the ability for an organization to perform collaborative modeling. All tools examined for this whitepaper contain merge and compare functions. The comparison operation is simply a visual representation of thedifference between models. The merge function should allow a modeler to accept or reject any or all changes, basedon permissions.

ERwin Data Modeler has a “Complete Compare” function. It will work with open models in the tool, script files andmodels, or databases and models. Complete Compare is wizard-driven and allows the modeler to choose the “left”and “right” models – I happen to like this approach of left and right. From a visual perspective, left and right makesense. Once all selections are made in the wizard, the “resolve differences” dialog box is displayed. Data Modeler hasa good solution for the merge and compare functionality. Since conceptual data modeling is not part of the DataModeler solution, it is impossible to compare CDMs and LDMs.

ER/Studio has a “Compare and Merge” utility. The wizard is intuitive. It allows the modeler to compare differentmodels, regardless of where they are. The merge function has filters so that only the changes can be viewed, insteadof all objects. ER/Studio does not allow comparisons to conceptual data models since the CDM functionality isperformed in EA/Studio. In this sense, the tool is limited, but between LDM-LDM, PDM-PDM and LDM-PDMcomparisons, it performs well and produces expected results. If there are bidirectional merges necessary though, themodeler will need to perform the merge function twice, first in one direction, then in the other.

PowerDesigner has a “Model Merge” functionality that is common across all types of comparisons that need to bemade. It is part of the core function set of PowerDesigner and not specific to data modeling. This model mergefunction is invoked automatically (or can be invoked manually) when a model is saved to the repository, copied intothe workspace where a model is already open, and when model generation is used to update an existing model. Theicons used in PowerDesigner are confusing until a modeler gets used to seeing them. PowerDesigner's model mergeprovides fine levels of granularity and control as to what can be changed. It will allow a modeler to performbidirectional merges with one pass.

Impact Analysis

Impact analysis, or the ability to understand the consequences of a model change, needs to be a function of themodeling tool. As part of the impact analysis, a modeler needs to be able to understand the object's lineage (objectsthat form the basis for a particular object). Impact analysis includes more than just understanding where an object isused. It is also a requirement for proper impact analysis to be able to understand what has happened to an objectonce it has been generated. Was an entity's attribute in a CDM attribute generated into the LDM? Was it thengenerated into a PDM? Was the datatype changed by the DBA when working on that PDM? Did a modeler generate aset of classes from the LDM so that the developers would be able to start building applications? It is useful to be ableto store these analyses for later review as well as create version documentation. It is a better use of resources tointelligently discuss the proposed change with the stakeholders rather than make a change in the LDM, propagate itto the PDM and database only to find that the application now fails.

The concept of impact analysis goes further when considering stored procedures or triggers that might have beencreated. If a modeler needs to change a data type or entity, for example, in the LDM, an impact analysis would show ifthe object is being used in a stored procedure. With a proper modeling solution and discipline, the modeler would beable to have a discussion with the DBA prior to making the change.

ER/Studio has a “where used” function that will show exactly where an entity or attribute in the LDM is used in thePDM. However, since the CDM is in a different tool, it is not possible to trace an object all the way through its life.ER/Studio provides the facility to document an object's lineage. However, the lineage is not created and maintained bythe tool. As an example, when viewing a column of a table, there is a tab for the object's lineage. Going into this sectiononly reveals a blank space where the modeler can enter some information that will then be stored with the model.

Page 11: Competitive Analysis of Market Leaders in Data Modeling

ERwin does not have impact analysis functionality. Going through their documentation does provide reference to“impact analysis”. In practicality, though, the tool provides some manner of affecting changes in databases. The“impact analysis” function in ERwin is a toolbar that is used during a Complete Compare.When two physical models arecompared, the differences will be displayed in a dialog box. If the modeler chooses to copy changes from the left side tothe right side (or vice versa), then the “impact analysis” toolbar will provide buttons to create alter scripts to be applied tothe database. This toolbar is illustrated in the below illustration (the second toolbar from the top, the icon on theextreme right is the button to generate the script after the change had been applied from the left side to the right side.

Figure 4 ERwin Impact Analysis

Only PowerDesigner has true and extensive impact analysis. An object's lineage is stored with the object. Asmodels and documents are stored with the repository, the impact analysis becomes more extensive. While viewing anobject, depressing the “Impact and Lineage Analysis” button will bring up a diagram similar to the one below. Notonly is the impact analysis available for the data modeling functionality; it is core to the tool, and provides impactanalysis throughout all modeling modules. Impact analysis is also available as a model so that diagrams can begenerated and saved. This can provide point-in-time snapshots through the development life cycle. In addition to thevendor-supplied rule sets, PowerDesigner allows for the creation of user-defined rule sets to further expand thebenefits of impact and lineage analysis.

Figure 5 PowerDesigner Impact Analysis

9

Page 12: Competitive Analysis of Market Leaders in Data Modeling

10

Reverse / Forward Engineering

A modeling tool needs to provide reverse and forward engineering. Reverse engineering is the process by which adata modeler can generate a PDM from a live database or a script file. Many organizations find it useful to reverseengineer an existing system, generate an LDM and CDM from the PDM and better understand the database. Forwardengineering is the ability to create a database (or modify a database) from the PDM. This can be done live or throughscript files.

ER/Studio offers reverse engineering from either a database or a script file. In either case, the tool will properlybuild out a physical data model from the source. The connection to a live database can be either through ODBC or anative connection. Greater capabilities are available with a native connection (most likely due to Embarcadero notbuilding all the functionality into the ODBC support model—PowerDesigner does not have this restriction). ER/Studiowill attempt to infer keys (primary and foreign) based on the schema of the incoming database.

ERwin supports reverse engineering from either a database or a script file. When reverse engineering, the newlycreated model can be either a physical model or a logical/physical model (in accordance with ERwin terminology – thelogical/physical model is actually a single saved file that has diagrams for both logical and physical models). Templateselection is provided and the process is wizard driven.

PowerDesigner supports reverse engineering from either a database or a script file. Live database connection isthrough an ODBC connection with all objects supported. Script file reverse engineering is fully supported as well.Object inference is supported if chosen through the reverse engineering options. As with all data model creationmodes, templates are supported for the reverse engineering. When reverse engineering from a live database, thedatabase statistics can also be included (i.e., number of distinct values in a column, average length of a characterfield). Additionally, the statistics can be reverse engineered into a model without changing any of the objects. Reverseengineering is wizard driven.

Modeling Notation

There are several different modeling notations commonly in use. A modeling tool should support more than one notation.

• Information Engineering – a standard notation method in use in many toolsets. There are several differentvariations. Generally, the entities and tables are represented by rectangles and the relationships are representedby lines with different endpoints. Crow’s feet is a popular version.

• Filtered IE – found only in Embarcadero, this notation hides the foreign keys. While this may appear to make thediagram more readable, it actually creates confusion in the mind of the modeler. An LDM viewed in Filtered IEmight appear to be a CDM but, in fact, has a relational structure enforced. A true LDM with the foreign keyshidden might be considered to be an incomplete model.

• Barker – Created by Richard Barker and popularized by Oracle's CASE tools, Barker notation displays inheritancesinside the parent entity symbol, has its own multiplicity notation and attribute ornaments. Relationships aredrawn in two parts with each reflecting the multiplicity of the associated entity role.

• IDEF1X – a standard data modeling notation for relationships and entities. In this notation, each set ofrelationship symbols describes a combination of the optionality and cardinality of the the entity next to it.

• Entity/Relationship – Sybase specific, Entity/Relationship is an implementation of IE notation.• Merise – uses associations instead of relationships.• E/R + Merise – both entity/relationship and Merise are used in the same model.

Page 13: Competitive Analysis of Market Leaders in Data Modeling

11

Import / Export

A modeling tool needs to allow the modeler to import and export various types of files. Both import and exportallow the tool to work with other tools or provide information to other people, organizations, or solutions. It is usefulfor the tool to be able to work with metadata in a generic fashion, but specific importing will provide greater overallsupport. All tools reviewed offer various levels of import and export. In the event that a modeling tool does not offersupport for a specific type of file or database, there is a more generic metadata export and import supplied. There arealso third-party companies that will help to provide the “bridges” from a metadata file into a needed specificallyformatted file.

Database Support

Since one of the goals of using a modeling tool is to work with a database (create, modify, understand and analyze),it is necessary that the tool support a variety of databases. Even more importantly is the ability for the usercommunity to add additional database support without waiting for the vendor to provide an upgrade. This might benecessary when a system needs to be migrated from an older database to a more current solution. In order to bestmigrate a database, use the modeling tool to reverse engineer the older system, generate LDMs and CDMs, asnecessary, modify models, then create a new database. Consider a modeling tool that provides database definitionfiles in an XML format so that additional database definition files can be created by the user.

To take this concept further, an intelligently designed modeling tool will be engineered so that the core executablereads definition files. The executable file is extensible, not only for different modeling modules (CDM, LDM, PDM, XML)but for database definition files. With a tool designed thusly, supported database updates can be released as soon asthe database vendor makes the specifications available. The entire modeling tool does not have to be upgraded.Furthermore, with a core and external definition files, it is possible for the customer to add support for a databasethat might not be supported from the vendor.

PowerDesigner supports this paradigm while ER/Studio and ERwin do not. PowerDesigner uses a single executablethat is extended through DLLs for modules and XML definition files for all databases. Because of PowerDesigner'sarchitecture, it is possible to add support for a specific database system even though Sybase does not upgrade theproduct. The database definition files are stored in the file system as XML files and can be modified. NeitherER/Studio nor ERwin support this ability.

In the following table, a “,” between version numbers indicates that different database definitions are used. If theseparator is “/”, then the same database definition is used for all versions included with the “/”. The “/” means that thespecific database support is no provided: there is a common set of attributes supported.

Consider ERwin's support of Oracle in the following table. Oracle 10.x and 11.x are supported through the use of asingle set of 10.x attributes. Oracle 11g 's new features would not be supported properly since the database definitionmust also support 10.x. Both PowerDesigner and ER/Studio offer separate support for Oracle 10.x and 11.

Notation PowerDesigner ERwin ER/Studio

InformationEngineering (IE)

Yes (called Entity /Relationship)

Yes Yes (James Martin and Crow's Feet)

Filtered IE No No Yes

Merise Yes No No

IE + Merise Yes No No

IDEF1X Yes Yes Yes

Barker Yes No No, however EA/Studio (different tool) doesprovide Barker notation for the CDM.

Page 14: Competitive Analysis of Market Leaders in Data Modeling

12

Database PowerDesigner ERwin ER/Studio 7.6

Adabas D Yes No No

Allbase/SQL G.1 Yes No No

ANSI Level 2 Yes No No

Hitachi HiRDB No No Yes

IBM AS/400 Yes No Yes

IBM DB2 for OS/390 5.x, 6.x, 7.x, 8.x, 9.x 7, 8 5.x, 6.x, 7.x, 8.x, 9.x

IBM DB2 for CommonServer

5.x, 6.x, 7.x, 8.x, 9.x 8.x/9.x 5.x, 6.x, 7.x, 8.x, 9.x

Informix SQL 8.x, 9.x 7.x, 9.x/10.x/11.x OnLine, SE, 9.x

Ingres 3.0.1 2.5, 2.6, 2006 No

InterBase 5.x 5.x, 6.x 5.x 4

Microsoft Access 95, 97, 2000 2000, 2002, 2003 2.0, 95, 97, 2000

Microsoft SQL Server 7.x, 2000, 2005, 2008 7.0, 2000, 2005 4.x, 6.5, 7, 2000, 2005

Microsoft Visual FoxPro No Yes 3, 4, 5

MySQL 3.22, 3.23, 4.0, 5.0 5.x 3.x, 4.x, 5.x

NonStop SQL Yes No No

ODBC 3 2.0, 3.0 Yes

Oracle 8, 8i, 8i2, 9i, 9i2, 10g,10gR2, 11

8i, 9.x, 10.x/11.x 7.3x, 8.x, 9i, 10g, 11g

PostgreSQL 7.3, 8 8.x

Progress No 8.x, 9.x/10.x No

Red Brick Warehouse 6.2 5.x No

SAS No Yes No

Sybase AS Anywhere 7, 8, 9, 10.0 No 5, 6, 7, 8, 9, 10

Sybase AS Enterprise 11.0, 11.5-11.9, 12.0, 12.5, 12.5.1,12.5.2, 12.5.3a, 15.0, 15.0.2

12.5/15 11.9.2, 12.x, 12.5, 15.0

Sybase AS IQ 12.0, 12.4.3, 12.5, 12.6, 12.7 12.5 12.x

Sybase Avaki Yes No No

Teradata V2R5 V2R5 2.x V2R4, V2R5, V2R6

Page 15: Competitive Analysis of Market Leaders in Data Modeling

13

When considering the database support that a tool offers, it is not enough to say that a particular database systemis supported. For example, PowerDesigner supports all of the Oracle datatypes and nuances (storage, partitions) thatare in Oracle 11g. The other tools evaluated do not support all Oracle 11g idiosyncracies. Consider: during the ER/Studiodemonstration, when the LDM was going to generate a PDM. I asked for Oracle 11g to be chosen for my database. I wasimmediately told that not all of the Oracle 11g datatypes and constructs were supported. Spatial was one datatypementioned. If this is the level of support for a popular database (i.e., Oracle 11g), what might the support be for a lesspopular database?

As an example of the support offered by PowerDesigner for Oracle 11g, see the below illustrations:

Figure 6 PowerDesigner Oracle Physical Options

PowerDesigner has all physical options on one tab. All Oracle 11g partition options are supported, as well as columnproperties, physcial properties and all other options.

Page 16: Competitive Analysis of Market Leaders in Data Modeling

14

Figure 7 ER/Studio Oracle Physical Options

ER/Studio separates physical options from partitioning. Partitioning schemes supported are Composite, Range,Hash, and List. There is no support for reference or system partition types.

Figure 8 ER/Studio Oracle Partition Support

Page 17: Competitive Analysis of Market Leaders in Data Modeling

15

Figure 10 PowerDesigner Oracle Datatype Examples

Figure 11 ER/Studio Oracle Datatype Examples

Page 18: Competitive Analysis of Market Leaders in Data Modeling

16

Repository (Collaborative Modeling)

If there is going to be more than one person who will need access to a model, then a repository is necessary. Therepository provides a common location to store documents, models, and other files. It should be able to store differentversions of models as well. From an administrative perspective, the repository provides the organization a singlestorehouse for backup purposes. With proper use, the repository would hold the most current version of a model sothat when a change needs to be enacted, there is no question as to where the proper model resides. Additionally, therepository would eliminate the necessity to locate the individual who might have a model locked or who might haveimplemented some changes.

A repository would allow for collaborative modeling. In this fashion, the repository keeps the most current versionof a model. A database administrator may need to implement a change in a physical model, but, at the same time, amodeler needs to implement a change in the same model. Both people would be able to extract a copy of the modelfrom the repository, make changes, and then put the model back into the repository. Upon storing the model backinto the repository, the differences should be presented to the modeler consolidating the changes. Each time a modelis put into the repository, the changes should be presented.

PowerDesigner is available with a repository. It is available as a separate module but a repository with a modelingtool is necessary. PowerDesigner implements full impact analysis through the repository—this is the only way thatPowerDesigner is able to provide all the functionality for impact analysis. With all the models in the repository, it ismuch easier for the tool to track all the objects and be able to report to the modeler. There are several supporteddatabases that may be used for the repository, include Sybase ASA, Sybase ASE, and Oracle. The “Model Merge”functionality discussed above is presented each time a model is consolidated into the repository. The changesbetween the version in the repository and the model being placed in are highlighted with the option to accept orreject any or all changes.

The repository presents in the tool as a folder-based structure. Security is implemented in the repository—userswill have various permissions, based on roles. These permissions are defined by the repository administrator and aretypically different from the database user permissions. Branching and sub-branching, versions, locks, freezes are allsupported.

The ER/Studio repository is more of a version control system than PowerDesigner’s repository. Like PowerDesigner,the repository is a separately priced option. The repository is a database wherein the models are stored and managed.Users must check out models and check them in again, as in a standard version control system. Archiving andversioning are performed within the repository and the tools that are available to modelers are also available to workwith models in the repository (i.e, Compare and Merge, Subprojects, …). Security is implemented in the repository;users would have roles and privileges. Branching and sub-branching is supported.

The repository for ERwin is the Model Manager – it is a separate tool and provides model managementfunctionality for Data Modeler (the tool reviewed here) and Process Manager (the process modeling tool availablefrom CA). CA supports version management in the Model Manager, including locked versions, difference reports, andmodel rollback to previous states. CA also provides undo and redo functionality over the life of a model. While CAtouts this as a benefit, undo functionality from one modeling session to the next can present problems. Versioningwould be a better way to ensure changes can be rolled back.

Model Manager provides library management, allowing for folder creation and better organization within therepository. Sub-models are supported, not only through ERwin but also in Model Manager.

Page 19: Competitive Analysis of Market Leaders in Data Modeling

17

Extensibility and Customization

Working with a data modeling tool will require some adjustment of the modeler to the tool and some toolmodifications for the enterprise and the modeler. Extensibility and customization needs will vary with the type ofwork being done as well as the needs of the organization. This section is concerned with the ability of the tool toadjust to the environment.

Greater extensibility in a tool is not going to be a concern if simple databases are going to be created and themaintenance will be minimal. To create a model-driven environment, however, more customization is needed.Extensibility exists in a variety of perspectives. Databases can be added or their definition files can be modified. Theuser interface can be adjusted or user profiles can be created. Model creation can be based on a template and namingstandards can be employed. User securities can be invoked, at the model or repository level. Reports can be defaultedor customized. Adding scripts is another method of extending the functionality of the data modeling tool. Modifyingmodel checking criteria is useful as well. Perhaps one of the more important levels of extension or customization isthe ability to extend model definitions through the use of metaclass, stereotype and object creation.

PowerDesigner has vast amounts of customization capabilities. To start, look at the architecture of PowerDesigner.It has a core program file that reads “resource files” in order to perform various functions and support differentdatabases. PowerDesigner uses these files to define the objects for each model and the methods for generating andreverse-engineering them. The resource files are XML files that can be viewed, edited, copied by experienced users.Specifically for databases, there is a resource file, or XML file, for each database supported. There is a file for Oracle 11gas well as a file for Oracle 10gR2. The resource files can be modified through any text editor but PowerDesignersupplies a resource editor that is accessible through the user interface.

PowerDesigner takes the extension and customization concept considerably further than its competitors. At anypoint in the modeling process, regardless of the type of model, metaclasses can be added. (A metaclass is a specialkind of class that has, as its instances, classes. A class would normally have an object when instantiated. This is aconcept that has its origins in object-oriented programming but extends to modeling. The instantiation of a metaclass,is a class, which, when instantiated, would produce an object.) A PowerDesigner modeler or administrator can createa metaclass, which would serve as the parent of a set of classes/objects to be created later. This can enforce standardsand specifics to the organization’s modeling rules. The benefit is that all classes from that metaclass would have thesame characteristics and can enforce standardization throughout the organization.

Stereotypes, in modeling, are created from classes or metaclasses. Stereotypes are typically used for an instance of aclass or object. They are typically used for sub-classification purposes. PowerDesigner supports full stereotyping as well.

PowerDesigner permits user profiles to be created. These profiles standardize look-and-feel of the modelingenvironment. Display preferences, model options, check model and other PowerDesigner attributes can be stored anddeployed to users as needed.

ER/Studio provides some customization but not extensibility. Users can make small modifications to their workingenvironment. The database support that is provided with the solution is produced and maintained by Embarcadero. Anew database version will require an upgrade to the tool since the database definitions are not stored in an externalfile, in contrast to the way PowerDesigner functions. User customization consists of modifying toolbars and thegeneral user interface. ER/Studio does not support metaclass creation (there is some support for metaclasses inEA/Studio, but this is a different tool and beyond the scope of this document).

Page 20: Competitive Analysis of Market Leaders in Data Modeling

18

ER/Studio does not allow for database definition customization—the database support is inherent to the tool anddoes not allow for modification. This is a disadvantage to the modeling community using ER/Studio—when adatabase vendor provides a new version, the entire tool needs to be updated in order to support the new databaseversion. Furthermore, additional databases cannot be added by the user community. Perhaps one of the bestexamples of why this should be in a modeling tool is when considering an acquisition of one company by another.The acquired company may have some older systems that would need to be re-built or integrated. If the modelingtool does not support the database, ER/Studio would not be able to reverse engineer the schema. In the case ofPowerDesigner, the database definition would be able to be created without Sybase intervention, further extendingthe usefulness of a modeling tool.

ERwin has customization for toolbars and the general modeling environment. Beyond that, though, the tool fallsshort in terms of extensibility and customization. ERwin is reasonably effective as a “vanilla” modeling tool, butshould not be considered for complex environments that require adapting the tool to the environment.

Business Process Modeling

While business process modeling can be its own discipline, it should be in a tool that is being used for data modeling.To ensure that business rules are met, data can be associated with the processes directly in the model. The dataelements that are added to the business process model (BPM) would be tied to an object-oriented model or a CDM.This further reinforces the need for a conceptual data model—the BPM and CDM linkages would ensure that, properlydeveloped, the data elements that are used are actually needed.

Of the tools reviewed, only PowerDesigner has a business processing module.

Figure 12 PowerDesigner Allows Data to be Assigned to Business Processes

Embarcadero supports business process modeling in a different tool, EA/Studio. The Conceptual Data Model is alsoimplemented in EA/Studio. Tying together the CDM and the BPM in Embarcadero happens in one tool but the LDMand PDM are in a different tool.

CA has a different tool for BPM – ERwin Process Modeler.

Page 21: Competitive Analysis of Market Leaders in Data Modeling

19

Object Oriented Modeling

Object Oriented Modeling, a graphical analysis and display of a system, is not necessarily a “must-have” feature for adata modeling tool. However, it is quite important if an organization is going to truly follow a model-driven paradigmfor building business applications. The Object Oriented Model (OOM) is able to provide the organization with agraphical depiction and analysis of a system. One use of OO modeling is the use-case diagram. Here, a modeler is ableto work with the interactions between people and systems, associating data elements from various data models.

Object oriented modeling allows generation of code (C++, Java, C#, VM.NET), generation of conceptual data models,physical data models, XML models and other object-oriented models from a single object oriented model. Additionally,an object oriented-model can be generated from a CDM, PDM, XML model or other OOM. By adding object-orientedmodeling into the model-driven disciplines in an organization, the mapping and analysis of people, systems and databecome second nature.

ER/Studio does not have object oriented modeling as part of their solution.

ERwin does not offer object oriented modeling.

PowerDesigner has a complete object-oriented modeling module as part of the solution. It meets the needsspecified above but is otherwise beyond the scope of this document. PowerDesigner provides many differentdiagrams, including use case, class, object, sequence, activity, component and others.

Enterprise Architecture Modeling

Enterprise Architecture Modeling (EAM) is not a necessity for data modeling. However, it is an important part ofbuilding and maintaining data-centric systems. EAM is used to gain a better understanding of the architecture of theorganization. It permits the analysis and documentation of the systems that are in use within an organization. Withgreater emphasis on corporate governance as well as compliance efforts, it is becoming more important to fullydocument systems. Change management requires an understanding of the systems in enough detail to be able tounderstand whether efficiency can be gained by modifying the systems. Through mergers and acquisitions, twocompletely different systems might need to be merged. EAM will help to understand where the merge points are inthe systems, allowing the fastest and most accurate combination possible.

Only Sybase PowerDesigner contains an Enterprise Architecture Modeling function. PowerDesigner provides severaldifferent model types for EAM. There are business layer models (organization charts, communication diagrams),application and technology models. Using EAM in PowerDesigner allows the business to link elements and objects fromthe enterprise architecture models to data models, web services, object oriented models and so on. Having workedwith organizations that were building complex models, I have seen, first-hand, the benefits of EAM. It is the necessary“glue” to tie together the models throughout the organization, ensuring business needs are met by the technology.

Dependency Matrices

A dependency matrix is a tool that allows creation and review of links between objects. The objects can be in anykind of model—for example, a link can be created between a table in a PDM and an attribute in CDM. PDM tables andclasses created from them (in an object-oriented model) can also be created. Dependency matrices provide a visualtable that will show what objects are dependent on other objects.

A dependency matrix is not necessary for data modeling, per se, but becomes an important part of an organizationthat is creating or building a model-driven environment. Of the tools reviewed, only Sybase PowerDesigner provides adependency matrix tool and it works across all modules (in other words, it is part of the core functionality ofPowerDesigner).

Page 22: Competitive Analysis of Market Leaders in Data Modeling

20

Projects

In a modeling sense, a project allows for a set of models or documents to be grouped together. The projectfunctions as a single, convenient unit for multiple interconnected models. The project can be stored in a repository asa unit, ensuring all models are stored together. Dependencies and other links between models are automaticallycalculated and maintained when new project diagrams are created.

Sybase PowerDesigner supports projects as well as project templates. The templates can contain pre-definedmodels, content, rules and formatting. Templates would typically be used for enterprise architecture frameworks thatrequire certain combinations of models. By combining projects and templates, the organization has a quick-startapproach for standards-based and model-driven development. Furthermore, by adding framework matrices, theorganization is essentially assured of following best practices.

ER/Studio supports projects but not project templates. The projects are stored in the repository Since ER/Studio is atool that only provides data modeling from the LDM and PDM perspectives, frameworks are not applicable. ER/Studiosupports templates in naming standards. As with all tools, when properly created, the naming standards templatewill ensure proper naming while saving time for the modelers.

ERwin does not support projects, project templates, frameworks or framework matrices. Since ERwin is a tool thatonly provides data modeling from the LDM and PDM perspectives, frameworks are not applicable. ER/Studio supportstemplates in naming standards. As with all tools, when properly created, the naming standards template will ensureproper naming while saving time for the modelers.

Framework Matrices

A framework matrix is a visual grid in which boxes are completed based on various requirements in theorganization. The framework matrix supports model development and documentation in a project and helps theorganization to build out the project according to a set of pre-defined rules. The Zachman framework is a solidexample of this.

Of the tools reviewed, only PowerDesigner supports Framework Matrices.

Page 23: Competitive Analysis of Market Leaders in Data Modeling

21

Summary

Creating a database is a simple task. Creating a database so that it properly supports business requirements makesit a more difficult task. Developers need to build applications that utilize the databases and database designers mustcreate the databases efficiently. Modelers need to be able to communicate effectively with business stakeholders anddevelopers throughout database and application development processes.

Choosing a data modeling tool is not a trivial task, even though it appears to be. Of the tools reviewed, all three willcreate a logical data model, physical data model, propagate changes from one to another and create database scripts.All three will reverse engineer databases. But they are not at all equal.

Only one data modeling tool should be considered and chosen: Sybase PowerDesigner. Not only doesPowerDesigner support all the facets necessary for basic database design and development, but it goes “above andbeyond” in delivering the functionality to support a model-driven architecture. PowerDesigner allows conceptual datamodeling to be performed in the same tool as logical and physical data modeling. Data elements can be tied tobusiness requirements and classes can be created to jump start development through Business Process Modeling andObject Oriented Modeling (respectively). Add in the functionality provided by User Profiles, Projects, FrameworkMatrices and Dependency Matrices and the result is a complete modeling tool for the enterprise: PowerDesigner.

About the Author

Joe Pearl has over 21 years experience in the software industry including six years experience with data modelingtools and the Zachman Framework. Joe has contributed to data modeling certification programs, and delivered anumber of data modeling training courses in his career. He is a proficient user of Computer Associate’s ERwin,Embarcadero’s ER/Studio, EA/Studio and Sybase PowerDesigner.

Joe holds a B.S. from Tulane University in New Orleans. Currently, Joe is applying his knowledge and skills to theadoption of Enterprise 2.0 technologies. He can be reached at [email protected].

Page 24: Competitive Analysis of Market Leaders in Data Modeling

www.sybase.com

SYBASE, INC. WORLDWIDE HEADQUARTERS, ONE SYBASE DRIVE, DUBLIN, CA 94568 USA 1 800 8 SYBASE Copyright © 2008 Sybase, Inc.All rights reserved. Unpublished rights reserved under U.S. copyright laws. Sybase and the Sybase logo are trademarks of Sybase, Inc. or its subsidiaries.All other trademarks are the property of their respective owners. ® indicates registration in the United States. Specifications are subject to changewithout notice. L03124 11-08