Adaptive User Interfaces
Have you ever created a screen to display data for selection only to come back a month later and realize that the amount of data showing makes the interface unwieldy or too slow?
You sir may require some adaptive user interface programming. In the programming world we try to create interfaces to allow the most direct way to access the data with the least amount of work. Let's examine an example to understand a little better how adaptive user interfaces work and how they could benefit our situation of having a lot more data than we originally intended.
For our example, let's say we have create an interface screen for you to assign groups to a specific user. When you click in to edit that user you are presented with one checkbox per user group so that you can assign that user into specific groups.
This works great, when you have just a few groups. Now we come back a month later and we have created 100 different groups to effictely group our users by some metric ( like their company, a class, etc ). When we come back to that same screen now there are 100 checkboxes on our screen ( one for each group ) and the page has become really long and the save button has been pushed clear down the screen. Now lets go ahead and add 900 more groups to our system, now this interface is nearly impossible to use effectively.
In comes adaptive user interface design. We can alter the programming on this screen to display the checkboxes ( one per group ) while the data set is small, let's say we set a limit at 20 checkboxes for this interface display. We then create a new interface that will accommodate situations where we have more than 20 user groups. The programming will decide which one to use based on how many groups there are, if there are more than 20 it will use a different interface that handles the excessive data better.
For our alternate interface we decide we are not going to list every group with a checkbox. Instead we only show the groups that are assigned to that user and we provide a link that will open a popup to do a search for another group to add to this user. Now the administrator will only see the assigned groups ( and not the 900 other groups ) and they will be able to narrow down a search for additional groups to add.
This is just one example of how you can use adaptive interfaces to provide effective interfaces for both low amounts of data and greater amounts of data.