Here's an excellent resource that I recommend to anyone that want to chime into this discussion:

http://bokardo.com/principles-of-user-interface-design/

Read through the core principles outlined in this article. Then compare the tools we have to each other and you'll begin to the see the different value propositions.

/Heiko

On May 18, 2012, at 4:01 PM, Heiko Braun wrote:



Thanks for the explanation Stan. The web console uses a different paradigm then the other tools, and it does so on purpose. The result of what you describe would basically build on the "tree" paradigm and more or less expose the management functionality like the CLI and it's bigger cousin do. But it targets different persona and thus other needs.

The console provides an interim information layer, that provides alternate conceptual views, that go beyond "trees". The biggest difference towards the other tools is that it tries to facilitate understanding of the underlying model.

This includes arrangement, grouping and exposure of the underlying information aligned with the users tasks. You think of it too much in technical terms. Your approach is a valid one for people that can be considered "power users". Users that know the model. For them a "tree" paradigm work works well.

The CLI GUI is a hybrid, but only serves former CLI users well. For them it might be an enhancement. But it's not serving the needs of the less experienced developer or administrator.

A good comparison would probably be a data management tool. You can provide direct SQL access to the data or some web based interface that's much closer to business domain. The AS7 web console would be the later.

From my experience, people perceive the web interface as being simple and easy to get started. But designing for "simple" isn't easy. And it comes at a certain price. In our case we did sacrifice development time for user experience.

Long story short: The management tools serve different audiences. Each audience brings their own experience, knowledge and skills. Building the web console on same paradigms the CLI tools would eliminate the for having it in the first place.

/Heiko

On May 18, 2012, at 1:53 PM, ssilvert@redhat.com wrote:

On 5/18/2012 5:56 AM, Heiko Braun wrote:

Stan,

you've said that you think the console project was going in the wrong direction.
Can you elaborate on that?


Regards, Heiko

I didn't say it was going in the wrong direction.  That's not how I
would put it.

I think the project was architecturally wrong from the very beginning.  
I know that's a strong statement and again I want to say that I'm proud
of what we accomplished.  Hard work and clever programming can make up
for a lot of flaws.

We couldn't be expected to make all the right choices at a time when we
didn't yet understand the management model that was still being
developed.  And it is our misuse of the management model that
constitutes the fundamental architectural flaw.

I think this is best explained with an example, so I'll give you the
same example I gave to Bruno yesterday.  Open CLI GUI and navigate to
/subsystem=logging/logger=*.  Right-click on the logger=* node and
select add.  There you will see a fairly complex dialog with four types
of widgets.  Also, the drop-downs are filled in with the proper values
and the required fields are marked appropriately.  You can hover over
any field label to get context-sensitive help.

I didn't write a single line of code to generate the "add logger"
dialog.  It was all built from the metadata in the management model.

This has tremendous implications on development time.  Getting CLI GUI
to a point where it could do all this for every AS7 resource took about
two weeks.  Yet, to develop the ability to manage just the logging
subsystem in the web console took months.  And when the logging
subsystem changed on the back end I had to rewrite the front end over
again.

Clearly, we are not leveraging the management model properly.

I could go on and on about other technical issues.  I'm sure we can get
to that in due time, but I've written enough for now.

The last thing I want to make clear is that I'm not trying to replace
the web console with CLI GUI.  We need a web console.  But the
comparative ease with which functionality can be developed in CLI GUI
constitutes low hanging fruit that can't be ignored.

I do have some ideas about how we can work together to leverage both
platforms in a mutually beneficial way.  Because I think code speaks
louder than words, I'm working on a demo that shows how both platforms
might work together.  I'm hoping to have something ready to show late
next week.

Stan






_______________________________________________
jboss-as7-dev mailing list
jboss-as7-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev