27

Rich User Experience by Calibra

Embed Size (px)

DESCRIPTION

All the substantial investment and effort over twenty years of extensive research, development, and deployment of graphical user interfaces for desktop and client/server applications, have been more or less thrown away with the introduction of the Browser and HTML. For example, do you know that until today, HTML does not support some of the most basic widgets such as a Data Entry with Spin Buttons? Appalling!!!. However, things are improving a bit with the adoption of new technologies such as AJAX and browsers are becoming more than just surfing tools by including collaborative and social networking features. After many frustrating years, it is now time to bring all the functionality, usability, and high navigation onto the web. The next generation of web sites and web-based applications must meet and even exceed some of the features and standards typically found on desktop and client/server applications.

Citation preview

Page 1: Rich User Experience by Calibra
Page 2: Rich User Experience by Calibra

Cover Sheet

White Paper

Rich User Experience

October 2005 Dr. David Saad Chairman, President & CEO Calibra Corporation Notice

The information contained in this document reflects Calibra’s current view of the subject matter discussed herein as of the date of publication. This document is subject to changes and, therefore, it shall not be construed as a commitment by Calibra who does not guarantee the accuracy or completeness of any information contained in this document after the date of publication. THIS WHITE PAPER IS PROVIDED “AS IS” FOR INFORMATIONAL PURPOSES ONLY. CALIBRA MAKES NO WARRANTIES, EXPRESS OR IMPLIED, WITH RESPECT TO THIS DOCUMENT, AND EXPRESSLY DISCLAIMS ANY AND ALL IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. Calibra may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering the contents of this document, and Calibra and its licensors retain all right, title, and interest in and to such intellectual property rights. Except as expressly provided in a written agreement between you and Calibra, the furnishing of this document does not grant you any license, express or implied, to any such patents, patent applications, trademarks, copyrights, or other intellectual property of Calibra. Calibra and Bu z z are trademarks or registered trademarks Calibra protected by the laws of the United States and other countries. This white paper may contain some references to trademarks owned by entities other than Calibra, and such trademarks are the property of their respective owners.

Page 3: Rich User Experience by Calibra

Table of Content Synopsis ………………………………………………………………………………………………………………. 1 Needs ………………………………………………………………………………………………………………..... 1 Obstacles ………………………………………………………………………………..…………………………..… 2 Responsibilities ……………………………………………………………………………………………………..… 2 Inadequate Current Solutions ……………………………………………………………………………………..… 2 Future Solutions …………………………………………………………………………………………………….... 3 Data Entry ………………………………………………………………………………………………….... 5 Data Display ……………………………………………………………………………………………….... 6 Drop Down Lists …………………………………………………………………………………………….. 7 Drop Down Lists …………………………………………………………………………………………….. 7 Buttons With Appropriate Icons …………………………………………………………………. 7 Drop Down List With Radio Buttons …………………………………………………….………. 7 Drop Down List With Check Boxes …………………………………………………….….……. 8 Drop Down List With Radio Buttons & Icons & Alphabetical Index ………………….………. 8 Drop Down List With Check Boxes & Alphabetical Index …………………………….………. 9 Data Entry With Spin Buttons ……………………………………………………………………………… 10 Data Entry With History …………………………………….………………………………….…………… 10 Data Entry With Date Picker ……………………………………………..………………………………… 10 Data Entry With Tree Picker ……………………………………………..………………………………… 11 Section or Web Site Map With a Tree Picker ………..…………………………..……………….……… 11 Scrollable Window ………..………………………………………………………...……………….……… 12 Fonts Picker ………..………………………………………………………………..……………….……… 13 Bullets Picker ………..………………………………………………………………..……………….…….. 14 Alignments Picker ………..…………………………………………………………….…………….……… 15 Spacing Picker ………..………………………………………………………………..……………….…… 16 Color Picker ………..………………………………………………………………..……………….……… 17 Gradient Picker ………..………………………………………………………………..……………….…. 18 Texture Picker ………..………………………………………………………………..………………..…. 19 Pattern Picker ………..………………………………………………………………..……………………. 20 Table ………..………………………………………………………..…………………..……………….…. 21 Social Networks …………………………………………………………………………………………….. 22 Conclusion ……………………………………………………………………………………………………………. 23

Page 4: Rich User Experience by Calibra

SYNOPSIS All the substantial investment and effort over twenty years of extensive research, development, and deployment of graphical user interfaces for desktop and client/server applications, have been more or less thrown away with the introduction of the Browser and HTML. For example, do you know that until today, HTML does not support some of the most basic widgets such as a Data Entry with Spin Buttons? Appalling!!!. However, things are improving a bit with the adoption of new technologies such as AJAX and browsers are becoming more than just surfing tools by including collaborative and social networking features. After many frustrating years, it is now time to bring all the functionality, usability, and high navigation onto the web. The next generation of web sites and web-based applications must meet and even exceed some of the features and standards typically found on desktop and client/server applications. Considering the overwhelming monopoly of the leaders in the industry in the system software, browsers, and development tools segments of the industry, it is ample obvious that those leaders have failed their own customers (i.e., application developers) and must now take on their responsibility by providing the appropriate platform which will offer the best of both worlds – the rich content and networking inherent in the web, on one hand, and the high functionality, usability, and navigation typically found in desktop and client/server applications, on the other. NEEDS While the Internet in general, and the web in particular are very rich in content and networking, they fail miserably on functionality, usability, and navigation. On the other hand, while desktop and client/server applications are quite rich in functionality, usability, and navigation, they are poor on content and have limited networking restricted to LAN or WAN. There is a need to have the best of both worlds – the rich content and the networking capabilities of the web combined with the rich functionality, usability, and navigation of desktop and client/server applications. As an analogy, in the very early years of the automobile industry, consumers had not too many choices - cars came in “black, black, and black”. Similarly, in the very early years of the Internet, companies had not too many choices either - web sites came in “flat, flat, and flat” (no disrespect intended to any of the web sites displayed below, even though, we place the responsibility squarely on their owners). Today, it is not enough to have fast cars. We also need cars with leather seats, air conditioning, hi-fi stereo, GPS system, etc. We want to ride with safety, comfort, pleasure, entertainment, and style. Similarly, it is no longer enough to have web sites that download fast. We also need to have functionality, usability, easy navigation, nice aesthetic, audio, video, and an overall rich and fulfilling user experience.

1

Page 5: Rich User Experience by Calibra

OBSTACLES Historically, due to limited bandwidth and its cost, rich user experience was simply not technically or financially feasible. Hence, browsers and scripting languages were developed with such restrictions in mind. However, bandwidth is today plentiful and is relatively affordable. However, web development tools have not evolved at the rate that they should have to offer a rich user experience. The main reason for such stagnation is the monopoly that certain leaders in the industry have attained. For example, HTML and browser technologies have been more or less quite stagnant in the last few years. Lack of competition in those sectors does not entice existing players to work hard to earn market share while customers can’t complain too much due to lack of choices. RESPONSIBILITIES Application developers ought to concentrate on their domain expertise by focusing on their application and not on reinventing the wheel and developing system features, tools, or widgets. For example, application programmers should not be asked to develop spin buttons, drop down lists, font pickers, color pickers, or tables. All such features must be readily available from companies who develop system software such as operating systems, browsers, or development tools such as Interactive Development Environments (IDEs). Those companies have indeed the responsibility to offer such features to application developers allowing them to be productive by focusing on their application. System software vendors have the responsibility to make it friction free to application developers to develop and deploy their applications using such features. Friction free means no compatibility problems, no downloading necessary, no plug-ins required, no alignment hustles, no delays in deployment, no delays in execution, etc. System software vendors must offer WYSIWYG type of development tools with drag and drop capabilities allowing developers to easily and quickly select any widget among a rich set of widgets in order to design applications with a rich user experience that offers high functionality, usability, and easy navigation. INADEQUATE CURRENT SOLUTIONS There are two main solutions which offer a rich user experience: Java Applets and Active X components. While those two solutions might be technically elegant in some cases, they are unfortunately not very feasible for the following reasons:

Both solutions take a long time to download even under the best scenarios. Users are simply not willing to wait. Competition is one click away.

Both solutions require users to enable the plug-in option in their browser. The majority of users,

especially novice ones, do not know how to do so. In this case, the inconvenience becomes a handcuffing annoyance.

Both solutions require users to download the appropriate plug-ins after enabling that option on their

browser, yet another obstacle to deal with. Both solutions are poor at synchronizing and controlling the version of plug-ins resulting into an

incompatibility nightmare. Both solutions represent a security hazard resulting into a strong policy from CIOs prohibiting any

such downloads. In a true thin client environment, downloading anything is simply not possible. Hence, unless those

plug-ins are embedded in the browser or better in the operating system, users with thin client will be left out hanging, especially Cyber Café users.

Furthermore, now that Microsoft is no longer required to incorporate Java in Internet Explorer, and considering that Microsoft owns almost 95% of the browser landscape, the days of the Java Applet solution are counted if not already gone, unless companies like Sun take immediate actions to resurrect Java on the client side.

2

Page 6: Rich User Experience by Calibra

FUTURE SOLUTIONS In order to avoid all the obstacles and problems mentioned above, a rich set of widgets must be provided either in HTML, in the browser, or even better, in the operating system, even though the latter might cause some portability problems. In addition to the functionality, usability, and navigation mentioned above, the next generation of web sites and web-based applications must provide the following:

Customization of widgets to meet the look and feel of a company’s web site as well as its business processes.

Personalization of widgets by each user who can define a set of preferences for aesthetics,

functionality, and navigation. For example, based on certain conditions, a user should be able to select dynamically a content of a drop down list or a web page to automatically go to.

Profiling to allow companies to better serve their constituents based on their personal preferences.

Standard client data validation such as numeric, date, time, e-mail address, URL addresses, etc.

Standard intelligent business validation such as automatic address processing which intelligently

completes an address based on the minimum information provided by the user. Database centric instead of publication centric. For example, list of contacts or list of addresses

must be stored in a database and displayed in widgets (like OutLook), instead of being published using HTML. The rational behind such paradigm shift is to reduce the maintenance cost. With HTML, a company needs an HTML expert to perform mundane tasks such as spelling corrections, modification, additions, or deletions all of which could and should be performed by a secretary. Hence updating a web page should be no different than update a record in OutLook. Hence, the distinction between a desktop application and a web-based application from the user perspective should be minimal.

Collaboration to allow users to share in real-time information, pictures, videos, etc.

Social Networking to allow users to be part of online communities.

The benefits of such advanced features would be an increase in productivity and a decrease in typing errors. Hence, to the extent possible, the system must fill up the screen as much as possible with a minimum of typing on behalf of the user. Therefore, from the above list, rich user experience is not limited to look & feel as it is generally conceived, but rather to rich functionality which enhances productivity as well.

3

Page 7: Rich User Experience by Calibra

The following represents a partial list of widgets desired or necessary to offer a rich user experience on the web:

Data Entry Data Display Data Entry with History along with automatic sorting and searching capabilities Data Entry Box for inserting images, pictures, etc. Data Entry with File Locator Data Entry with Spin Buttons that spins on numeric, date, time, and alphabetic data. Data Entry with Drop Down List Data Entry with Drop Down List and Radio Buttons indicating single selection Data Entry with Drop Down List and Check Boxes indicating multiple selections Data Entry with Drop Down List and Radio Buttons and Alphabetical Index Data Entry with Drop Down List and Radio Buttons and Icons Data Entry with Drop Down List and Radio Buttons and Alphabetical Index and Icons Data Entry with Drop Down List and Check Boxes and Alphabetical Index Data Entry with Drop Down List and Check Boxes and Icons Data Entry with Drop Down List and Check Boxes and Alphabetical Index and Icons Data Entry with Tree Picker Standalone Tree Data Entry with Date Picker Calendar Color Picker Gradient Picker Texture Picker Pattern Picker Fonts Picker Bullets Picker Alignments Picker Spacing Sound Picker Graphic Picker Special effects Data Entry with Scrollable Window with Ruler and with Rich Text formatting Data Display with Scrollable Window with Ruler and with Rich Text support Table with extensive features such as searching, filtering, sizing, linking, viewing, grouping, etc. Find & Replace Progress Bar Media Player skins to match the look and feel of corporate web sites as shown below

4

Page 8: Rich User Experience by Calibra

Data Entry The Data Entry widget is one of the most common widget which is usually used with other widgets such Drop Down Lists and Pickers. The Data Entry widget must provide the following main functions:

Typing Editing with Delete, Backspace, and Insert buttons enabled

Scrolling right and left using the appropriate arrows on the keyboard

Data type including:

Alphabetic Alphanumeric Numeric Integer Numerical Decimal Currency Integer Currency Decimal Percentage Integer Percentage Decimal Date (mm-dd-yyyy) Time (hh:mm:ss) E-mail Address URL Address

Font with the capability of choosing the following with a WYSIWYG Font Picker:

Type Style Size Color Effect

Look & Feel:

2D engraved look & feel Dimensions: capability of choosing the height and width with a Spin Button Borders: capability of selecting a color using a WYSIWYG Color Picker. Background: capability of selecting a color using a WYSIWYG Color Picker.

Aligning capability to align the data in the Data Entry Box with a WYSIWYG Alignment Picker that

includes Left Aligned, Centered, Right Aligned, Justified, etc. Explanation message. When a user positions the cursor inside a widget, an explanation message

must be given to assist the user in typing or selecting data. For example, in a salary field, the explanation message could be “Please enter an integer number from $10,000 to $500,000”.

Error handling. In case the data is not valid, the widget must provide the mechanism of easily

identifying the errors and correcting them such as turning the erroneous data in red and tabbing through the field in errors for a quick and friction free correction of errors.

Data Validation:

Client Validation: date, time, numeric, e-mail address, URL, etc. Server Validation: specific business logic type of validation Special Universal Validation: City, State, Country, County, Area codes, Zip Codes, etc.

Additional functions such as spinning, selecting, sorting, and searching

5

Data Entry

Page 9: Rich User Experience by Calibra

Upon right clicking in the Data Entry box, a pop-up with the following functions should be provided:

Data Display Every widget must have two modes:

Data Entry Mode in which a user can actually either type data or select data from a drop down list or a picker.

Data Display Mode in which data is simply displayed but a user can neither enter data, update data, nor select data from a drop down list or a picker.

6

Data Display

Page 10: Rich User Experience by Calibra

Drop Down Lists Current drop down lists are quite archaic. For example, if a user needs to select multiple entries in a drop down list, he/she needs to hold the ALT button – how about using Radio Buttons for single selection and Check Boxes for multiple selections? Wouldn’t that be more intuitive, straight forward, easier, simpler, and richer experience? In addition to all the features mentioned above for Data Entry and Data Display widgets, Drop Down Lists should have the following common functions:

Buttons with appropriate icons clearly identifying the type of a Drop Down List and not just the

boring and archaic down arrow. Here are some examples below:

Drop Down List with Radio Buttons:

Drop Down List with Check Boxes:

Data Entry with Spin Buttons:

Data Entry with Date Picker:

Data Entry with Tree Picker:

Data Entry with File Locator:

Data Entry with Music Picker:

Data Entry with Graphics Picker:

A Drop Down List with Radio Buttons indicating single selection. Each element of this widget could

be customizable to match the look & feel of a company’s web site or web-based application including:

Background color of the Drop Down List box and the Data Entry box

Dimensions of the Drop Down List box

Border colors

Mouse over effect

Current selection effect

Alignments of items in the list:

Left Aligned Centered Right Aligned

Font of items in the list:

Type Style Size Color Effect

Cursor type & effect

Every button and elevator should have 4 statuses: normal, mouse over, clicked, and disabled.

7

Engraving effect upon clicking the button

Special effect upon mouse over

Special effect for current selection

Page 11: Rich User Experience by Calibra

.

A Drop Down List with Check Boxes indicating multiple selections:

Global Selection & De-selection button Current multiple elections Special effect upon mouse over Indicating current cursor position Customizable cursor

A Drop Down List with Radio Buttons & Icons & Alphabetical Index which is appropriate for single

selection, for items that have icons such as cities, credit cards, companies’ logo, people’s picture, and the like, and for a long list of items which could be accessed quicker and easier with an alphabetical index.

In addition, a tool tip or an explanation balloon for every item in the drop down list which uniquely identifies items in case the list includes identical entries is necessary. In the example below, there are two cities called Pasadena. Upon mouse over, a turquoise tool tip showing the URL of the selected city must be automatically displayed uniquely identifying that city.

8

http://www.ci.pasadena.ca.us/

Page 12: Rich User Experience by Calibra

8

A Drop Down List with Check Boxes & Alphabetical Index which is appropriate for multiple

selections, for items that have icons such as cities, credit cards, companies’ logo, people’s picture, and the like, and for a long list of items which could be accessed quicker and easier with an alphabetical index.

Global Select / Deselect of current Alphabet Letter Global Select / Deselect of all letters

Upon right clicking on any of the drop down lists, the following pop-up should appear offering extensive features: In addition, drop down lists should have the following common settings:

Status which could be either Data Entry or Data Display If the Status is Data Display then the Mode is Non-Editable

If the Status is Data Entry then the Mode could be:

Selection only from the drop down list Addition only by typing in the Data Entry Box Selection or addition

Search which automatically picks up an item from the drop down list as

soon as characters are recognized as they are typed in the Data Entry Box.

Sorting of items in the drop down list

Source which allows the user to select the source from which the items

in the drop down list should be gotten from Boolean which allows the user to specify “AND” or “OR” in case of

multiple selection. This option applies only to Drop Down List with Check Boxes.

Default value of the widget

9

Page 13: Rich User Experience by Calibra

Data Entry With Spin Buttons In addition to all the features and properties found in the Data Entry widget, the Data Entry with Spin Buttons should spin on the following data types:

Numeric Integer

Numerical Decimal

Currency Integer

Currency Decimal

Percentage Integer

Percentage Decimal

Time (hh:mm:ss)

Date: Days, Months, Years, Seasons, etc.

Data Entry With History In addition to all the features found in the Data Entry widget, the Data Entry with History should also have some of the properties found in the Drop Down List with Radio Buttons. More specifically, in this widget, as soon as a user enters a value, a list of prior entries should be automatically displayed. The history of entries should be typically stored in cookies. Typically, Data Entry with History is usually used for common fields such as login coordinates like User ID and password, or address fields, phone numbers, e-mail addresses, etc. Data Entry With Date Picker The Data Entry with Date Picker should offer the following main features:

Deselect any date after selecting a date Current Date which is continuously updated to the current

system date Fixed Date selected from the drop down calendar

Spinning on month and year

Capability of blocking certain dates. In such event, dates in

the calendar should be disabled. Display the day of the year.

Customizable look & feel including borders, background,

foreground, mouse over effect, clicking effect, etc. Mouse over and selection effects

10

Page 14: Rich User Experience by Calibra

Data Entry With Tree Picker The Data Entry with Tree Picker is quite useful when the drop down list is actually a hierarchical structure such a web site or a hierarchical record. Section or Web Site Map With a Tree Picker Drop down menus in HTML are quite ineffective and unreliable. We always seem to be chasing them and have to be so exact to catch the item desired on the list. Instead, a section or web site map using a Tree Picker could be provided upon placing a mouse over an item in a menu bar. That pop-up would disappear upon moving the cursor away from that item in the menu bar, or it could be anchored if desired. The Tree Picker in the pop-up has the advantage of being reliable, fast, flexible, and with remembrance capabilities. It also supports a deep hierarchy due to its collapsing and expanding capability, while the deeper the hierarchy is, the worse drop down menus become. With a Tree Picker, navigation is also much more effective. For example, instead of having to go through the entire hierarchy every time the user needs to use the drop down menu, the Tree Picker appears with the prior selection that the user made, making it very fast and effective to navigate. Furthermore, as shown below, this widget could be a mini Windows Explorer offering thumbnails, statistics, and other rich options.

11

Page 15: Rich User Experience by Calibra

Scrollable Window The Scrollable Window widget should include the following main features:

Ruler

Very rich text formatting capabilities

Insertion of pictures, illustrations, icons, emotions, signatures, etc.

Font Picker

Bullets Picker

Alignments Picker Left Aligned Centered Right Aligned Justified

Spacing

Formatting including:

Color Picker Gradient Picker Texture Picker Pattern Picker Effects such as animation and sound

References with:

Spelling Checker Grammar Checker Style Checker Dictionary Thesaurus Statistics

Every single element such as background, borders, buttons, elevators, scrollable bars, ruler, handles, and the like are all customizable to match the look and feel of a company’s web site or web based application.

12

Page 16: Rich User Experience by Calibra

Fonts Picker A full fledge WYSIWYG Fonts Picker with features and functions matching or even exceeding the ones found in desktop applications is necessary. In the drop down list for Type, all fonts should be displayed in their own type giving the user the opportunity to instantly see the font type. The Preview feature should display the changes in real-time.

13

Page 17: Rich User Experience by Calibra

Bullets Picker A full fledge WYSIWYG Bullets Picker with features and functions matching or even exceeding the ones found in desktop applications is necessary. By clicking on the Options button, the user can change the standard bullets type and can import some as well. Intelligent numbering and outlining of bullets should be available. The Preview feature should display the changes in real time giving the opportunity to the user to instantly observe the changes made.

14

Panama

Miami

New York

Page 18: Rich User Experience by Calibra

Alignments Picker A full fledge WYSIWYG Alignments Picker with features and functions matching or even exceeding the ones found in desktop applications is necessary. The Alignments Picker should offer the following alignment styles:

Left Aligned Centered

Right Aligned

Justify with Last Left Aligned

Justify with Last Centered

Justify with Last Right Aligned

Justify All

Furthermore, the user should be able to specify the left and right margins as well as the indentation of the first line. The Preview feature should display the changes in real time allowing the user to instantly observe the changes.

15

Page 19: Rich User Experience by Calibra

Spacing Picker A full fledge WYSIWYG Spacing Picker with features and functions matching or even exceeding the ones found in desktop applications is necessary. The Spacing Picker should provide the capabilities of spacing and numbering lines and paragraphs as well as specify the coordinates of tabs. Furthermore, the user should be able to display or hide the Ruler.

16

Page 20: Rich User Experience by Calibra

Color Picker A full fledge WYSIWYG Color Picker with features and functions matching or even exceeding the ones found in desktop applications is necessary. The user should be able to choose the Spectrum of colors which could be low colors (256), high colors (16 bits), or true colors (32 bits). In addition, the user should be able to choose different Palettes including Gray Scale, Named, Simple, Standard, and Advanced. In case of Named Palette, a brief history of the Named Color selected should be given, which would be a unique and interesting feature. To set the desired color, the user could either enter the appropriate number combination if known, move the cursor within the Palette, or use the Color Mixer. The palette, the numbers, and the color mixer should all synchronized. A user should also be able to save some of the chosen colors by simply clicking on the “Plus” button in the Custom Colors section.

17

Page 21: Rich User Experience by Calibra

Gradient Picker A full fledge WYSIWYG Gradient Picker with features and functions matching or even exceeding the ones found in desktop applications is necessary. Standard gradients should be provided along with the capability of importing new ones. The gradient should consist of one or two colors with the capability of specifying the intensity of each color. The gradient could take number of different shapes including horizontal, vertical, diagonal up, diagonal down, corner, and center. The user could also specify the transparency of the gradient which should be expressed in percentage. The Preview feature should automatically display the changes in real time giving the user the opportunity to observe the changes in the gradient. Finally, the user should be able to save any gradient created for later use.

18

Page 22: Rich User Experience by Calibra

Texture Picker A full fledge WYSIWYG Texture Picker with features and functions matching or even exceeding the ones found in desktop applications is necessary. Preset textures ought to be provided to users with the capability of importing their own. In addition, users ought to be able to save any of their selections for later use.

19

Page 23: Rich User Experience by Calibra

Pattern Picker A full fledge WYSIWYG Pattern Picker with features and functions matching or even exceeding the ones found in desktop applications is necessary. Preset patterns ought to be provided to users with the capability of importing their own. Using a Color Picker, users should be able to choose the background and foreground colors of each pattern. In addition, users ought to be able to save any of their selections for later use.

20

Page 24: Rich User Experience by Calibra

Table The table below should provide very similar functionalities found in spreadsheets. It should offer the following main features which are available by either clicking on any of the buttons in the Top Tool Menu Bar or by right clicking in the table which should make a pop-up appears.

Cell formatting Add a column or a row Delete a column or a row Rename a column or a row

Hyperlink fields to web pages Import data into the table Export data from the table

Selection of fields from the database to be included Views by including or excluding certain columns Group rows with expanding and collapsing capabilities

Sizing rows and column by dragging borders Freezing columns and rows Sort columns in ascending and descending order

Searching the table with Find & Replace capabilities Filtering the table according to advanced search criteria Options

Help

Batching records for quick response time

Closing the Top Tool Menu bar and opening again at will

In addition, the table should include the following features:

Support of the majority of widgets within a cell. For example, a cell could be any of the drop down lists, a spin button, a date picker, a color picker, etc.

Remembrance capabilities which could be effective across sessions.

Capability of simultaneously selecting one or several cells, rows, or columns.

21

100 - 200

Page 25: Rich User Experience by Calibra

Social Networks Social Network Analysis tools must be provided whenever applicable. The tool must be based on What You See Is What You Get (WYSIWYG) paradigm and it must provide the following features:

Different network topologies such as Line, Bus, Tree, Star, Ring, Fully Connected, and Hybrid. Zooming/Panning with Tree/Forest view

Dragging

Expanding & Collapsing

Drilling on vertices and edges

Dynamic addition and deletion of vertices and edges

Searching The Tree

View of the trusted circle belonging to a specific vertex.

Finding shortest path between vertices.

Call, chat, e-mail, and view the weblog of one or more nodes.

Filtering the neighborhood.

Printing tree / cluster

22

Page 26: Rich User Experience by Calibra

Conclusion The substantial investment made for many years in developing rich graphical user interfaces for desktop and client/server applications should be capitalized on, and it is now time to do so. Web sites and web-based applications are very rich in content and networking but very poor on functionality, usability, and navigation. On the other hand, desktop and client/server applications are very rich on functionality, usability, and navigation but poor on content and networking. We should and can have the best of those two worlds, and it is now time to do so. While some progress was made in communications, bandwidth, and the like, system software vendors who develop operating systems, browsers, languages, development tools, and the like have the responsibility towards application programmers (their customers) to solve some of the lingering problems which are preventing a rich user experience on the web to materialize. Specifically, those problems include compatibility, downloading, speed of execution, and security. These problems should and could be solved, and it is now time to do so. Application programmers ought to focus on developing their application and not reinventing the wheel every few years. The responsibility of providing the appropriate platform to develop the next generation of web sites and web-based applications lies squarely on the shoulder of system software vendors who have so far failed to deliver due to firstly some technical problems which are now solvable, and secondly due to legal, financial, and marketing reasons. A rich set of widgets is necessary in order to develop a rich and intuitive graphical user interface on the web. Such set of widgets must be embedded within the browser, HTML, operating system, or Interactive Development Environment (IDE). Examples of such widgets are drop down lists with radio buttons, check boxes, icons, and alphabetical index, date picker, color picker, gradient picker, texture picker, pattern picker, sound picker, fonts picker, alignments picker, spacing picker, scrollable window with rich text formatting, sophisticated table which acts almost like a spreadsheet, etc. We should and could have the best of both worlds, and it is now time to do so.

23

Page 27: Rich User Experience by Calibra

1036 Quail RidgeIrvine, California92603-4240 Tel: (949) 861-2341Fax: (949) 861-2342 [email protected]