Software as a Service - The Future of Software Apps

2 04 2007

The word ‘service’ is increasingly becoming a bit of a buzz word, encompassing anything from SOA (Service-Oriented Architecture) to SaaS (Software as a Service). I think this is part of the increasing trend towards providing users (SaaS) and developers (SOA) with the ability to access just the information they require on demand and is an extension of the Web 2.0 movement.

It may very well lead to software being fragmented into it’s component parts, and being made available to users to syndicate and mashup - allowing new and interesting apps to emerge tailored to precisely the user’s requirements (more on this later). This is *really* important for business to consider, research firm Gartner forecasts that by 2011, 25% of new business apps will be delivered via SaaS, a jump from 5% in 2005.

SaaS allows users to access fully functioned software on the web through their browser without having to download anything (webmail is a great example of SaaS as opposed to a client side app like Outlook or Eudora). Users now have the ability to access software on a pay-as-you-use basis, giving the advantage that the application software can be upgraded on the fly without having to physically distribute it on a disc. This is an extension of the Beta zeitgeist that we see in Web 2.0 websites extended to full blown online apps (Rich Internet Applications or RIA’s).

A virtue of this is that any work that takes place on a SaaS app can be accessed anywhere at anytime (as long as the user is connected to the Internet). If you think about webmail, it allows you to access your email from any machine without having to worry about the platform or location. This metaphor can be extended to the new generation of SaaS apps that imitate the Office application suite.

For instance:

(which are both Word imitation RIAs) give you hosted disc space for free, allowing you to author a document anywhere and save it remotely on their hosted server. So, as an example I could author a document at home, get to work, login and continue to work on it (in the same way I can access my bookmarks anywhere on Del.icio.us or my photos on Flickr).

The other advantage this has is that social networking comes into play, as documents can be released for public (or limited) consumption and worked on collaboratively or shared and tagged. With ever increasing bandwidth and end-user processing power I can see the old 90’s paradigm of the Network Computer returning. One could envisage a future where all storage is remote, all applications are loaded from the Internet and the machine exists only to access the network and run the browser.

As this trend progresses, we can expect web pages to be used for what they were originally intended, pure information/content sources. No longer will we have to shoe-horn workflows into step-by-step page views (i.e. buying an item etc) but can deliver them in the most efficient manner possible, which might be via the direct manipulation paradigm.

So, if this all sounds great, what are the downsides to SaaS? Well an obvious one is that these apps require the user to be online for them to operate, so how would this work if I’m offline (i.e. I want to write a document whilst on a train). Well, already technology is working to banish this restriction. Apollo by Adobe is a runtime framework which allows developers to create a container in which flash/flex/html/ajax can co-exist, but more than that it allows a webapp to be run on the desktop, independent of the network.

So we could expect something like ThinkFree/Writely/Zoho to run within an Apollo container, so the user can seamlessly work both offline and online. So if we go back to the example just mentioned, a user could work on their document at home (whilst a network connection is available) and save it. They are then free to hop onto a train and continue to work offline, then when they reach their destination and again have access to the Network, Apollo would synch it up with the mainline server – all without the user even realising it.

So if SaaS seems like the immediate future, then what lies beyond? Well, I think SaaS applications will evolve from being online facsimiles of desktop apps to a much more powerful suite of syndicated functionality from which the author can mashup their own personalised application, built to directly suit their purpose.

To help get your head around this consider how personalised homepages like NetVibes, Google/Yahoo allow you to create your own personalised information space. No longer do you need to navigate around several news sites to get the information you need, it comes to you, delivered in the way you want it, on demand, courtesy of RSS. This is precisely the sort of behaviour we’d see, but not stemming simply from information but actual functionality. Application mashups will allow the author to create a personalised app using syndicated functionality, taking remixability to a whole new level.

For instance, I might create a purpose built app that lets me type in a search term, pick a result, get the page content, edit it (in a word type app), the re-publish as another web page. Yahoo Pipes already allows the user to easily create these types of mashups, and I expect we will see something like this extended to allow much more powerful SaaS mashups in the future.

No longer will software have to exist in a single silo, forcing the user to switch their attention between different applications. User will be able to access a particular function on demand and link software silo’s together accessing just the slices they require.

So finally, where does the future of SaaS leave Usability and User Experience? Well in a very exciting position I think. Increasingly we will be released from the artificial barriers html imposes upon us and be able to have incredibly flexibility in the way we approach and solve problems. Information Architects will continue to play an important role in organising and structuring content, but Interaction Designers will truly be let off the leash!



Innovation and Usability

29 01 2007

Right, I’m going to try and be provocative, I may not believe any or all of the following, but thought I’d throw it out there….

The age old debate of Usability Vs Innovation still continues with many still arguing that Usability rules over creative design approaches. Personally, I think the two are not mutually exclusive and are often complimentary (particularly as we move away from the page-centric view of the web to more RIA’s). However, for a lot of Interaction Design professionals it can be frustrating that they do not often get a chance to be really innovative.

Novel Design Approaches

The problem is usable interfaces often tend to be rather conservative (some would say dull). For, you see, usable interfaces tend to be consistent with the look and feel of similar applications, and have been designed for ease of use by novice users. The problem with this is that innovative or different designs tend to depart from the existing interaction paradigm, and may therefore take a little more time to learn. In the medium term, these alternate approaches may bring far greater benefits than the traditional design. However, they rarely get that far, as users are just not prepared to learn a new dynamic, they want something they are familiar with already. Even if we make an assumption that the users are willing to adapt, how prepared are management to task a risk on something different? Does making something usable and understandable first and foremost, trounce any inspiration that may yield ‘innovative’ ways of defining a system model? Well perhaps..

I believe there are two different aspects to this problem. The first is creating innovative approaches to UI design that add value over the accepted designs, but whose opportunity cost may be the increase in learning time for users (this is not always the case, particularly with some RIA’s whose new model matches that of desktop metaphors user’s are familiar with). The second is the tension that can sometimes exist between usability (minimalist, simple and clear designs) and the accepted advantages that aesthetics (in other words adding unnecessary noise to the interface, purely for visual reasons - as Nielsen would argue) can bring to an interface.

In some projects UI design is restricted to designing interfaces within an existing, well defined look and feel. Hence, the job of UI designer becomes that of a guardian of principles already defined by others. This can be very frustrating when obvious flaws exist in the current interaction paradigm, which a creative approach may resolve. In these situations the flaws must be worked around, because resolving them may break the applications look and feel. This is the kind of example where usability (in this case the usability of consistency) and creativity may clash.

Perhaps the answer to this is, on occasion, to be brave. If an evolutionary approach, rather than a revolutionary approach is taken, such that small tweaks to the look and feel are introduced over time (rather than an overhaul) a new interaction can emerge. This is often resisted by those in charge, because for some consistency is everything. I think, though, in some cases we underestimate the user. Users can adapt, more quickly that we may give them credit for, and if an approach is taken such that we can improve their ability to interact with the application, even at the expense of learning time, I believe users would prefer it.

Currently the main focus during design is on ‘user ability to do’ and not ‘user ability to learn’. In the former approach we only see what a user can do, and not their ability to adapt to new models. By listening intently to the user, and not straying from their existing mental model, we run the risk of ’safe’ or stagnant design (in other words, sticking to what they know). If we take the latter approach it opens the door to innovation. To be really daring, I’d even suggest an approach could be taken where we stop asking users what they want and instead make assumptions about their abilities. These assumptions can be derived by doing good user research - observation/contextual enquiry/cultural probes/ethnomethodology etc the result of which may be a really good model of user activities (Activity Centred Design), by doing this we model what the user wants to achieve and from this we can design solutions the user may not even conceive of, yet once learnt will increase their efficiency, effectiveness and satisfaction. An alternative to this approach is to do just the opposite, involve users completely throughout the design process. By involving the user in participative design sessions, and giving them a say in the design, potentially creative solutions may emerge. It is important, though, to make the user see past their expectations of the interface, since these are defined by their use of existing applications.

If this all sounds a bit too much (and I think it may), I’d suggest trying to implement new interaction paradigms into the existing UI structure. When I worked at Schlumberger we had some rather unique situations (highly complex applications which conventional UI patterns could not cope with). Most of these situations related to complex data visualisation and I found some rather interesting technologies out there which might provide a solution (these are probably a bit dated now but what the heck). The following links highlight novel approaches that may well resolve some of the problems encountered in some applications.

  • The TimeSearcher (A novel prototype environment for interactive querying and exploration of time-series data)
  • Fish Eye Lens Menu Navigator (A brilliant application of the fish-eye lens principle, suitable for any application which requires navigation of long lists)
  • Hyperbolic Tree Browser (Stuart Card at XeroxParc came up with this some time ago, here is the latest commercial incarnation. Interesting way to navigate large data trees)
  • Table Lens (Innovative way of navigating around large data sets, very efficient and useful)

These are a few years old now, but there are many great technologies around now which can provide fantastic alternate approaches (Ajax/Flex/Laszlo etc).

Aesthetics

Style, brand, look and feel are all very important elements of daily life -and the user experience- and are things we should be paying attention to if we really want to differentiate our products in the market place. To achieve a certain style, it is important that attention is paid to aesthetics. Yet sometimes aesthetic are forsaken at the alter of usability or cost. A usability disciple will often tell you that clarity is important and that the interface should be stripped bare of all unnecessary clutter or distraction. A graphic designer may well tell you people will sacrifice a little clarity for an increase in visual experience. Whose right? Well both actually.

Clearly most people do not use software applications solely for the purposes of being visually pleased, just as most people do not use their cars solely for the purposes of looking at them (although some do spend an undue amount of time doing just that!). Most people get into their cars every day in order to get from one place to another (as software users do), however, car manufacturers understand that one cannot build a car that is merely functional and not pay ample attention to the aesthetics.

Why? Because car manufacturers acknowledge what many usability specialists do not people are emotional beings and not simply functional robots. We make purchases based on any number of factors, usability and aesthetics being very important ones of them. If that were not the case, no one would ever buy a Porsche, why should they when a Skoda performs the same function (ok a little slower admittedly!). People would, like Homer Simpson, own several pairs of the same items of clothing so as not to spend time deciding what to wear. After all, one style of clothing serves the function of covering and protecting your body, right? What function is served having different styles?

Design, when it’s done well, is like architecture and combines the best of form AND functionality. The legendary architect Frank Lloyd Wright once said, “Form follows function - that has been misunderstood. Form and function should be one, joined in a spiritual union.”

This is where we should be aiming to go…