Build what the Users Would Want

Today, we were discussing the Apache ODE integration into Carbon to provide BPEL support.

The ODE user need to provide two things to deploy a BPEL script with Axis2 model. The BPEL file and the service descriptor. If you think about usability, the user would be at ease if he or she could just drop the BPEL script into a folder, namely the service repository, and make it a service. So writing that deployment file is an extra bourdon. So with Carbon, we would tray and make the user model such that, the user could drop a BPEL file and you would get it deployed as a service. No additional steps. That is the ideal usability, in terms of a user.

To get to the right user interface and right user experience, you got to look at the interface with user in mind. That is not easy. So to help with that, you may get one outside the project to use it and get his or her feedback. May be you could ask that outsider, given this task, what would you want the user interface to be.

However, developers playing users to other projects is still dangerous. If you take a product like the ESB, the ultimate users would be IT people. They are not developers, but are computer literate.

Often, we design the user interfaces that we, developers, think that would be "usable". But we have to remember that, what seems to be "usable" to us would not be that usable to real users.

We always should try and build what users want, not what we think that the users might want or enjoy.

Comments