Assumptions/Project Values
Model-based/driven approach (via EMF)
Extensible
Vendor-neutral
Consistent view
Initial support primarily (but not exclusively) for relational databases, yet design for non-relational
DTP Users (relative priority)
Other Eclipse component developers (1)
Developers
Java application developer (2)
Enterprise application developer
Application architect (modeling, use-case construction, etc)
DBA
Report writer/business domain experts (3)
Application architect
Data architect
High Level Vision
Connection management – generic
Contributing companies:
Sybase
IBM
Actuate
ObjectNation
Data
sources/Data
(includes mix of data connections and data forms)
JDBC (Java developers)
OLAP data sources (Report writer connectivity)
XML
File based: CSV, text files
Applications (e.g. SAP, PeopleSoft)
EDI
Web Services
Message Queues
JCA
Transaction management within connection management
Read/write of application data sources
Data source meta-models
On-demand loading
Model structure-based interaction online and offline
Generate deltas
Synchronization
Object browsing
Live view of the data
Runtime Support (like SDO, EMF) (ability to run applications outside the IDE)
In RCP
Outside Eclipse entirely (non-UI only)
Model type extensibility support
Multidimensional
Hierarchical (e.g. XML)
Object-model (e.g. get data as objects aot tables and rows)
Model transformation extensibility support (e.g. adapters to transform between one model to another)
General Use Cases/Requirements
Design query against generic connection, read, generate generic report <BIRT>
User: Java application developer incorporating reports into application; Report developer (e.g. generate sales reports)
Create, edit, debug, deploy server component (e.g. Stored procedures, functions, …) <relational database>
Acquire, modify, write, validate metadata from data source
Query Support: Create, edit, visualize, debug, execute sql query
Working with live view
Change database table
Add index
Inspect data
Lightweight administration
User: Non-operational (for developers as opposed to DBA)
Extensible
Limited to well-defined interfaces (e.g. JDBC)
Obtain/discover capability meta-data from a data source
User: BIRT
SQL Development Tools Use Cases/Requirements
Use connectivity project components
Associate query with connection
Create, edit, debug/execute, deploy SQL Statements
Use common SQL Query Model/Parser
User: SQL Query Tooling
SQL execution plan support
Retrieval, visualization
Extensibility for optimization
Support runtime parameterization
Complex parameters
Team support
Q: how to persist SQL statements w/ associated connection
Extensible persistence mechanism
Multiple SQL statement support
Create, edit, debug, save, deploy, etc of procedural objects
SQL History view
Result set support
Model : SDO
UI: extensible, handle vendor-specific data types
Edit in place, reapply to database
Handle large data sets
Persist data results
Multiple result set support
Visual Query Builder
Modular/componentized (e.g. separate components for Expression Builder, Conditions Builder, Joins Builder)
Consider novice and experienced user
Debug Support
Vendor-neutral framework
Multi-language support (SQL, Java)
Extensible for debug support
Extensible for UI presentation
Connectivity Break-out Session
There was some discussion about whether BIRT ODA should be in DTP or stay in BIRT. Later it was decided to move ODA into DTP.
Connection Definition Layer (pure connections):
Agreed to adopt Sybase connection management framework and port the WTP JDBC connection support to the framework.
There was discussion about how ODA connections relate to connection profiles.
ODA and the SQL model will wrap JDBC connections.
ODA flat file, for example, would implement connection profile, driver.
Model Layer
Agreed to adopt WTP SQLModel , SQLQuery, and DBDefinition.
View Layer
Agreed to adopt the Eclipse navigator framework currently hosted in WTP project.
Also need to work to have this navigator framework pushed into core Eclipse so DTP is not dependent on WTP.
Agreed to use the Sybase contributed Enterprise Explorer as the instance of the navigator in DTP. The content provider currently hosted in the Database Explorer in WTP will be ported to the Enterprise Explorer for displaying database schema information.
Should support Import /Export Connection Profiles with password option (support BIRT report execution.)
Connection sharing and transactions discussion.
Read-only connections can be shared.
Writable access would require “cloned” connections for transaction support.
SQL Development Tooling Break-out Session
Contribution Overview
IBM Overview: SQL Model, SQL Query Model, SQL DML Parser, Data Definition Model
Sybase Demo: SQL Editor and Debugger Framework
Actuate: New Data Set Wizard
Component Identification
Infrastructure Components:
Routines Editor Framework
Routines Debugger Framework
SQL Model/DB Definition Model
SQL Query Model
SQL Query Parser
Common Connection Framework
SQL Execution Plan Framework
Tooling Components:
SQL Editor
Base editor w/o persistence
Content assist tied to model
Multiple statement support
SQL Query Builder (future)
Results View
Script History
Database Explorer
Q: Should we think beyond relational data? If so, do you need a new higher layer such as ODA?
DTP Milestone Estimates
Subject to change based on further investigation.