Saturday Jun 29, 2013

Loose Coupling and UX Patterns for Applications Integrations

image of train coupling, creative commons licensed from wikipedia

I love that software architecture phrase loose coupling. There’s even a whole book about it. And, if you’re involved in enterprise methodology you’ll know just know important loose coupling is to the smart development of applications integrations too.

Whether you are integrating offerings from the Oracle partner ecosystem with Fusion apps or applications coexistence scenarios, loose coupling enables the development of scalable, reliable, flexible solutions, with no second-guessing of technology.

Another great book Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions tells us about loose coupling benefits of reducing the assumptions that integration parties (components, applications, services, programs, users) make about each other when they exchange information. Eliminating assumptions applies to UI development too. The days of assuming it’s enough to hard code a UI to software code with linking libraries running on a desktop PC in the office are over.

The book predates PaaS development and SaaS deployments, and was written when web services and APIs were emerging. Yet it calls out how using middleware as an assumptions-dissolving technology “glue" is central to applications integration. Realizing integration design through a set of middleware messaging patterns (messaging in the sense of asynchronously communicating data) that enable developers to meet the typical business requirements of enterprises requiring integrated functionality is very Fusion-like.

User experience developers can benefit from the loose coupling approach too. User expectations and work styles change all the time, and development is now about integrating SaaS through PaaS.

Cloud computing offers a virtual pivot where a single source of truth (customer or employee data, for example) can be experienced through UIs (desktop, simplified, or mobile) that are optimized for the user's context of a varying world of work. Smart enterprise applications developers, partners, and customers use design patterns for user experience integration benefits too.

The Oracle Applications UX design patterns (and supporting guidelines) enable loose coupling of the optimized UI requirements from the application logic and hooks. Developers can get on with the job of creating integrations through web services, APIs and SOA without having to figure out design problems about how UIs should work. Adding the already user proven UX design patterns (and supporting guidelines to your toolkit means ADF and other developers can easily offer much more than just functionality and be super productive too. Great looking application integration touchpoints can be built with our design patterns and guidelines too for a seamless applications UX.

One of Oracle’s partners, Innowave Technology, used loose coupling architecture and our UX design patterns to create an integration for a customer that was scalable, cost effective, fast to develop and kept users productive while paving a roadmap for customers to keep pace with the latest UX designs over time. Innowave President and CEO Basheer Khan, a Fusion User Experience Advocate, explains how to do it on the Usable Apps blog.

Sunday May 12, 2013

Unsaved Changes: Oracle ADF Functional Patterns and Best Practices Shout-out

One UX question that seems comes up now and then with ADF apps is how to handle when users navigate away from an application page that has unsaved or uncommitted changes on it. This might happen when users decide to navigate to another location to look something up without opening a new tab, or when they use the browser back button to try go back to a previous step in a task.

Now, it is not an unreasonable these days that users would want to navigate using the back button. But this consumerized IT expectation is not something that our ADF apps can accommodate. A combined productivity hit and the high value of enterprise data means that users need to be warned of the implications of navigating using the browser back button or loading a new page, if they continue.

There is another UX implication should users choose to use the back button. Because of how our task flows are constructed they will be taken back to the last URL, which is not necessarily the last step in their task flow if the URL hasn't changed within the flow. So there is an unpredictable outcome to where users will be taken within the application.

Using the backspace key can have the same result as using the browser back button, because it most browsers the backspace key is mapped to the back button.

One handy way to warn users about unsaved and uncommitted changes on navigating away from their page is to use the af:document tag's uncommittedDataWarning property. This is explained, along with use cases, and other great patterns on on the Oracle Application Development Framework Functional UI Patterns & Best Practices website.

Shay Shmeltzer also has a great video of how the unsaved or uncommitted changes warning is implemented on his blog.



What ADF is providing here is a hook into a warning message which comes from the browser, not from ADF itself, so the phrasing of the message in the dialog box is not something developers can control. So, although users can informed of about unsaved changes being lost should they continue, the unexpectation navigation issue is not mentioned (this is something being worked on by Applications UX).

Check out the implementation of the unsaved and uncommitted data warning and the other ADF functional patterns and best practices on the site too. This is a great resource for productive development used along with the ADF Faces Rich Client User Interface Guidelines and Oracle Fusion Applications UX design patterns.

Wednesday Mar 27, 2013

Don’t Sweat Them UIs: Cloud Makes Them All Part of the Service

For me, the most powerful UX pivot point that the cloud platform offers developers is flexibility and scalability to build optimized and contextual solutions, reflecting how users' roles, tasks, goals, environments, and devices--their context of use, if you like--can vary. With Platform as a Service (PaaS) or cloud development, the old client-server assumptive days of developers writing UIs on top of each operating system and then making calls to static and dynamic link libraries are gone. Instead, with the cloud, developers use services and APIs, Lego-like, and use such integrations to assemble contextual applications. This difference is explained far more eloquently, and expanded on, in this Engine Yard Cloud Out Loud podcast.

So, what do we mean by optimized and contextual UIs? Well, think about how you might use LinkedIn, for example. A power update to your LinkedIn profile such as adding abstracts for latest publications or completing your profile might be done on your PC using the LinkedIn website. Browsing through your contacts, groups or news features might be done with swipe gestures on the LinkedIn app on your tablet. Accepting a LinkedIn invitation to connect via email can be done on your smart phone with a few taps and you can see updates at a glance too.

Different UIs, different context of use

LinkedIn Different UIs, different context of use. All optimized. (photo: Ultan O'Broin)

We don’t have to think about these different LinkedIn usage scenarios devices. We just do it because the interactions have been understood and designed for. We know they all rotate around our profile's details as the source of truth. We perform the different tasks on different devices intuitively, as our context demands. That's the whole point of a great UX, I guess, commonsense ways of ensuring users don't have to think! Same principle applies to enterprise applications, really.

For developers, this offers great opportunities too to enable great UX from the Cloud by relying on APIs and service oriented architecture. By using integrated UI services and leveraging design guidance such as UX design patterns and guidelines and not sweating about writing new UIs from scratch for every device, developers and partners can spend more time on issues such as security, performance, integration, scalability, speed, all the stuff that's critical to business, while anticipating changes in UX that will come for sure. For customers, such cloud-based enablement means continued ROIs by using existing data while extending the UX of existing apps and providing new experiences too to make users even more productive.

Credit for LinkedIn analogy to Jeffrey Pease.

Monday Jan 07, 2013

All the Aces, All the Faces. Oracle ADF, UX PTS Workshop: Building Fusion Usable Apps & More

December 2012 saw the completion of a pilot for a two-day workshop event aimed at enabling the Oracle Application Development Framework (ADF) community of developers and partners to build great-looking usable apps using ADF and the Applications User Experience (UX) design patterns and other usability guidance.


Workshop logo

Read about the inspiration for this joint event between ADF, UX and the key role of the Platform Technology Solutions (PTS) team on Misha Vaughan’s Voice of User Experience (VoX) blog: "Building Great-Looking, Usable Apps: A two-day workshop applying Oracle’s best UX practices in ADF". Just check out the names and faces from that group of global attendees and see if you know anyone!


Misha Vaughan

Making it all happen in style: UX workshop rainmaker and communications maven, Misha Vaughan.

A train-the-trainer workshop, it brought together a broad set of key stakeholders (Oracle UX, ADF, PTS, partners) and focused on the transfer of Oracle Applications usability best practices to application developers toolkits so that they can easily build Fusion apps and solutions that satisfy users and benefit businesses.

The workshop agenda featured ADF building sessions on a couple of Fusion task flows, the background to the "Feng Shui" of UX, another engaging wireframing exercise, a very cool session on visual design, and more. An agenda informed by the best in Oracle UX science, consumer ICT trends and expectations, and leveraging the developer productivity enhancing capability of ADF and reflecting the realities of being part of the Oracle partner ecosystem providing solutions to customers now and in the future.

The feedback from the pilot attendees was overwhelmingly positive and the course content is being iterated (as all great UX is) presently to finetune it for further deliveries. Besides learning how to build some very cool and in-demand stuff with ADF, the workshop was also a super relationship-building opportunity, and a chance for Oracle and partners to showcase their latest and greatest capabilities and offerings. What a fun event too!

Best of all for the ADF community the workshop is going global in 2013. Stay tuned to the VoX blog, Usable Apps website and your usual ADF and partner enablement channels for announcements.

Friday Dec 14, 2012

How to Build Your Own Siri App In a Browser

This post from Applications User Experience team co-worker Mark Vilrokx (@mvilrokx) about building your own Siri-style voice app in a browser using Rails, Chrome, and WolframAlpha is so just good you've now got it thrice!


Input field with microphone icon

I love these kind of How To posts. They not only show off innovation but inspire others to try it out too. Love the sharing of the code snippets too. Hat tip to Jake at the AppsLab (and now on board with the Applications UX team too) for picking up the original All Things Rails blog post.




Oracle Voice and Nuance demo on the Oracle Applications User Experience Usable Apps YouTube channel.

Mark recently presented on Oracle Voice at the Oracle Usability Advisory Board on Oracle Voice and Oracle Fusion Applications and opened customers and partners eyes to how this technology can work for their users in the workplace and what's coming down the line!

Great job, Mark.

Tuesday Oct 30, 2012

Oracle Launches Mobile Applications User Experience Design Patterns

OK, you heard Joe Huang (@JoeHuang_Oracle) Product Manager for Oracle Application Development Framework (ADF) Mobile. If you're an ADF developer, or a Java (yeah, Java in iOS!) developer, well now you're a mobile developer as well. And, using the newly launched Applications User Experience (UX) team's Mobile UX Design Patterns, you're a UX developer rockstar too, offering users so much more than just cool functionality.


Mobile Design Pattern for Inline Actions

Mobile design requires a different way of thinking. Use Oracle’s mobile design patterns to design iPhone, Android, or browser-based smartphone apps. Oracle's sharing these cutting edge mobile design patterns and their baked-in, scientifically proven usability to enable Oracle customers and partners to build mobile apps quickly.

The design patterns are common solutions that developers can easily apply across all application suites. Crafted by the UX team's insight into Oracle Fusion Middleware, the patterns are designed to work with the mobile technology provided by the Oracle Application Development Framework.

Other great UX-related information on using ADF Mobile to design task flows and the development experience on offer are on the ADF EMG podcast series. Check out FXAer Brian 'Bex' Huff (@bex of Bezzotech talking about ADF Mobile in podcast number 6 and also number 8 which has great tips about getting going with Android and iOS mobile app development from Stephen Johnson (@sjintegretas).

Monday Oct 29, 2012

Can Simple & Modern UX Be Sexy? Fusion Apps in 100% Oracle ADF Shows How

YES! I love the sheer cut-to-the-chase instant beauty and usefulness of my Clear app on iOS. Dropbox really does simplify my ICT world, if not my life. I use those apps every day: on mobile, desktop or web.


Clear App

Clear app


Dropbox Web UI

Dropbox web UI

In the enterprise apps world, you'll love what Oracle Applications User Experience team is doing with our roadmap to simple and modern user experience with Oracle Fusion Applications built with 100% Oracle Application Development Framework (ADF).


Simple and modern. A compelling UX for Fusion Apps on any device

Simple and modern. A compelling and easily personalized UX for Fusion Apps on your device of choice.

Beautiful. Simplicity, it's all part of the BYOD and COIT phenomenon that enterprises need to embrace rather than tolerate or ignore.

So, introduce yourself to the new face of Oracle Fusion Applications. More on the Voice of User Experience for Oracle Applications blog.

About

Oracle applications user experience (UX) assistance. UX and development outreach of all sorts to the apps dev community, helping to design and deliver usable apps in the cloud.

Profile

Ultan Ó Broin. Director, Global Applications User Experience, Oracle Corporation. On Twitter: @ultan

See my other Oracle blog about product globalization too: Not Lost in Translation

Interests: User experience (UX), user centered design, design patterns, tailoring, BYOD, dev relations, language quality, mobile apps, Oracle FMW and ADF, and a lot more.

Search

Archives
« April 2015
SunMonTueWedThuFriSat
   
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
  
       
Today