Hi, David. My feeling is that we can think about the bidirectional relationship as the "pure domain option", but it's true that there must be a complementary "UI option" for navigation.
And that there are 2 possible solutions, depending on the "navigational pattern" choosen. With current pattern, perhaps if the breadcrumb panel would be "always visible" horizontally under the menus would be "enough intuitive" for the user. If he knows that at the upper left corner is always the last accessed "domain object" he always now how to navigate. The list of bookmarks should be ordered from left to right, having on the left the most recent element, as I think it was before introducing the new design. It should only show "aggregate roots". If I navigate to an Invoice, it should be bookmarked. If I navigate to an invoice item, it shouldn't be bookmarked (or bookmarked under its invoice). If popup dialogs would be allowed, the navigational pattern could be different. The user would first select any repository list available through the menus and, when clicking on any Entity or action, it would be shown on a popup dialog that the user would close wherever he wanted (or the action was invoked or cancelled). The latter is the chosen approach at MS CRM and others. See a brief description of the current UI at [1]. Also on [2], starting at 17:05, you can see the current version's UI where you will see how an entity's view dialog is open by clicking on a previously defined list (repository finder). If you want to see the new interface, it's on minute 3:00, but any navigation is showed. SAP uses the same navigational pattern as MS CRM. On SalesLOGIX don't directly use dialogs, so there's a "Recently viewed items list". See [3]. At minute 1:57 you will see the recently view items grouped by "entity type". In another video [4] you will see the "new tab" hint for opening multiple entity views at once. These companies has invested a lot on UI development for applications quite similar "in concept" to the ones made with Isis. Hope this helps at least for thinking about different approaches, hints, etc. Regards, Oscar [1] http://www.preact.co.uk/preact_blog/how-to-navigate-the-microsoft-dynamics-crm-interface [2] http://www.preact.co.uk/preact_blog/dynamics-crm-flow-interface [3] http://www.youtube.com/watch?v=H8rlmZKpV44&list=PLp766Vomquq7khRdyOv_8f3LEWTR9FF4D [4] http://www.youtube.com/watch?v=ewLTsJIkxwA [5] http://www.youtube.com/watch?v=Fe8yg6amIJ0 El 18/07/2013, a las 01:58, David Tildesley <[email protected]> escribió: > One of the problems with web viewer is keeping context of the primary > "object" you are working with e.g. customer, as you navigate around it's > related object instances. Having to use the browser back button is not > acceptable and having to relocate your customer again after working on some > related object using find ... is also unacceptable. Which is where the > "breadcrumb" panel comes into it's own on the wicket viewer. > > > However I just want to canvas opinions on an idea: Would it make sense to > (maybe optionally) limit the breadcrumbs to objects rather than object > operations to reduce the clutter? > > Maybe some way of "pinning" an object to the panel (like a temporary > bookmark)? > > I guess the other approach is to programatically "backlink" all the connected > business objects (i.e implement two way relationships) which seems a bit naf > if the only reason you are doing it is for a specific viewer behaviour - > after all we are trying to make less work for ourselves rather than more. > > > Thoughts? > > Regards, > David.
