Intranet Journal   Earthweb  
Events Jobs Premium Services Media Kit Network Map E-mail Offers Vendor Solutions Webcasts

   Intranet Journal Subjects
Search Earthweb

Privacy Policy



internet.com
IT
Developer
Internet News
Small Business
Personal Technology

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers

internet commerce
Be a Commerce Partner
















 

[ Home | Discussion Forum | How Do I... | Lotus Notes Intranets | Microsoft SharePoint | Products | Shopping  ]

free news!


When Less Is More: User Interface Reusability, Part 1


Robert Bogue

5/5/2006

Go to page: 1 2 

Printer Friendly Version

With increasing pressure on software development teams to deliver more, better, faster, it is no wonder that finding ways to capitalize on reusability are more important today than ever before. We all need to do more with less and reuse is the panacea of doing more with less. Once the initial investment has been made, little or no effort must be consumed to use the work again.

While software development as an industry has focused on reuse through structured programming, object oriented programming, service oriented architecture, and several other techniques little thought or effort has been applied to the process of finding opportunities for reuse in the user interface. More often than not each application's interface is seen as completely independent, having no need to be reused for any reason.

However, organizations of all sizes are finding needs to develop and reuse small components of applications in an effort to minimize costs, increase reliability, and allow for rapid changes to the platforms their technology lives on. This is why there is a need to create reusable user interface components. In this article, the first of two parts, we'll explore why user interface reusability is important, how it's been overlooked, and challenge you to develop a strategy for dealing with the need to make user interfaces reusable to reduce costs.

The Problem

Article Tools
  • Print this article
  • E-mail this article
  • Discuss this article
  • Related resources
  • With each new platform a new interface emerges. An old mainframe application designed for a dumb terminal is given a new skin via a skinning application to make it work in a client-server PC world. (This is perhaps best described as a terminal server world today.) When the Internet hits in full force the same application has a new Web interface added to its surface and security added on. The internal users eventually demand a Web-based version for their use which works differently than the Web interface that the customers use. Finally, the mobile workers beg for a mobile device version to allow them to work remotely.

    From a single legacy application, five user interfaces have emerged. That doesn't even address any duplication between the same data needing to be leveraged by different applications — that's just getting all the support for all of the platforms. Each interface does, without a doubt, have its nuances, the things that it needs to do that no other interface can support. However, many of the things about the interface must remain the same. The same fields are needed and the same validation checks must be performed.

    Most organizations are beginning to awaken to the fact that recreating interfaces with each platform for an application is consuming a great deal of their software development resources — precious resources that are needed to solve true business problems.

    And yet, replatforming UI work continues daily as does the kind of work which produces a separate user interface for each application — even when that application consumes the same data that every other application in the organization consumes. There may be dozens of interfaces which display customer data from the central customer database. There may be even more ways to look at the sales data — even if the rows and columns are the same.

    We're stuck in a mode of rebuilding the same basic user interface over and over again in the vain hope that this interface will be better or simply because there's no framework for how to reuse an interface.

    Reuse Defined

    Reuse is the Holy Grail of the software development industry. And in some ways it seems just as difficult to find as the Grail. Reuse is simply trying to get more energy out of the development effort than was put in. In a larger sense, it's the same transformation that the civilized world went through with the Industrial revolution.

    All of a sudden we were creating more complex tools which allowed work to be done with fewer or no humans. We were beginning to become a society which made a relatively small investment in machinery which paid back dividends in time savings over many years. This is the same kind of performance improvement that we seek from reusing software components.

    But for every step we take forward in this quest it seems like we also slip back one. Few organizations are getting any reusability in their applications and fewer still are happy with the level of reuse they are achieving. Reusability is easy to desire and hard to produce.

    Go to page: 1 2

    Printer Friendly Version


    Other Resources
    from Intranet Journal
  • Intranet Journal Discussion Forum
  • Introduction to Microsoft SharePoint Portal Technology
  • Avoiding Coupling in Your Portal Implementation
  • from JupiterWeb
  • Webcast: User Interface Reusability
  • email this page

    Tutorials
    and more at:
    Intranet Journal's Tutorials
    Intranet Journal Favorites

    Creating a PHP-Based Content Management System

    The Spyware Guide

    Introduction to Microsoft SharePoint Portal

    Intranet Journal
    Part of the EarthWeb Network

    Managing Editor
    Intranet Journal

    Tom Dunlap

    EarthWeb Home Page
    Jupitermedia Home Page

    Media Kit




    The Network for Technology Professionals

    Search:

    About Internet.com

    Legal Notices, Licensing, Permissions, Privacy Policy.
    Advertise | Newsletters | E-mail Offers