Connectivity Usability Page
It has been voiced that the connectivity framework is a bit awkward to use and that it could be simpler. These are rather vague comments which don't provide much insight into what is wrong with the framework or how it could/should be corrected. This page has been created to try to understand the awkwardness and complexity of the framework.
Areas of focus are:
- Driver Definitions - preference page, new wizard, edit dialog, selection controls, etc.
- Connection Profiles - new wizards, property pages, etc.
- Data Source Explorer (DSE) - menus, display, etc.
Please be as honest as possible, and brutal as necessary (we've got thick skin). Also, keep in mind that providing specific examples will help us better understand your comments and suggestions.
A bugzilla entry has also been created to mirror this discussion. Feel free to add comments to the BZ entry if you feel more comfortable using that means of communication. Here's a link to the entry.
Our goal is to use this page to improve the usability and user experience of the connectivity related features within DTP.
There are too many steps required to create a connection:
- Create a driver instance
Available through a preference page or a shortcut from most connection profile new wizards.
- Specify a driver type
- Specify driver jars
- Specify driver class
- Specify default connection URL
- Create a connection profile
- Specify a driver instance
- Specify connection specific properties
- Connect to the server
- Locate newly created connection profile in DSE
- Create default driver instances. These would be available at startup, but the user might have to fix the paths to the JAR files.
- Create custom connection profile wizard/property pages for each vendor DB. This would greatly reduce the number of drivers displayed when browsing for a driver. It also allows connection information to be specified in a vendor specific format. (We'll be updating the Derby connection profile wizard to do this, 163614.)
Too Many Drivers
- Add filtering to the list.
- Flatten the list (so it's displayed as a list instead of a tree).
The list of drivers contains many templates with the same name, but are contained within a version numbered category. This extra layer of navigation makes it difficult to find driver templates. See proposed solution.
- Remove version categories and add version number to driver template name (e.g from "10.0/Informix JDBC Driver" and "9.2/Informix JDBC Driver" to "Informix 10.0 JDBC Driver" and "Informix 9.2 JDBC Driver").
- Find a better way to specify dbdefinition version information. The current problem is caused by the way dbdefinition's are resolved. If a mechanism were in place to discover which dbdefinition to use simply by the type of connection created or the server version, as retrieved by the DB metadata, that could help significantly. I don't know the feasibility of this and it may require changes to both the connection factories and the dbdefinition extension points.
Simple connection wizard, which contains just one page whould make configuration much easier!
- Connection profile wizard consists of three pages. There should be one multitab page, where first tab contains connection name, description, driver and database credentials (and, may be, the "test connection" button). Another tab allows to specify optional parameters.
- Check whether it's possible to generate connection URL automatically (show it in disabled text field), when user provides hostname, schema, username and password, and allow him to customize it (when un-checking "generate automatically").
- Is there a reason for having separate page for reviewing summary? My suggestion is to remove it.