Saturday Aug 18, 2012

Top 10 Things To Read If You’re a Fusion Applications Developer

By Tim Dubois, Applications User Experience Architect (Bio)

Tim Dubois, rallying and orienting apps developers everywhere towards that great apps user experience.

This is a guest post by senior Applications User Experience team member, Tim Dubois. Tim really knows how to rally Fusion Applications developers to productively build a great apps user experience. Here, he fast tracks your onboarding to success...

Oracle Fusion Middleware (FMW) represents a very powerful set of tools that enable you to build applications. Finding all of the relevant documentation, training material, or help can feel like a daunting task. Now, whether you are trying to find the latest Oracle JDeveloper to download, installation instructions, or the hottest Oracle Application Development Framework (ADF) tips, you can check out some of the most common and useful links below to get you started.

Oracle provides apps devs with design, technology, tools, and training to take a great apps user experience from blueprint to reality.

Oracle provide apps devs with design, technology, tools, and training to take apps user experiences from blueprint to reality.

1. One of the first things to check out is the ADF Collateral Tour. This recording will walk you though the sites and explain how to get started, where to find information, and recommended next steps.

2. A great link to bookmark as a top link is the Oracle Technology Network's (OTN) Documentation Portal at From here you can get to many necessary links, such as:

For e-learning or tutorials, check out:

Looking for more information on Fusion Applications? Go here:

And, if you have further questions, there are also great community resources on Facebook, Twitter, and other social media available to assist you. Here are a few of the most relevant ones:

3. ADF Enterprise Methodology Group (ADF EMG). Covers best practices and methodologies for ADF enterprise apps development.

4. JDeveloper and ADF Community. Facebook, Twitter, Google Groups, and more channels and conversations.

5. ORA:FMW Fusion Middleware blog. Discusses SOA suite, ADF, Oracle Service Bus (OSB), Oracle WebCenter, and BPM issues.

6. ADF Code Corner Oracle JDeveloper OTN Harvest blog. Frank Nimphius blogs a selection of the best topics on Oracle JDeveloper OTN forum.

7. Oracle ADF Tips and Techniques blog. Murali Papana discusses ADF tips and techniques.

8. Java/Oracle SOA Blog. Syndicated feed of Java, JDeveloper, Oracle Enterprise Pack for Eclipse, and Oracle OSB/SOA suite information.

9. Beginning Java & SOA Development blog. Rommel Pino's blog about beginning Java and SOA development.

10. Activity, Gateway, Event. SOA/BPM on FMW blog. Niall Commiskey blog about SOA/BPM on Oracle Fusion Middleware.

Are you developing apps using FMW and ADF? Any additional bookmarked, favorited or Google+'d resources you think apps devs would find valuable? Find the comments to let us know about them...

About Tim Dubois
Tim Dubois is an Architect in the Oracle Applications User Experience group, focusing on extensibility and customization, development productivity, and next-generation user experience interactions. Previously, he worked as a Director in Fusion Functional Setup Manager and Business Intelligence. Tim has been with Oracle for over 13 years and has a strong understanding of both the functional and technical architecture of the application suite.

Tuesday Jul 31, 2012

Developer Community Outreach: Nuancing that Usability Design Pattern Message

When user experience (UX) professionals talk about design patterns, it's wise to nuance the term, and qualify it. These patterns are proven, usability best practices and solutions for common problems. When developers talk about design patterns, they're referring to software development architecture or coding patterns based on frameworks or languages, and implemented through their development environment.

I was reminded of this during our initial soft launch of the Oracle Fusion Applications design patterns, and in my own research on Stackoverflow and in the Irish software development community.

In the Oracle Application Development Framework (ADF) world, we have to contend with lots of patterns, starting with the underlying Model View Controller (or MVC) pattern, Java Enterprise Edition patterns for ADF Business Components, and lots of others that ADF developers use daily to make life easier. Check the ADF Enterprise Methodology Group (ADF EMG) Google Group forum and Oracle ADF Code Corner for some great insights into what code design patterns are used, how, and why.

And then, of course, we have that antipattern business to contend with, too!

So, dev outreach folks, know your audience and adopt terminology and messaging appropriately upfront. Otherwise, be prepared to spend some time in the translation business or answering questions about code.

Personally, I think usability best practices and guidelines for developers works well. However, when we do refer to design patterns in the UX sense, then we need to make sure the context is clear and qualify the term.

Sunday May 06, 2012

From Airfix to Apps: Oracle Applications User Experience at the Maker Faire Bay Area 2012

I've been an avid maker of model kits since I was about five years old. My first attempt at assembly was a FROG P-38J/L Lighning Long Range Fighter in 1/72 scale. Since then, I've built mostly model aircraft, but have done some pretty cool AFVs, ships, submarines, space, science fiction, and railroad things in my time too. From U-boats to Saturn V rockets, I've assembled, painted, customized and displayed hundreds of made models over the years. When I relocated from the US to Ireland a few years back, I shipped over 1,000 unassembled kits with me (and a large numbers of built ones). I've built (and flown) remote control versions too.

Me, and some of my kits at home

Me, and just some of my kits at home. Photograph by Fionn Ó Broin.

As a maker of kits, once you get the hang of it, you quickly find yourself wanting much, more more. It's not enough to read the instructions and build out of the box. You want to customize the kits, extend them with different parts, work with different materials, and of course build your own subjects from scratch. You want completed ones that delight you, versions that nobody else has, and have fun from the process too. And, the resources are all there for you to do that: from airbrushes to special decals to aftermarket parts and the various bits and pieces to enable you to make your models your own way.

And what's this got to do with user experience (UX)? LOTS! I'll be at the Maker Faire Bay Area 2012 in San Mateo, telling you the Oracle Applications UX story about how you can make cool stuff yourself too: software applications to use in work that are drop-dead easy to use and look the business too. I'll talk about the tools, components and design guidelines that Oracle provides for you to do that, how this fits within our powerful Java ecosystem, so you can turbocharge your making of applications and also have a fine career and see the world out of it too!

Some additional coverage about what to expect from Oracle about Java at the Maker Faire is on the Java Source blog.

So, come along and see and hear me and Oracle coworkers in action. If you want to chat about model kits, that's cool too! Stay tuned for more details.

Tuesday Sep 27, 2011

How to Write Effective Application Error Messages for Users

Whenever I’m asked by technical writers how they should write a “frontend” or a “backend” error message I’m reminded of the old Kerryman joke with the “I wouldn't start from here” punchline (this joke may have been localized for your region).

Starting the error message design process with a frontend or backend categorization is not useful from a user experience perspective. Users don't care for such a distinction. All users care about is how effectively the application messages communicate with users as they do their work!

It’s tough deciding on what a “frontend” error message is, anyway. Is it a client-side validation concept? Maybe they're ADF Faces validator and converter messages?

Hardly, as these error message are visually indistinguishable from other ADF af:messages validation on editable components that require a push of data to the server for validation, and can coded as business rule exceptions deep down in the model layer.

These error messages can also be shown on ADF page components that are then outlined in red, along with a note window with the message and navigation buttons to move between components showing exceptions.

These messages then roll up to a page-level list that includes a hyperlink to the name of the component if the user chooses to address all the component-level errors together. So, that consideration doesn't work either.

ADF messages could also be page-level popups, or inline on the page, and used for messages that don't reference editable fields at all, for complex business rule validation or for UI rules such as unsaved changes, and so on.

And then “backend” error messages, what are they, exactly? Are they all diagnostic logs triggered by the supportability framework when an incident is raised? They could be text-based output logs for sure, but they could be presented in custom ADF message dialogs too. These messages could also use user interfaces (UIs) designed by product teams for third-party application or web services integrations, for errors (usually from the FND messages dictionary) thrown by the execution of PL/SQL or other programs, and so on.

So, this frontend versus backend categorization is problematic as a decision-making concept. Instead, knowing why the message appears (the validation or UI rules fired up in response to user or application activity), and what the raising technology offers in terms of visual display and output, lets you know how to phrase the error message accordingly.

For example:

  • A decision about who (or what) was acting, and who needs to act in response, lets the writer make a decision about the use of active or passive voice in the message text.
  • Knowing if the exception is from an ADF component validation means writers don't need to tell the user which UI component has an issue or how to get there. The component is highlighted in red and the message is presented beside it along with navigation buttons to other components with errors. The name of the component is shown in the page-level list as a clickable link.

  • If it is page-level business rule message dialog not using component-level validation, then the writer may need to explicitly tell the user which components need redress, where, and how.
  • If the message is in a long text output format, writers will need to compose the text in a way that allows for easy online reading, and so on.

Knowing this information also enables writers to discover if ADF Faces provides a message natively, out of the box (navigation, validators, converters, missing values, and so on), saving the writing of a new one.

For a more useful starting point consider to a superior error messaging UX, maybe answer the following questions and then apply error message text composition basics about writing cause and action using the appropriate style, grammar and terminology:

  • Is the exception the result of validating ADF editable components on a page?
  • Is the exception the result a navigation action between ADF pages?
  • Is the exception by the result of validating business rules at a page-or task-level action on ADF pages?
  • Is the exception the result of a process? Does the result of that process need to be in a printable or readable output file and/or need to be indicated elsewhere as a message dialog or even a notification?
  • Is the exception the result of a third-party application or web service integration that requires a custom designed UI?
  • Who or what is acting to make this message appear, and who or what needs to act in response, and how?

Very likely no one person in the development team will know all the answers, so writers and developers must work collaboratively to find out the answers before the message text is written.


Oracle Apps Cloud UX assistance. UX and development outreach of all sorts to the apps dev community, helping them to design and deliver usable apps using PaaS4SaaS.


Ultan Ó Broin. Senior Director, Oracle Applications User Experience, Oracle EMEA. Twitter: @ultan

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

Interests: User experience (UX), PaaS, SaaS, design patterns, tailoring, Cloud, dev productivity, language quality, mobile apps, Oracle FMW, and a lot more.


« July 2016