fast tack design and development with oracle …...fast track model based design and development...

13
Fast Track Model Based Design and Development with Designer 6i An Oracle Technical White Paper October 2000

Upload: others

Post on 14-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Developmentwith Designer 6iAn Oracle Technical White PaperOctober 2000

Page 2: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

2

INTRODUCTION

E-business solutions may be the new, fashionable key technology, but it does not make client/serverapplications redundant! For example, organizations may still manage daily business activities using acustomer information system maintained at customer call centers.

Regardless of the environment in which you implement your application, two crucial commonfactors exist - the Oracle database and the legacy application. Most Internet based or client/serverapplications run on the powerful, reliable and scalable Oracle8i database. Many evolve from legacyclient/server applications, running on previous releases of this industry leading database product.

Only one product, Oracle Designer 6i, offers a toolset to model, generate and capture therequirements and design of these databases and applications quickly, accurately and efficiently, andalso to assess the impact of changing those designs or applications.

This white paper focuses on the key Oracle Designer 6i elements that enable organizations to ‘fasttrack’ their development activities to respond quickly to market changes and meet customers andpartners needs in today’s deadline driven world. The paper gives an overview of Oracle Designer 6i,then describes the process of using the:

• Design Editor and Server Generator to create the database, its objects and ApplicationProgramming Interface (API) to implement multi-tier applications

• Dependency Manager to analyze the impact of changing the database or application design

WHAT IS ORACLE DESIGNER 6I?Oracle Designer 6i is a scalable, flexible and integrated environment for developing client/serverapplications or leading e-business solutions that leverage the power of the Internet. It is part ofOracle’s Internet Development Suite of development and business intelligence tools.

Oracle Designer 6i promotes and supports Oracle8i and integrates fully with Oracle Forms 6i. Itsupports, but does not enforce, different development approaches so organizations can use theirpreferred method, for example End-User Driven (Rapid Application Development), InformationDriven (Information Engineering), Process Model Driven or Design Capture Driven.

The Oracle Designer 6i Front Panel is the one stop starting point for access to all its modeling,design and generation and administrative tools.

Page 3: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

3

Figure 1. The Oracle Designer 6i Front Panel

Modeling System Requirements

Oracle Designer 6i offers four tools to model business processes and system requirements. ProcessModeler records business processes, while the Entity Relationship Diagrammer, Function HierarchyDiagrammer and Dataflow Diagrammer record the things of importance to a business, the functionsit performs and data that flows through the business. These tools use industry standard BusinessProcess Re-engineering (BPR) or Information Engineering (IE) techniques and notation.

You can then transform these models to create first cut default server designs and/or applicationdesigns using the Database and Application Design Transformers.

The Design Editor

Alternatively, organizations may choose to model their client/server or e-business application fromscratch or protect current investment by capturing the design of a legacy application.

Oracle Designer 6i makes this possible with the Design Editor, a powerful, integrated, graphicalenvironment for designing, generating and capturing database and application designs. The DesignEditor combines drag and drop functionality, multiple diagram types, preference palettes and objectlibraries to provide a workbench for new or experienced business or technical users.

Page 4: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

4

Figure 2. The Oracle Designer 6i Design Editor

The Design Editor is the control center, where organizations model Oracle8i databases and multi-tiere-business applications. You use the Server Generator to create the database, its objects and API asnecessary, generate Oracle Forms, Reports, Web PL/SQL or Visual Basic and also create applicationlogic for PL/SQL, JavaScript or Visual Basic.

Oracle Repository

Supporting the extensive features of Oracle Designer 6i is Oracle Repository, used to store andmanage database and application meta data in a controlled environment throughout the softwaredevelopment lifecycle, for example to store server models or reverse engineered designs of anexisting database application.

Oracle Repository facilitates team working and project management by giving users immediate accessto one accurate, synchronized source of meta data. It supports files and folders and providesfunctionality for maintaining multiple versions and configurations of objects.

Page 5: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

5

Figure 3. Oracle Repository Support for Oracle Designer 6i

MODELING ORACLE8I DATABASES

Oracle Designer 6i offers three methods for modeling a database, which give many advantages overcreating the physical database and its objects directly. You can base your design on real, businessprocesses and system requirements, design from scratch or capture the design of a legacy application.

Whichever method you use, modeling the database graphically in the Design Editor enables you tovisualize it quickly and easily. Organizations can focus on analyzing product and customerrequirements to provide a sound foundation that they can refer to, reapply and amend as necessary.Business and technical users have the opportunity to discuss and identify common parts of thedesign and assess the impact of changes within the organization and with its customers. The finishedmodel is ready for generating using the Server Generator to reduce coding requirements.

Application development is faster, more productive, less error prone and therefore helps to improvequality because organizations can design a database that hits closer to the target first time.

What Can You Model?

Oracle Designer 6i enables you to model much more than standard relational schema constructs suchas triggers, primary keys and mandatory or optional columns. You can model for example Oracleobject types and PL/SQL structures such as functions and packages. Server Model Diagramsrepresent these objects graphically in the Design Editor to enable users to easily see the propertiesand relationships of all database objects.

When you define database objects such as tables and columns, the Design Editor adds defaultattribute values automatically, for example the name, length and accuracy of a column. Yet DesignEditor also gives you the ability to enhance the definition significantly, by adding attributes for howobjects display in the application.

Page 6: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

6

Figure 4. A Typical Server Model Diagram Showing Relational Constructs

This is a powerful key feature of Design Editor. You can define attributes such as hint text, itemnames, the size and position of an object and whether an image or text should display.Organizations can apply consistent ‘user interface standards’ for objects whenever they displayacross the application to create a ‘style guide’ stored with the meta data in the Oracle Repository.

Figure 5. Examples of Defining UI Standards for Database Objects

Page 7: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

7

Reference Code Tables

Furthermore, the Design Editor supports the modeling of reference code tables, used to validate theallowable values you can define for columns or use in associated domains. They contain the allowablevalues together with their abbreviations and meanings.

Reference code tables offer many advantages over hard-coding allowable values. Firstly, they help toensure data integrity because you can store the validation criteria centrally on the server. Referencecode tables are easier and cheaper to maintain because, if business rules change, the organization onlyhas to amend the reference code table once, regardless of how many objects or applications use it.This reduces the amount of coding necessary, aiding a more efficient development lifecycle.

Reference code tables are also flexible because you can use the same table with or without the ServerAPI in several applications, regardless of type, for example Oracle Forms, Reports, and PL/SQLWeb applications.

Distributed Database Models

The Design Editor can also support the modeling of complex but efficient and flexible architecturesthat implement distributed database structures. A distributed database model represents a network ofdatabases using multiple servers but which appears to users as one, logical database. This providesthe ability to logically combine physically separate databases to enable all users to access and modifydata simultaneously.

The Design Editor supports replicating tables or groups of related objects or providing a materializedview of an object at a particular time or in a particular state. For frequently accessed tables, thisreduces the need to transfer data across a network repeatedly to help maximize performance.

GENERATING A DATABASE BASED ON YOUR MODELS

A powerful key feature of the Design Editor is the Server Generator tool, which enables you to builda database from your designs and at any time capture an existing database into the repository.Organizations can generate or capture, redesign, then regenerate the database continuously andseamlessly. This ‘real world’ iterative design and development process ensures the server model andobjects synchronize with the database and application itself.

The Server Generator can generate databases for any target platform from the meta data stored inthe repository. You can generate:

• the physical Oracle or non-Oracle database itself

• objects defined in the repository directly onto the database, for example tables

• Data Definition Language (DDL) scripts to create the physical database or database objects later

• the PL/SQL Server API interface that applications call to insert, update, delete and lock data in thetables generated from your designs, and also perform queries on those tables

Page 8: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

8

Figure 6. Features of the Server Generator

CAPTURING THE DESIGN OF EXISTING DATABASE SCHEMAS

At any time organizations can use the Server Generator to capture the design of an existing Oracle ornon-Oracle database application.

Figure 7. Database Design and Capture in Oracle Designer 6i

Page 9: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

9

To ‘fast track’ the design and development of e-business solutions, you can quickly capture andredesign a legacy database then regenerate it as an Oracle8i database. If necessary, you could use theOracle8i Migration Manager to migrate a previous release of an Oracle database to Oracle8i, thencapture that design into Oracle Designer to make any necessary changes.

The Server Generator extracts database definitions from the source database and its objects or theDDL scripts used to create them then creates equivalent definitions in the repository. If you alreadycaptured this database previously, Server Generator reconciles the existing repository definitions withthe new information extracted.

There are two views of the object captured into the repository:

• User objects, which represent the physical implementation of the objects captured from theconnected user's schema. They display in red under the Design Editor Navigator DB Admin tab.

• Base objects, which represent the logical design of the objects captured into the repository. Youcan edit them to change the design of, for example relational tables, sequences, PL/SQL definitionsand Oracle object types. They display under the Design Editor Navigator Server Model tab.

CREATING MULTI-TIER APPLICATIONS USING THE SERVER APIThe Server API is a powerful and easy-to-use PL/SQL interface that client applications call toperform DML operations on tables and also perform queries on those tables. The Server API passesa DML operation or query from the client application to the relevant database table, then passes theinformation returned back to the application after the action as necessary.

The Server API is crucial to creating multi-tier applications, where both the database and API areseparate to the client and maybe stored together on the same physical server. This enablesorganizations to implement relatively thin clients, for example installing Oracle Forms or WebPL/SQL applications on a client without any application logic.

The Server API consists of the Table API (also known as table handlers) and the ModuleComponent API (also known as module handlers). The Table API provides PL/SQL packages andtriggers that applications call to insert, update, delete and lock table rows. Module Component APIsare based on stored procedures or views. They provide generated insert, update, delete and lockprocedures that call equivalent Table API procedures to perform the action on the table used.

Oracle Designer 6i enables you to fully customize the API to perform actions relevant to yourbusiness rules and application design. This involves defining your own pre- or post-event code,executed at specified points in the generated API code.

Pre-event code enhances the information passed to the database before modifying the table, forexample to record information about inserting or updating a row for auditing purposes. Post-eventcode passes additional information back to the calling application after modifying a table, forexample the number of times a row is inserted.

If a table API procedure is called directly from the application, only the event code embedded in thatprocedure is executed. If a Table API trigger is fired implicitly for a table, any pre-event code definedfor the trigger is executed first, followed by the trigger code, called procedure code, then the post-event trigger code.

Page 10: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

10

Figure 8. Customizing the Server API

IMPACT ANALYSIS USING THE DEPENDENCY MANAGER

An impressive new feature of Oracle Repository is the Dependency Manager, which enablesorganizations to identify and analyze the dependencies between structured and unstructured data. Adependency is a relationship, association or requirement between two software development objects.There are two types of dependency:

• everything that an object uses, for example a form uses EMP table

• all the things used by an object, for example a menu is used by a form

Impact Analysis is crucial for managing configurations and releases of the application. In a complexapplication, an organization may have difficulty identifying the impact of changing one objectbecause many dependencies exist between each object. Dependencies show all the objects necessaryfor a configuration or release to ensure a relationship, association or requirement is not broken.Without impact analysis, how do you know if an object is missing?

The Dependency Manager uses parsers to identify the dependencies and it contains a wide range ofpowerful parsers for Oracle Forms, Reports, Menu and Object and PL/SQL Libraries, Java, C /Pro*C, SQL, PL/SQL, and a Structured Analyzer to analyze elements in the Oracle Designer Model.

For example, for an Oracle Form, the Dependency Manager can display many dependencies, such asthe tables and columns used, the called modules and references from other Forms.

The Oracle parsers are written in Java using open developer APIs. Therefore, if organizations storefiles in the repository for which there is no parser, such as COBOL routines, they can easily writeand plug user-defined parsers into this architecture.

Page 11: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

11

Figure 9. Impact Analysis: The Problem

The Dependency Manager contains a list of parser mappings to define what parser to use for eachfile extension. It calls the appropriate parser and generates XML to describe the dependencies found.If it identifies data that the parser cannot handle, it calls the appropriate other parser and nests thatXML output in the original XML, then imports the dependency information into Oracle Repository.Over time, users can see the dependencies for the whole application as this information builds up.

Figure 10. Dependencies Viewed in the Dependency Manager

Page 12: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Fast Track Model Based Design and Development with Designer 6iOctober 2000

12

SUMMARY

Recent enhancements have improved significantly Oracle Designer 6i’s ‘fast track’ model basedapproach to design and development. Oracle Designer 6i supports the latest release of the Oracledatabase, Oracle8i and other development tools such as Oracle Forms 6i. Together with newfunctionality for managing configurations and analyzing the impact of changes, Oracle Designer 6ican easily support larger scale, complex database application designs.

Oracle Designer 6i is offers a productive, flexible, efficient, accurate and automatic approach that iseasy to manage and maintain. Organizations can reduce the amount of coding necessary, focus onanalysis and design and therefore aim to improve the quality of the finished application by hitting thetarget first time.

Therefore Oracle Designer 6i is the product to use to rapidly develop scalable, distributed, cross-platform client/server and e-business applications.

Page 13: Fast Tack Design and Development with Oracle …...Fast Track Model Based Design and Development with Designer 6i October 2000 3 Figure 1. The Oracle Designer 6i Front Panel Modeling

Oracle CorporationWorld Headquarters500 Oracle ParkwayRedwood Shores, CA 94065U.S.A.

Worldwide Inquiries:+1.650.506.7000Fax +1.650.506.7200http://www.oracle.com/

Copyright © Oracle Corporation 2000All Rights Reserved

This document is provided for informational purposes only, andthe information herein is subject to change without notice.Please report any errors herein to Oracle Corporation. OracleCorporation does not provide any warranties covering andspecifically disclaims any liability in connection with thisdocument.

Oracle is a registered trademark, and Oracle8i, PL/SQL, OracleDesigner 6i, and Oracle Repository are trademarks of OracleCorporation. All other company and product names mentionedare used for identification purposes only and may be trademarksof their respective owners.