Category Archives: web services

Mobile Browser Roundup: The SharePoint Test

Let’s be honest, mobile web browsing has been hit and miss — mostly miss. (An Opera Mini advocate should feel free jump in here and set me straight here– although Opera Mini crashes on my smartphone pretty consistently).

I recently had cause to look at how well SharePoint (the recently buzz-garnering content management, workflow, and collaboration platform from Microsoft) renders on mobile devices. This seems like a suitable benchmark for mobile browsing as of mid-2008.

  • As of today I myself use a “Blazer” browser on the Palm platform which is hopelessly slow and poor at rendering web pages of nearly every description.
  • Generic mobile browsers, including Windows mobile, don’t render SharePoint (or many other web sites) well.
  • I’ve read both that iPhone’s Safari browser renders SharePoint well, and that it renders poorly, but haven’t tested this claim.
  • SkyFire browser for Windows mobile is supposed to be much better but is still in closed beta
  • Deepfish from Microsoft is also in closed beta.
  • An overview on other Pocket IE type browsers – (replacing this older overview).
  • As an alternative to mobile browsers, using XenApp (Citrix) clients for Windows CE, Blackberry, or Symbian (possibly soon to include iPhone) one can open a “real” browser on a remote PC and simply view the already-rendered views on one’s screen. (I haven’t used this so I don’t know how well it works.)
  • RoveMobility has something called PCMobilizr, which is like PCAnywhere (3 stage – client, proxy service, server agent) which will have an iPhone client shortly.
  • Other workarounds for the inability of mobile browers to process SharePoint include alternative means of publishing the information in a SharePoint site, e.g. RSS or other feeds, emailing back information / links, and custom web parts that expose Outlook Web Parts (“OWA”) or other web parts that don’t work well outside of a desktop IE browser in a simpler (html or text) format.

At this point does anybody want to jump in with a run-down of the embedded Flash capabilities of mobile browsers?


Leave a comment

Filed under mobility, web services

Enterprise, Meet Mashups: User Experience 2.0 via SOA and OBAs

[This is something I wrote recently for a partner of my company (iLink Systems) who wanted to know more about Microsoft OBA soutions based on our experience. It’s not a full-on marketing brochure, to be sure, but it’s not meant to be “objective,” either, thus this disclaimer.]

The cornerstones of “Web 2.0” are Mashups, web sites which pull information from multiple sources — open API web applications and data sources — and combine them to give the user an experience they wouldn’t otherwise get from a single online application. For example, a mashup can combine a restaurant listing with a mapping application to show a user information about nearby restaurants that are conveniently plotted on a map.

We are accustomed to thinking of mashups in connection with MySpace and consumer users rather than the internal systems of Fortune 500 companies and corporate users. But substitute “Enterprise web services” for “open API web applications” in the definition of mashups above and the concept of mashups slides smoothly over to the Enterprise domain.

Enterprises increasingly rely on web services as part of a Service Oriented Architecture (“SOA”). These web services allow access to the specific functions of Enterprise applications, including antiquated legacy applications, without using the original application user interface (“UI”). Custom UIs can be created which are the equivalents of mashup web sites because functions from multiple applications can be combined in one UI for greatly increased ease of use. For example, secure sign-on, workflow, and data functions from different applications can be merged in one simple smart phone UI.

Similarly, the key benefit of Office Business Applications (“OBAs”) is making information from Enterprise back-ends easier to get by allowing users to access it through already familiar Microsoft Office applications (Outlook, Word, Excel) and web browsers (SharePoint portals). In addition to Office’s broad range of options, Microsoft’s “Office” product line now includes SharePoint (recently renamed “Microsoft Office SharePoint”) and its content management, data connection, and workflow features, plus integration with components like InfoPath Forms and Business Scorecards (dashboards).

At my company we pride ourselves on our ability to improve “user experience.” In essence, this means customizing the parts of software that users touch to make software fit users better. In recent years we’ve been seeing increasing interest in developing systems that make more of the back-end accessible to more users, in particular making information that traditionally has only been accessible to database specialists accessible to business users. We also continue to see, surprisingly often, manual re-entry of information, even in very large companies. The solution in both scenarios often involves SOA (web services), OBAs and related Microsoft technologies. Here are a few examples:

1. A hospital system. The managers of a particular government agency’s hospital system rely almost exclusively on Microsoft Outlook (email) to obtain and share information. For better or for worse, Outlook is currently the only information tool most likely to be widely used by these managers. Additionally, these managers were frustrated by their inability to obtain real time business intelligence about how specific hospitals, and the hospital system as a whole, were performing over time.

We created an OBA to place a dashboard showing graphs and charts with up-to-the-minute business information into each managers’ Outlook home folder. The dashboard, clickable to “drill down” into more detail, connects via SharePoint to the hospital systems’ legacy database systems, reducing the technical know-how required for information access to nearly zero, ensuring that information received by managers is complete and current, and removing the middle-man bottleneck from the data flow. Authorization for access to information can be synchronized to email sign-on, maintaining simplicity without lowering security.

2. An agricultural wholesaler. A wholesale distributor in the agricultural sector has numerous farm suppliers, most of whom have limited computer capabilities. Handling supplier-provided pricing and availability information was expensive because it required the distributor’s people to do a lot of manual data entry. Extra people had to be available at peak times of the work day to manually enter data from faxes and emails while simultaneously taking telephone calls.

We worked out a custom OBA solution to enable automated extraction of purchasing information from the text of emails, email attachments, and faxes, drastically reducing manual data entry. For example, after opening an email from a supplier with an attachment containing purchasing information, the distributor’s people click on a custom button “add-in” we added to their Outlook. The add-in automatically extracts all relevant information from the Word document attached to the email, places the information in a form, and submits the form to create a temporary SQL Server database entry. A workflow is triggered which reminds the staffer to review and approve the new entry before it goes “live” in the purchasing system.

Similarly, for Word documents that originate within a company, Word button add-ins can be used to automatically generate data forms from the information in those documents as well as workflows that route those forms to different users for review or approval.

3. A telecom provider. Employees at various levels in a telecom found that the software they had been given access to was either difficult to use or didn’t allow information to be arranged in desired ways, or both, causing them to use manual workarounds. Field technicians transferred information to paper before leaving the office, took notes by hand in the field, and manually re-typed information back in the office. Business analysts manually typed information into temporary spreadsheets to prepare regular reports, then spent a great deal of time reconciling those spreadsheets with primary data before accurate reports could be submitted. All of this manual re-entry not only consumed expensive personnel time but led to hard-to-detect errors which consumed even more time and reduced individuals’ responsiveness to other important tasks.

We created .Net components and services that collect and filter information then deliver the information in the proper format for different kinds of users. Users sign on once to obtain access to multiple data sources and workflows. A browser-based mobile UI brings up precisely the data each field technician needs. Field representatives no longer need to take notes by hand then manually re-enter data after they return to the office, or place calls to support personnel while working in the field in order to obtain current information.

4. A marketing communication company. Account representatives working at a marketing communications company were spending quite a bit of time manually retrieving their accounts’ independently produced sales and marketing collateral. In addition to finding the right collateral, they found themselves trying to maintain and update duplicate sets of the latest versions of their accounts’ collateral.

To streamline this process, we designed a custom web-based application for importing accounts’ collateral automatically into the company’s SharePoint portal, with version control features that validate the freshness of the collateral. We then updated another web application that can be viewed within a “pane” (sub-window) of representatives’ copies of Outlook 2007 that allows representatives to incorporate fresh collateral from their SharePoint portal directly into outgoing email messages with no intermediate steps.

Leave a comment

Filed under mobility, web services

The Citrix alternative for Mobile Access to Enterprise Applications

When I think of Citrix I think of GoToMeeting and GoToPC. They also created Remote Desktop Access, I believe. But only recently I discovered that one of their key offerings is essentially a blend of these technologies which allows mobile (e.g. smart phone) users to use Enterprise applications without installing them on their mobile device. It sounds like quite a trick. I was intrigued, so here are some notes and observations about the Citrix platform.

Citrix’s “XenApp” involves virtualizing client applications of all types, then streaming them to remote users. There are no application or document downloads to the client with this model, only a two-way streaming of UI information, which increases security and (for large documents) reduces bandwidth. For mobile users XenApp supports a Windows CE client, a Blackberry client (by RoveMobile), and a just released USB peripheral for Windows mobile smartphones that enhances / enables XenApp use (by Redfly).

They also have a component called “XenApp for SharePoint.” It allows remote users to browse both applications and documents over a network in SharePoint, and from SharePoint they can open Office and other Enterprise applications remotely without having those client applications installed on their own machines.

Idealy Citrix’s virtualization and streaming of applications allows companies to centralize and thus minimize hardware and software and their setup, maintenance, and upgrades. Improved mobility is a side effect of their model.

Specific Citrix solutions include:

Remote Access

  • for example, functionality like the remote access application in Windows (itself based on Citrix technology), allowing local computers to control remote computers.

Web-based collaboration, including meetings and VOIP

  • for example GoToMeeting (which will soon have a VOIP option, by the way).

Application Delivery Infrastructure (including virtualization of servers, storage, and desktops)

  • for example: imagine subscribing to a virtual desktop computer rather than buying the and software and doing the setup and maintenance yourself; this includes remote booting of a desktop computer from an OS disk image streamed to a remote computer from a permanent storage location on the network.

Web-based Application Infrastructure

  • for example their “Netscaler” product line offers compression, caching, security, traffic management (load balancing), and administration features for high volume web applications (note: one important function of web based applications is disaster recovery preparedness)

Secure Virtual Private Networks

  • SSL based VPNs which extend the security of closed networks to multiple locations.

IT workflow automation

  • their “Citrix Workflow Studio” automates workflow across APIs, web services, PowerShell, etc.

Value Proposition (aka PRO): When most of IT is invisibly handled on the back end, both administrators and end users spend less time arranging and implementing IT changes. Imagine even a small savings per person per year, multiply by a workforce of hundreds, or thousands, over a number of years, and you get some idea of Citrix’s value proposition. This model also gives information workers more time to focus on their core competencies instead of on IT.

Possible Downsides (aka CON): According to a colleague who worked in a corporate datacenter where Citrix was installed, license fees are very high, making it much more cost effective in that business to convert existing applications to web-based applications rather than running them in the Citrix virtualization environment. In addition, the reliability of the Citrix servers (at least in that datacenter) was inconsistent. Some applications are more compatible with a Citrix environment than others — which frequently flaked out — my colleague said.

Leave a comment

Filed under mobility, web services

Merging Enterprise applications while optimizing user experience via web services

It’s been said — and I’ve been repeating it, whether it is true or not — that Enterprise applications are designed to serve many puposes (robustness, security, comprehensive feature set, etc.), but never usability. Then of course you have the fact that many corporate employees must use a variety of different computing systems to get their jobs done each day, leading to a lot of time spent logging in, manually moving or copying information between systems, and the like.

This reality creates a secondary market for applications that replace the standard Enterprise application user interface (“UI”) with a custom UI designed to maximize usability. Using web services, more than one back-end application can be combined in a single UI, “mashup”-style, rendering a huge value add by reducing effort, minimizing errors, and improving performance tracking.

Among other things, my company (iLink) offers custom (non-packaged) solutions of this sort. One company I examined recently with a packaged solution along these lines is Jacada. Jacada is basically a call center ISV whose secret sauce is creating the user experience of a unitary call center app without disturbing any of the call center’s pre-existing function-specific apps.

Their solution essentially has four parts: UI, workflow, KPI tracking, and web services

Their “Workspace” product is a call center UI that replaces the UIs of multiple call legacy apps (they show a screen with a dozen or so windows open) with one unified screen. So now call center representatives need only open, view, and use one app, instead of maybe a dozen. This reduces clutter for starters.

Their “Fusion” (WinFuse, HostFuse, and Interface Server) product provide web service enablement for existing call center apps so that these apps can be connected to the common UI.

Fusion also provides work flow features which enable cross-application functionality that contributes to ROI in a call center environment. In particular, Fusion enables

  • single sign-on — one login screen which when competed logs the user into all of the component applications
  • autopopulation of all of the necessary fields in all of the component applications when entered once in the common UI
  • tracking of call center KPIs — with a dozen unconnected applications it is harder to discover issues and trends in call center representative performance, when they are connected it’s feasible.

Last December (2007) Jacada sold their “modernization” product — which puts web services on top of legacy (e.g. AS400) apps — to SAG. Apparently this isn’t SOA, just services enablement (no middleware). e.g.

What’s not clear to me is whether WinFuse, Modernization, etc. provide some kind of universal web services enablement tools or are basically a finite set of adapters for known call center apps…?

Leave a comment

Filed under web services