On Mar 29, 2010, at 11:49 AM, John Doyle wrote:
I didn't touch Dimension outside of all hands testing so long
ago, so I don't really know if this is the opposite of what Barry described below or
not. Dimension forced explicit VDB creation at the outset????
Yes, the was exactly the main concept Dimension introduced. The entire
"workspace" represented a single VDB. There was no concept of
"project". All model creation/editing/etc. occurred within the context of the
VDB. Thus, the idea of having multiple VDBs that spanned a set of models, or thinking of
it from a different perspective, a "workspace" where a single model could exist
within multiple VDBs, didn't exist. Simpler mental model, less flexibility, and
cheaper cost.
As I said before, I'm generally not in favor of hiding anything,
but while we're thinking out of the box, and a hidden VDB is on the table, we could go
in the other direction. Why not use a hidden VDB to preview ( I imagine this is what
happens for a lot of targets when using Run As...) and standard eclipse Export paradigm
to create the 'real' VDB. Get rid of the entire user gesture for New->VDB and
the appearance of a VDB in the project view.
This comes at a cost in flexibility. As implemented today a user can create multiple
different VDBs from a single Model Project, and in the implementation I'm describing
Model Project = VDB. In that sense I don't really conder that we're hiding
anything if we did it this way. I don't know if multiple VDBs from a single project
is a use case anybody is interested in.
I agree with the direction you're suggesting here, but it's probably going to be
much more than we can bite off for this next release. Talking to the GSS guys, it's a
pretty common use case for a customer to want to share a model across multiple VDBs, so I
think we'd also have to use Eclipse links to share models across projects so that
changes may be kept in sync. This would visually look like Dimension, but add one extra
layer to allow multiple VDBs in a workspace.
Regarding just preview, I think starting out we need to keep things as easy for the user
as possible and add more advanced functionality only when asked for it. That said, it
seems like the simplest, easiest user experience would entail using Ramesh's API
additions and a single Teiid instance having workspace-wide scope regarding preview so the
user doesn't ever have to worry about it. Assuming a Teiid is bundled and configured
with the tooling, we would automatically make that the preview instance, avoiding even the
necessity of any first-time setup by the user.
Thanks,
JPAV