202 CHAPTER 9 CASE Tools for Logical Database DesignQuest development and source code control products to allow local replicas of Rational ClearCase and Rational ClearQuest repositories.
Trang 1202 CHAPTER 9 CASE Tools for Logical Database Design
Quest (development and source code control products) to allow local replicas of Rational ClearCase and Rational ClearQuest repositories Rational MultiSite also handles the automatic synchronization of the replicas This is particularly useful for companies with distributed devel-opment who wish to have fast response times for their developers via access to local information, and such replication is often an absolute requirement for geographically distributed teams
9.8 Application Life Cycle Tooling Integration
The best CASE tools for database design are integrated with a complete suite of application development tools that cover the software develop-ment life cycle This allows the entire developdevelop-ment team to work from
an integrated tool platform, rather than the data modelers being off in their own world Only the largest vendors offer this, and in fact true tooling integration across the development life cycle is somewhat rare This solution is, in a very real way, the philosopher’s stone of develop-ment infrastructure vendors All the vendors who produce software development platforms have been working to develop this breadth dur-ing the past two decades The challenge is elusive simply because it is hard to do well The three companies we are discussing here all have
Figure 9.10 IBM’s Rational MultiSite software for massively distributed software management (courtesy IBM Rational Division)
Trang 2broad offerings, and provide some degree of integration with their data-base design CASE technology
For Computer Associates, the AllFusion brand is a family of develop-ment life cycles tools It is intended to cover designing, building, deploy-ing and managdeploy-ing eBusiness applications Sybase also has a broad prod-uct suite, and their strength is in collaborative technology From a design perspective, the ability to plug Sybase PowerDesigner into their popular Sybase Power Builder application development tooling is a very nice touch, as seen in Figure 9.11 The IBM tooling is clearly the broadest based, and their new IBM Software Development Platform, which is built heavily but not exclusively from their Rational products, covers everything from requirements building to portfolio management, source code control, architectural design constraints, automated testing, perfor-mance analysis, and cross site development A representation of the IBM Software Development Platform is shown in Figure 9.12
Figure 9.11 Sybase PowerDesigner plug-in to Sybase PowerBuilder (picture from http://www.pbugg.de/docs/1, Berndt Hambock)
Trang 3204 CHAPTER 9 CASE Tools for Logical Database Design
9.9 Design Compliance Checking
With all complex designs, and particularly when multiple designers are involved, it can be very hard to maintain the integrity of the system design The best software architects and designers grapple with this by defining design guidelines and rules These are sometimes called “design patterns” and “anti-patterns.” A design pattern is a design principle that
is expected to be generally adhered to within the system design Con-versely, an anti-pattern is precisely the opposite It represents flaws in the system design that can occur either through violation of the design patterns or through explicit definition of an anti-pattern The enforce-ment of design patterns and anti-patterns is an emerging attribute of the best CASE tools for systems design in general, and database design in particular Figure 9.13 shows an example of the interface used in the Rational Data Architect for compliance checking, which scans the sys-tem to enforce design patterns and check for anti-patterns Some degree
of support for design pattern and anti-pattern checking exists in All-Fusion ERwin Data Modeler and Sybase PowerDesigner, as well The compliance checking in IBM’s Rational products is the most mature in
Figure 9.12 IBM Software Development Platform (courtesy IBM Rational Division)
Model Services (UML2 ext, other Meta-Models, Code Gen APIs, …)
J2EE, Web Services, UML2 Models
Hyades
CM, Merge, Traceability…
Eclipse Core GEF
WebSphere
Business Integration
Modeler
& Monitor
Rational Software Modeler
Rational Software Architect
Rational Applcation Developer Rational Data Architect Rational Web Developer
Rational Functional &
Manual Tester Rational Performance Tester
Tivoli Configuration Manager Tivoli Monitoring
EMF JDT/CDT Team
Architect
Manager
Trang 4general, with the notion of design patterns and anti-patterns being a key philosophical point for the IBM’s Rational family of products Some examples of things these compliance checkers will scan for include:
— Discover 1st, 2nd, and 3rd normalization
— Check for excessive indexing
— Check for valid data model and rules
Figure 9.13 Modeling and database compliance checking (courtesy IBM Rational Division)
Trang 5206 CHAPTER 9 CASE Tools for Logical Database Design
Reporting capabilities are a very important augmentation of the design capabilities in CASE tools for database design These reports allow you to examine your ER and UML modeling and database schema in both graphical and textual formats The Sybase products have a superb repu-tation for reporting features; their products enable you to generate reports in common formats like Microsoft Word Reporting can include both the modeling and the annotations that the designer has added It can cover physical data models, conceptual data models, object-oriented
Figure 9.14 Reporting features with Sybase PowerDesigner (courtesy Sybase)