YaST/Development/New Control Center
From openSUSE
| Revision as of 13:34, 28 November 2007 Mschmidkunz (Talk | contribs) � Previous diff |
Revision as of 11:03, 29 November 2007 Tgoettlicher (Talk | contribs) Next diff → |
||
| Line 36: | Line 36: | ||
| * Tabbed interface | * Tabbed interface | ||
| * Classic and new look options | * Classic and new look options | ||
| + | |||
| + | |||
| + | ===Ideas mentioned on the Mailing Lists=== | ||
| + | I have collected the ideas and proposals form the discussion initiated by this mail http://lists.opensuse.org/opensuse/2007-11/msg02390.html | ||
| + | |||
| + | Please feel free to add items or rearrange the sections. | ||
| + | |||
| + | *Wording | ||
| + | **high-level roles: samba -> windows compatible file server | ||
| + | **don't change from well-established unix terminology to windows jargon | ||
| + | **No acronyms in the modules titles | ||
| + | **tag modules with wordings known form other operating systems | ||
| + | **newbie menu with common, non computer specific wording | ||
| + | **understandable words: display, install/uninstall programs etc. | ||
| + | |||
| + | *Documentation and Help | ||
| + | **experts explanation button with technical info | ||
| + | **web based yast | ||
| + | **live full text search field | ||
| + | **docu organized in sections (description, tutorial, details, man) | ||
| + | **Personal knowledge base to customize and make notes in Yast (copy them to new system or wiki) | ||
| + | **popup with description when moving mouse over icon | ||
| + | **scarceness of help with some modules is disconcerting | ||
| + | **easy feedback mechanism | ||
| + | **docu too technical | ||
| + | **links to documentation (networking docu should be local) | ||
| + | **useful tooltips and a paragraph for every module (use rpm descriptions) | ||
| + | **show links to related item, related tools, docu, history of changes, personal notes, wiki | ||
| + | **small faq that highlight appropriate modules | ||
| + | **"tell me more" button for help on modules | ||
| + | **open suse reference book on the appropriate topic that a certain module is about | ||
| + | **help tip on mouse hover or help panel | ||
| + | **tutorial mode: give a list of most commonly used tasks | ||
| + | **provide a side-bar type "lookup" dictionary if needed | ||
| + | |||
| + | *Layout | ||
| + | **"Gnome way of doing things" is a really bad idea... really bad. | ||
| + | **web base hast (no javascript) | ||
| + | **don't show modules that configure non existing hardware | ||
| + | **user interface as a web page (like routers have) use css and lat users rearrange menus | ||
| + | **list/details view of the icons | ||
| + | **theme support | ||
| + | **no different layouts from on gui to the next | ||
| + | **make layout configurable | ||
| + | **moving or enlarging icons might confuse | ||
| + | **not more than 7 objects in any list | ||
| + | |||
| + | *Grouping and Icon Placement | ||
| + | **move network card in hardware section | ||
| + | **Own icons for graphics tablets and mouse | ||
| + | **separate sax modules for mouse keyboard display and tablet | ||
| + | **Hide seldom used configuration modules | ||
| + | **consolidate modules with similar tasks into one contra having somewhat redundant entries might be handy. | ||
| + | **define max number of children per node | ||
| + | **don't use tree structure but lattice | ||
| + | **main sections as tabs | ||
| + | **not more than three levels in a menu | ||
| + | **Tabbing | ||
| + | **modules placed in more then one category if needed | ||
| + | **allow users to customize navigation | ||
| + | **standard navigation way needed to use descriptions of howtos | ||
| + | **let the user move most used modules vie kmenu editor to his menu | ||
| + | **grayout uninstalled hardware but allow to start | ||
| + | **grayout and clickable is confusing | ||
| + | **merge section and only show icons for items installed | ||
| + | **directed graph presents a tree with icons multiply categorized | ||
| + | **don't show icons for hardware that is not in the system ("add hardware" that lists all possibilities) (same for services) | ||
| + | **favorites view | ||
| + | **Different categories: "General Networking" and "Large/Commercial Site Networking" | ||
| + | **network devices as node under hardware | ||
| + | **yast module that manages yast modules: adding removing enabling disabling modules | ||
| + | **chance to rearrange the items using my criteria | ||
| + | **tag clouds | ||
| + | **tags but no tag cloud | ||
| + | **don't move icons | ||
| + | |||
| + | *Task Orientation | ||
| + | **need some way to guide a novice user | ||
| + | **help novice user to choose needed software | ||
| + | |||
| + | *Desktop Integration | ||
| + | **YaST for System config and additionally a "YaDT" for Desktop config | ||
| + | **Use kde4's systemsettings as new yast2cc and port .desktop files | ||
| + | **yast is for system config not for user's config | ||
| + | **don't mix user's desktop settings with system settings | ||
| + | **border between system config and users config | ||
| + | **solution needs to be desktop neutral => freedesktop | ||
| + | **a common interface (not two different styles for kde and gnome) | ||
| + | **qt, gtk, ncurses with same functionality, behavior and look. | ||
| + | **don't group modules in a control center, move modules where the user expects/needs them | ||
| + | **put modules to (gnome/kde) desktop settings menu | ||
| + | **move modules to kde system settings | ||
| + | |||
| + | *General Statements and Miscellaneous | ||
| + | **no change needed | ||
| + | **don't change anything | ||
| + | **work on something else | ||
| + | **Yast must be easy accessible and non dangerous | ||
| + | **yast architecture should be plugable to be easily extendable by the community | ||
| + | **decide who the yastcc is for: user or admin experts | ||
| + | **don't ask an groups for ideas because there are no absolute beginners | ||
| + | **wizard only for education, "normal" config when user is educated | ||
| + | **One-click-configure | ||
| + | **rule: 'every hardware device should have an entry in the hardware section' [and it may have other entries elsewhere] | ||
| + | **rule: 'all keywords and tags must be listed at the end of the module summary' | ||
| + | **Let the community add keywords | ||
| + | **wrong question: "how easily can the user find what he/she wants within yast2-control-center" => "how easily can the user find what he/she wants within the Desktop?" | ||
| + | **Don't forget text mode! | ||
| + | **button "I'm a beginner". tell the beginning user that some system setting can break his system | ||
| + | **While installation a list of modules and actual setup is shown, ycc should this list too | ||
| + | **every module writes a short summery of the setup to the disk. when ycc finds no summery is shows a description of the module | ||
| + | **mainmenu with beginner/expert/master of the universe | ||
| + | **Show the commandline equivalents for the icons to learn the command | ||
| + | **config of yastcc like konqueror (double click or single click to start module) | ||
| + | **different language for admin tasks | ||
| + | **easy bug reporting: select package and fill in bug reports with package infos | ||
| + | **maybe legal issues with web version of yast | ||
| + | |||
| + | *Module Wishes | ||
| + | **module that creates modules | ||
| + | **openvpn server and client module | ||
| + | **integration of firewall setup config for all yast server modules | ||
| + | **module to configure NoMachine NX | ||
| + | |||
| + | *About YaST, openSUSE and the Universe | ||
| + | **faster yast especially downloading updates | ||
| + | **screen magnification while installation | ||
| + | **abort button should really work | ||
| + | **mark broken packages in the repo | ||
| + | **too many repos and software hard to find | ||
| + | **repo refresh takes too long | ||
| + | **software management needs improvement | ||
| + | **Client/Server via vnc | ||
| + | **Client/Server: connect to remote hosts for configuration | ||
| + | |||
Revision as of 11:03, 29 November 2007
Contents |
Goal
We want to redesign the YaST Control Center. We strongly belive that YaST Control Centre can make or break YaST and openSUSE. We want to set a new standard in the way how system administration tools are presented to the user. Therefore we are looking for a radical new design so that we are not just copying existing ideas. Please feel free to comment on these and discuss your ideas (even radical new ideas are highly welcomed) on our mailing lists.
Problem
In several bugreports and usability tests we see that for many users it is hard to find out what YaST module to use to solve their problem or to do the right configuration. The current control center is very crowded and not intuitive for a non-geek user.
Some of the reasons are:
- overcrowded (esp. network and software section)
- no clear tasks identifiable
- navigation
- search
- ugly
- unclear wording
- confusing
Ideas
Card Sort Study
We asked about 30 experienced user how they would sort the modules in the YaST Control Center. Find out about the procedure and results of this study.
First Brainstorming
- present modules related to actual problems and highlight them; use e.g. logfiles as source of actual problems
- present a summary of the system; distinguish between configured and not-configured modules
- create troubleshooting and HowTo guides in the openSUSE wiki which are linked to the control center
- strengthen search functionality by using tags in the modules
- use a favorites/recently used section
- display modules differently (e.g. whether they have not been used by the user, are new available,...)
- use only a search field as control center (Yoogle :-))
- Tabbed interface
- Classic and new look options
Ideas mentioned on the Mailing Lists
I have collected the ideas and proposals form the discussion initiated by this mail http://lists.opensuse.org/opensuse/2007-11/msg02390.html
Please feel free to add items or rearrange the sections.
- Wording
- high-level roles: samba -> windows compatible file server
- don't change from well-established unix terminology to windows jargon
- No acronyms in the modules titles
- tag modules with wordings known form other operating systems
- newbie menu with common, non computer specific wording
- understandable words: display, install/uninstall programs etc.
- Documentation and Help
- experts explanation button with technical info
- web based yast
- live full text search field
- docu organized in sections (description, tutorial, details, man)
- Personal knowledge base to customize and make notes in Yast (copy them to new system or wiki)
- popup with description when moving mouse over icon
- scarceness of help with some modules is disconcerting
- easy feedback mechanism
- docu too technical
- links to documentation (networking docu should be local)
- useful tooltips and a paragraph for every module (use rpm descriptions)
- show links to related item, related tools, docu, history of changes, personal notes, wiki
- small faq that highlight appropriate modules
- "tell me more" button for help on modules
- open suse reference book on the appropriate topic that a certain module is about
- help tip on mouse hover or help panel
- tutorial mode: give a list of most commonly used tasks
- provide a side-bar type "lookup" dictionary if needed
- Layout
- "Gnome way of doing things" is a really bad idea... really bad.
- web base hast (no javascript)
- don't show modules that configure non existing hardware
- user interface as a web page (like routers have) use css and lat users rearrange menus
- list/details view of the icons
- theme support
- no different layouts from on gui to the next
- make layout configurable
- moving or enlarging icons might confuse
- not more than 7 objects in any list
- Grouping and Icon Placement
- move network card in hardware section
- Own icons for graphics tablets and mouse
- separate sax modules for mouse keyboard display and tablet
- Hide seldom used configuration modules
- consolidate modules with similar tasks into one contra having somewhat redundant entries might be handy.
- define max number of children per node
- don't use tree structure but lattice
- main sections as tabs
- not more than three levels in a menu
- Tabbing
- modules placed in more then one category if needed
- allow users to customize navigation
- standard navigation way needed to use descriptions of howtos
- let the user move most used modules vie kmenu editor to his menu
- grayout uninstalled hardware but allow to start
- grayout and clickable is confusing
- merge section and only show icons for items installed
- directed graph presents a tree with icons multiply categorized
- don't show icons for hardware that is not in the system ("add hardware" that lists all possibilities) (same for services)
- favorites view
- Different categories: "General Networking" and "Large/Commercial Site Networking"
- network devices as node under hardware
- yast module that manages yast modules: adding removing enabling disabling modules
- chance to rearrange the items using my criteria
- tag clouds
- tags but no tag cloud
- don't move icons
- Task Orientation
- need some way to guide a novice user
- help novice user to choose needed software
- Desktop Integration
- YaST for System config and additionally a "YaDT" for Desktop config
- Use kde4's systemsettings as new yast2cc and port .desktop files
- yast is for system config not for user's config
- don't mix user's desktop settings with system settings
- border between system config and users config
- solution needs to be desktop neutral => freedesktop
- a common interface (not two different styles for kde and gnome)
- qt, gtk, ncurses with same functionality, behavior and look.
- don't group modules in a control center, move modules where the user expects/needs them
- put modules to (gnome/kde) desktop settings menu
- move modules to kde system settings
- General Statements and Miscellaneous
- no change needed
- don't change anything
- work on something else
- Yast must be easy accessible and non dangerous
- yast architecture should be plugable to be easily extendable by the community
- decide who the yastcc is for: user or admin experts
- don't ask an groups for ideas because there are no absolute beginners
- wizard only for education, "normal" config when user is educated
- One-click-configure
- rule: 'every hardware device should have an entry in the hardware section' [and it may have other entries elsewhere]
- rule: 'all keywords and tags must be listed at the end of the module summary'
- Let the community add keywords
- wrong question: "how easily can the user find what he/she wants within yast2-control-center" => "how easily can the user find what he/she wants within the Desktop?"
- Don't forget text mode!
- button "I'm a beginner". tell the beginning user that some system setting can break his system
- While installation a list of modules and actual setup is shown, ycc should this list too
- every module writes a short summery of the setup to the disk. when ycc finds no summery is shows a description of the module
- mainmenu with beginner/expert/master of the universe
- Show the commandline equivalents for the icons to learn the command
- config of yastcc like konqueror (double click or single click to start module)
- different language for admin tasks
- easy bug reporting: select package and fill in bug reports with package infos
- maybe legal issues with web version of yast
- Module Wishes
- module that creates modules
- openvpn server and client module
- integration of firewall setup config for all yast server modules
- module to configure NoMachine NX
- About YaST, openSUSE and the Universe
- faster yast especially downloading updates
- screen magnification while installation
- abort button should really work
- mark broken packages in the repo
- too many repos and software hard to find
- repo refresh takes too long
- software management needs improvement
- Client/Server via vnc
- Client/Server: connect to remote hosts for configuration
Mockups
From Usability Team
Inspired by GNOME
similar to GNOME control center
Tagcloudish
The main though beyond that idea is to increase the size of the modules when the user has used it.
Similar to tag clouds, modules that are used often become bigger and therefore
- easier to detect
- easier to open because the size the user needs to hit with his mouse was increased.
The "HowTo Guide" link will lead to a HowTo/Troubleshooting Wiki. This should serve as a replacement for "help". This makes sense, because studies show, that due to bad experiences users don't expect any help beyond a help button.
The use of similar icons in the service section represents modules that are not installed yet.
I would like to get your comments on that idea.
Although there are many modules missing at present, maybe it is worth to give this idea a try as it is something no control center has yet.
From YaST Developers
Only two pages
In order to display any module on two pages, some modules need to go. As funny as this sounds it is possible anyhow. For example, currently we have 4 modules dealing with repositories - these can be unified in one. Furthermore, any network related modules can be merged to one network module. Most users currently even look for firewall in the network tab and not in security. So why not moving this there as well. Grouping every thing up intelligently would save a lot modules without loosing functionality. Of course this means a lot of changes to the modules itself.
See some mock ups of our first idea that we (Thomas and Daniel) had. See as well the history as we changed it.
The miscellaneous section is just a collection of modules that we did not find a different/correct place for *smile*. This is just brainstorming anyhow. In this mock up the modules are somehow sorted by importance (int the following two they are not, best would be a combination)
Next step in the evolution
A column with related modules allows to find modules with related functionality:
With some clean-up and nicer colors:
Enter YaST System Navigator
In search for a slightly different approach, Josh came up with what he currently describes as YaST System Navigator (dull name, I know!). Basic idea: use massive tagging and meta data, so users can find everything with a search interface instead of clicking through modules to learn where to find things.
Ban single click invocation. Use the first click to mark a module and show more detailed information and related modules.
By default, YaST would start this way, with the option to show all modules at once (which would be similar to what we have now):
Notes and Todos:
- A "favorites" section might be better than a "recently used"
- Show modules that need to be configured (using some magic)
The search should allow for a certain fuzyness or we need a huge set of keywords. Here it shows a result page, with hints how to progress.
- As Thomas already pointed out the middle and bottom section seems a bit overwhelming. Needs fixing.
If you click on an item, you will see related modules in the middle section and further information in the bottom section of the window. Description should be good enough to eliminate the need to start a module in order to find out what you can do with it.
Notes:
- Should mark modules that need installation of additional software (Should try emblems maybe)
- Mark modules that have already been configured / need configuration?









