We're all familiar with the concept; always design to interface, not to the implementation. This is very powerful; if I want to use some sort of a list in my code, I just declare a List and don't care whether it's a LinkedList or a DonaldDuckList. As long as I want the object to act as a list, I have no problem since every class that implements the List interface will give me the same functionality.
I want to take the Design to Interface paradigm to another level of abstraction. I say the software should be designed to the user interface. This is often called "Design by Use Case". The major idea here is to design how the user will interact with the application before designing the application itself. I like to believe that nailing down the user interface is the most important part of designing a great application. I don't want to claim that the user interface design is the only thing that makes the application great but rather it plays a very significant role. At the end, if your application has a great interface but doesn't do what it's supposed to, then we're back in square one.
I believe that all good software is created for a purpose. I mean good software, like Gmail or Word 2007, etc. The purpose of this breed of applications is to create a platform so you - the user - can easily pursue your purpose. I want to send and receive emails. Google solved this problem very elegantly; Gmail is a web application that allows me to check my email from anywhere in the world (we're making some assumptions here - that "anywhere in the world" actually means "anywhere with an Internet connection"), with enough storage space that will last me two lifetimes and so easy to use that my 80-year-old grandmother easily started using before she understood what the "start" button is for.
On the other hand Word has always been a controversial product. Word, as well as other Microsoft products are considered to be feature behemoths. Tons of functionality that no one in his or her right mind would try to learn them all, but they are still there. Some people argue that having so many features is unnecessary and any application should only contain the main features used by the most people. But I still believe that Word 2007 is still a very sexy product that is designed to show everybody that they needn't be afraid of it.
This paradox is also known as the "80-20 rule"; 80% of the people use only 20% of the functionality but these functionality are never the same among the users. While the Web 2.0 startups are trying to find the sweet 20%, Microsoft always aims for the 100. Well, I think with Office 2007, Microsoft found the sweet 100%. With the Ribbon, they found a great way that lets the users to find every single feature in Office without having to go through the excessive list of menus. Now even though users are still presented with all the features and options it is easier to accompish for them to accomplish their goals. This Ribbon UI was designed after years of usability tests and revisions, and I believe that shows a great anti-thesis against the simplistic nature of the Web 2.0 applications. It's not a matter of how many features a product has, but rather how they are represented to the user so they can better interface with the product.
Showing posts with label design. Show all posts
Showing posts with label design. Show all posts
Monday, February 26, 2007
Design to Interface
Posted by
Cem Catikkas
at
8:28 AM
0
comments
Links to this post
Subscribe to:
Posts (Atom)