Thread: Feedback on database designer (1.15 Dev)

Feedback on database designer (1.15 Dev)

From
Colin Beckingham
Date:
Guillaume, I spent a few minutes looking at the designer in 1.15 Dev. 
Looks interesting and impressive. I realize it is really early days yet, 
but here are some comments from my OpenSUSE 12.1 Gnome 3.2 setup. If you 
are not taking comments on this topic just yet let me know.

1. The database designer opens up ok but it does not seem to matter if 
you do so from a database or schema or not. First requirement if you 
want to import tables is to select a schema, but unless you are already 
on a schema or database when DD opens it is not clear how you can select 
a schema after that. Say you have "Databases" or the server name 
selected then you are not given a list of schemas to select from.

2. Adding an empty table to a design works fine, but if you allow the 
table properties default names then adding a new table after that is not 
aware that you have added one table already and presents the same 
default names, even though you are stopped from actually adding that 
table to the design.

3. After adding a new table, if you try to drag the table from the 
'model browser' into the 'database designer' then you get a "Table 
already exists at this diagram" message and the table is not added or 
seen. I found this puzzling after I had successfully imported tables 
from a schema and then successfully dragged them into the designer 
window. If you add a new designer window then you can drag the new 
tables into that frame.

4. When adding tables from import into the designer frame a relationship 
line appears linking two related tables, but the ends are confusingly 
aligned. Attempts to make them line up better are not successful.

5. After adding two related tables with the relationship link displayed, 
if you subsequently delete one of the tables from the designer the 
relationship link remains in place. This is confusing since one end then 
points to nothing.
-- 
---
Colin Beckingham
613-454-5369
http://www.it4gh.com


Re: Feedback on database designer (1.15 Dev)

From
Guillaume Lelarge
Date:
On Sat, 2012-02-04 at 15:19 -0500, Colin Beckingham wrote:
> Guillaume, I spent a few minutes looking at the designer in 1.15 Dev. 
> Looks interesting and impressive. I realize it is really early days yet, 

Unfortunately, not that early... :-/

> but here are some comments from my OpenSUSE 12.1 Gnome 3.2 setup. If you 
> are not taking comments on this topic just yet let me know.
> 
> 1. The database designer opens up ok but it does not seem to matter if 
> you do so from a database or schema or not. First requirement if you 
> want to import tables is to select a schema, but unless you are already 
> on a schema or database when DD opens it is not clear how you can select 
> a schema after that. Say you have "Databases" or the server name 
> selected then you are not given a list of schemas to select from.
> 

We only need to know the schema if you want to generate the SQL, and if
you want to reverse-engineere a specific schema. Both of these wizards
ask for the schema. So, I think it's pretty covered.

> 2. Adding an empty table to a design works fine, but if you allow the 
> table properties default names then adding a new table after that is not 
> aware that you have added one table already and presents the same 
> default names, even though you are stopped from actually adding that 
> table to the design.
> 

Crap. This used to work. I agree it's something we need to fix.

> 3. After adding a new table, if you try to drag the table from the 
> 'model browser' into the 'database designer' then you get a "Table 
> already exists at this diagram" message and the table is not added or 
> seen. I found this puzzling after I had successfully imported tables 
> from a schema and then successfully dragged them into the designer 
> window. If you add a new designer window then you can drag the new 
> tables into that frame.
> 

Are you sure you wasn't in another diagram? you may have more than one
diagram (they are shown as tabs in the database designer), and you can
add the same table in one/some/all diagrams, but you cannot add one
table two times in the same diagram.

> 4. When adding tables from import into the designer frame a relationship 
> line appears linking two related tables, but the ends are confusingly 
> aligned. Attempts to make them line up better are not successful.
> 

Yeah, that's one thing I would like to find a fix. The only workaround I
can offer your right now is to double click on the line. It will add a
new anchor that you can use "to add an angle" to a line. Not sure if I
explain this correctly. Just try and see if it works for you. Anyway,
it's just a workaround.

> 5. After adding two related tables with the relationship link displayed, 
> if you subsequently delete one of the tables from the designer the 
> relationship link remains in place. This is confusing since one end then 
> points to nothing.

You're right. Another thing to fix.

Thanks for this report. Know that I really look forward to have more
reports like this. It may take some time for me to answer and fix
(latest excuse was FOSDEM), but I really appreciate, and will fix the
issues found.


-- 
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com



Re: Feedback on database designer (1.15 Dev)

From
Colin Beckingham
Date:
>> 1. The database designer opens up ok but it does not seem to matter if
>> you do so from a database or schema or not. First requirement if you
>> want to import tables is to select a schema, but unless you are already
>> on a schema or database when DD opens it is not clear how you can select
>> a schema after that. Say you have "Databases" or the server name
>> selected then you are not given a list of schemas to select from.
>>
>
> We only need to know the schema if you want to generate the SQL, and if
> you want to reverse-engineere a specific schema. Both of these wizards
> ask for the schema. So, I think it's pretty covered.

OK no problem, the only issue I see is that you are allowed to start a 
wizard in an invalid context. The DD menu item "Import tables" is 
visible and active right from initial startup of pgadmin before you are 
connected to any servers. There is an implication that as part of the 
wizard process you will be allowed to subsequently point at a server, 
database, schema. But in fact in order to import tables you need to exit 
DD, select the schema in the pgadmin object browser and then restart DD. 
While you can start the wizard in the absence of visible schemas, it 
will not proceed on click the Next button if no schemas are listed. 
Perhaps I am missing something.

>
>
>> 3. After adding a new table, if you try to drag the table from the
>> 'model browser' into the 'database designer' then you get a "Table
>> already exists at this diagram" message and the table is not added or
>> seen. I found this puzzling after I had successfully imported tables
>> from a schema and then successfully dragged them into the designer
>> window. If you add a new designer window then you can drag the new
>> tables into that frame.
>>
>
> Are you sure you wasn't in another diagram? you may have more than one
> diagram (they are shown as tabs in the database designer), and you can
> add the same table in one/some/all diagrams, but you cannot add one
> table two times in the same diagram.
>

This must have been my error. It works fine now. I think that previously 
the size of the displayed area did not allow me to see that the table 
was already in the window, and since I did not think of scrolling down I 
believed it was not there. The boxes seem to be added quite far down and 
to the right by default. I realize this will be screen resolution 
dependent, and also dependent on the area the user has chosen to display 
so not sure what to suggest, but I think I would go for tight top left 
(10,10) in the visible area (user could have scrolled anywhere) if this 
is possible. Then you can easily see the Eagle has landed. Otherwise you 
have to go looking for it.

>> 4. When adding tables from import into the designer frame a relationship
>> line appears linking two related tables, but the ends are confusingly
>> aligned. Attempts to make them line up better are not successful.
>>
>
> Yeah, that's one thing I would like to find a fix. The only workaround I
> can offer your right now is to double click on the line. It will add a
> new anchor that you can use "to add an angle" to a line. Not sure if I
> explain this correctly. Just try and see if it works for you. Anyway,
> it's just a workaround.

Yes, this was a good hint. I now see that the ends point at the table as 
an object and not the columns/fields. I see that when the relationship 
is selected the relevant key fields light up in red. Got it. Ideally I 
suppose in a visual designer you would be able to drag end points from 
one column to another but that implies major changes to your db 
structure which might or might not be valid.

Another suggestion 1: in the dialog boxes where you select 
tables/columns from among many to form a new set, users are accustomed 
to being able to double click one item and have it automatically perform 
an action such as join the set on the right or go back to the set on the 
left.

Another suggestion 2: as a beginner with this tool one of my major 
concerns is with destructive effects on the db you have imported info 
from. The nagging question once you get to the end of your designing 
process is "What effect will this have on my original db?" Perhaps none. 
Maybe it is just a matter of how the prompts are worded/presented.

-- 
---
Colin Beckingham
http://www.it4gh.com


Re: Feedback on database designer (1.15 Dev)

From
Guillaume Lelarge
Date:
On Tue, 2012-02-07 at 06:27 -0500, Colin Beckingham wrote:
> >> 1. The database designer opens up ok but it does not seem to matter if
> >> you do so from a database or schema or not. First requirement if you
> >> want to import tables is to select a schema, but unless you are already
> >> on a schema or database when DD opens it is not clear how you can select
> >> a schema after that. Say you have "Databases" or the server name
> >> selected then you are not given a list of schemas to select from.
> >>
> >
> > We only need to know the schema if you want to generate the SQL, and if
> > you want to reverse-engineere a specific schema. Both of these wizards
> > ask for the schema. So, I think it's pretty covered.
> 
> OK no problem, the only issue I see is that you are allowed to start a 
> wizard in an invalid context. The DD menu item "Import tables" is 
> visible and active right from initial startup of pgadmin before you are 
> connected to any servers.

Oh OK, understood. Yes, the icon should only be enabled when you're
connected to a database. Another bug to fix :-/

>  There is an implication that as part of the 
> wizard process you will be allowed to subsequently point at a server, 
> database, schema. But in fact in order to import tables you need to exit 
> DD, select the schema in the pgadmin object browser and then restart DD. 
> While you can start the wizard in the absence of visible schemas, it 
> will not proceed on click the Next button if no schemas are listed. 
> Perhaps I am missing something.
> 

Nope, you're right.

> >> 3. After adding a new table, if you try to drag the table from the
> >> 'model browser' into the 'database designer' then you get a "Table
> >> already exists at this diagram" message and the table is not added or
> >> seen. I found this puzzling after I had successfully imported tables
> >> from a schema and then successfully dragged them into the designer
> >> window. If you add a new designer window then you can drag the new
> >> tables into that frame.
> >>
> >
> > Are you sure you wasn't in another diagram? you may have more than one
> > diagram (they are shown as tabs in the database designer), and you can
> > add the same table in one/some/all diagrams, but you cannot add one
> > table two times in the same diagram.
> >
> 
> This must have been my error. It works fine now. I think that previously 
> the size of the displayed area did not allow me to see that the table 
> was already in the window, and since I did not think of scrolling down I 
> believed it was not there. The boxes seem to be added quite far down and 
> to the right by default. I realize this will be screen resolution 
> dependent, and also dependent on the area the user has chosen to display 
> so not sure what to suggest, but I think I would go for tight top left 
> (10,10) in the visible area (user could have scrolled anywhere) if this 
> is possible. Then you can easily see the Eagle has landed. Otherwise you 
> have to go looking for it.
> 

Yes, there are a few enhancements to do on the location of objects.

> >> 4. When adding tables from import into the designer frame a relationship
> >> line appears linking two related tables, but the ends are confusingly
> >> aligned. Attempts to make them line up better are not successful.
> >>
> >
> > Yeah, that's one thing I would like to find a fix. The only workaround I
> > can offer your right now is to double click on the line. It will add a
> > new anchor that you can use "to add an angle" to a line. Not sure if I
> > explain this correctly. Just try and see if it works for you. Anyway,
> > it's just a workaround.
> 
> Yes, this was a good hint. I now see that the ends point at the table as 
> an object and not the columns/fields. I see that when the relationship 
> is selected the relevant key fields light up in red. Got it. Ideally I 
> suppose in a visual designer you would be able to drag end points from 
> one column to another but that implies major changes to your db 
> structure which might or might not be valid.
> 

Yes.

> Another suggestion 1: in the dialog boxes where you select 
> tables/columns from among many to form a new set, users are accustomed 
> to being able to double click one item and have it automatically perform 
> an action such as join the set on the right or go back to the set on the 
> left.
> 

Sorry, I don't understand what you mean here.

> Another suggestion 2: as a beginner with this tool one of my major 
> concerns is with destructive effects on the db you have imported info 
> from. The nagging question once you get to the end of your designing 
> process is "What effect will this have on my original db?" Perhaps none. 
> Maybe it is just a matter of how the prompts are worded/presented.
> 

Absolutely no destructive effects. You cannot even run the SQL generated
by the tool in this tool. So, absolutely nothing to worry about.


-- 
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com



Re: Feedback on database designer (1.15 Dev)

From
Colin Beckingham
Date:

On 02/07/2012 01:54 PM, Guillaume Lelarge wrote:

>> Another suggestion 1: in the dialog boxes where you select
>> tables/columns from among many to form a new set, users are accustomed
>> to being able to double click one item and have it automatically perform
>> an action such as join the set on the right or go back to the set on the
>> left.
>>
>
> Sorry, I don't understand what you mean here.
>
>

OK practical example:
1. open pgadmin, drill down thru databases to a sample schema
2. open DD, select "File -> import tables" from menu
3. info screen, select next
4. select your schema, next

The next window has two lists in the left and right panels. You are 
building the right list by selecting tables from the left list. There 
are two clicks involved, select the table, then click the arrow to send 
it over to the destination list.

Where the click action is unambiguous, in this case clicking one table 
name in the list, send it to the right list. So much quicker is a double 
click which both selects and sends the table to the right list. 
Ctrl+click is different, you are selecting one of many. It's not so much 
the amount of time it saves as that user expectations have been raised?

Ideally also the green arrows will be dynamic. If there are no tables in 
the right list then both the single and double green pointing left are 
not required. Also green arrows pointing right are not required until at 
least one item has been selected in left panel.

Very good that multiple items can be selected and moved in a block, and 
that items do not appear in both panels at the same time!


-- 
---
Colin Beckingham
http://www.it4gh.com


Re: Feedback on database designer (1.15 Dev)

From
Guillaume Lelarge
Date:
On Tue, 2012-02-07 at 19:54 +0100, Guillaume Lelarge wrote:
> On Tue, 2012-02-07 at 06:27 -0500, Colin Beckingham wrote:
> > >> 1. The database designer opens up ok but it does not seem to matter if
> > >> you do so from a database or schema or not. First requirement if you
> > >> want to import tables is to select a schema, but unless you are already
> > >> on a schema or database when DD opens it is not clear how you can select
> > >> a schema after that. Say you have "Databases" or the server name
> > >> selected then you are not given a list of schemas to select from.
> > >>
> > >
> > > We only need to know the schema if you want to generate the SQL, and if
> > > you want to reverse-engineere a specific schema. Both of these wizards
> > > ask for the schema. So, I think it's pretty covered.
> > 
> > OK no problem, the only issue I see is that you are allowed to start a 
> > wizard in an invalid context. The DD menu item "Import tables" is 
> > visible and active right from initial startup of pgadmin before you are 
> > connected to any servers.
> 
> Oh OK, understood. Yes, the icon should only be enabled when you're
> connected to a database. Another bug to fix :-/
> 

It's fixed now.


-- 
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com



Re: Feedback on database designer (1.15 Dev)

From
Guillaume Lelarge
Date:
On Mon, 2012-02-06 at 21:33 +0100, Guillaume Lelarge wrote:
> On Sat, 2012-02-04 at 15:19 -0500, Colin Beckingham wrote:
> [...]
> > 2. Adding an empty table to a design works fine, but if you allow the 
> > table properties default names then adding a new table after that is not 
> > aware that you have added one table already and presents the same 
> > default names, even though you are stopped from actually adding that 
> > table to the design.
> > 
> 
> Crap. This used to work. I agree it's something we need to fix.
> 

Fixed.


-- 
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com