The Approach - Abstraction To User Interface
Previous articles in The Approach have discussed Case Threads as an abstraction to a Second Stage Framework and as an abstraction to Data Tenets. We've explained that it is this abstraction that makes Case Threads feel different from existing software in this space. In this article, we hope to translate all the abstraction to the Case Threads user interface and the accustomed look and feel to the Case Threads look and feel.
The Entity Data Tenet provides the best model for all data entry and presentation in Case Threads. Understanding the Entity form and its related screens will allow you to understand all else. In addition, Entities translate to something that everyone is familiar with: Contact Management.
Same Content...Different Presentation
Regardless of the tool you are accustomed to using, chances are the screens were modeled from Microsoft Outlook or ACT! Below are some screenshots of the Outlook Express Address Book function.
With the exception of the NetMeeting and Digital IDs tabs (which are basically specific to Outlook Express functionality), all the data fields available on these Outlook Express screens are available in Case Threads. It is not the content that is different, merely the presentation. Consider the Case Threads Entity Edit screen which essentially handles the functions of Contact Management:
As you can see, the name fields, in Case Threads, map closely to what is available in Outlook Express. There are Title, First Name, Middle Name, Last Name and Nickname fields in both application. We add Suffix which refers to name endings like, Jr., Sr., II, III, etc. We also track Gender and Job Title, which are also available in Outlook Express, but on different tabs. Similarities seem to end here.
Outlook Express and other common contact management tools spread contact information out over several named tabs. Consider the Outlook Express screenshots above. There are tabs for Home and Business and each contains data that is specific to one of those two topics. The Home tab contains mailing addresses and phone numbers for the home of the contact and the Business Tab contains the same sort of information regarding the professional life of the contact.
Case Threads takes a different approach in which several issues were considered. First, if the information on both the Home tab and the Business tab were virtually the same, why provide a separate tab to allow input of the same information? It is a unneeded redundancy. Second, taking the approach to only provide a Home and Business tab essentially limits the user's options. What happens if a user decides he needs to add two Home addresses or needs a third address type?
Two Design Decisions
In considering these two options we made two major design decisions. The first decision was that all contact information (mailing addresses, phone numbers, and e-mail addresses) should appear on one screen. The second decision was to use a management form design for actual editing of this information.
Having all the contact information appear on a single screen was an easy decision. Generally speaking, the primary reason for opening a contact record, is to look up a phone number or address. There was no point to splitting that data over several tabs. As a secondary design decision we thought it best to allow users to display this contact data in any manner that they felt would work best for them. Therefore the display field for contact information is actually an HTML-based template, which is totally customizable.
The display field can be seen in the screenshot below. Notice that all the addresses, phone numbers and e-mail addresses are available on the Contact Tab.
Using a management form design would provide the highest degree of flexibility to users while at the same time reducing the amount of screen and source code redundancy. By management form, we refer to a separate screen to handle the inserting, editing and deleting of addresses, phone numbers and e-mail addresses. A separate form "manages" the data for an address, for a phone number, etc. The screenshot below shows a management form for phone numbers. This screen is accessible from the contact screen by clicking on the "Phone" icon on the Contact Tab.
The Phone Number Management form has all the functionality of the other forms in Case Threads: New Record, Save, Refresh, Move First, Move Previous, Move Next, Move Last, and Delete. When you click the "New Record" toolbar icon you are actually creating a new phone number record for the contact which you are editing. When you click the "Move Last" toolbar icon you are actually telling the managment form to move to the last phone number in the set that is assigned to the contact which you are editing. Anything you do in the management form is pinned on the contact you accessed the management form from. Making changes on any management form will immediately be reflected back in the display field of the contact.
Let's compare Phone Number Management with the Outlook Express model. In Outlook Express, adding a phone number requires the finding of the appropriate phone number field (mobile, fax, home, etc.), on the appropriate contact tab and typing it in. The Case Threads model is only slightly more involved. Open the Phone Number Management form, select the phone number type (mobile, fax, home, etc.), which is analogous to finding the appropriate phone number field, enter the phone number and save the record.
You will see the management form design throughout Case Threads. Understanding the design will make your transition to Case Threads very easy.