I have just been given the contract to write a domain management system for a hosting provider. It is an interesting project because they have specified it really really well for a change. There are the usual parameters such as naming conventions, modules required etc etc but the details for the user interface are very nice as well. Their first requirement and this is set in stone is that the user interface should be really really simple and easy to use with all functions within 3 clicks of the main page. These three clicks include form submissions.
For example if a client wanted to change the nameservers for their domain they have to be able to do this with only three clicks (plus data entry). This meant I had to think really hard about the layout. In this case the result was.
- Click on the “My Domains” link on the menu, This will lead to the list of domains the client owns. Each domain has an expiry date next to it, A couple of Contact items (id’d by email) and a bunch of easy to read icons.
- The client then clicks on the NS icon (thats the second click for those not keeping count)
- The client then types in the new nameserver details and clicks submit (third click)
All functions within the control panel follow this rule and although it has made the design and coding a harder process it is bringing a nice consistency to the user interface.
The list of features this panel will provide to the client is pretty impressive, I have a feeling they had a bunch of clients make a wish list and just added each one to the spec.
I will publish more details of the project as it progresses. Todays first meeting after receiving the design notes went really well and I expect to complete the project in around 1 month with a 2nd month for tidying up and clearing up buglets. Fortunately I had already written the enom.com and a Nominet EPP modules for a previous project so won’t have to re-write these from scratch. The only really new module will be the PayPal payment system. I am quite looking forward to writing this.
Anyway, better get back to work.