Do You Even Test?

During the workshop here at Oracle in Redwood shores, we were taught about the importance of usability testing. Maybe that is why I noticed the switches in the washroom at my hotel.

Can you tell what they do? On entering the washroom, I press the button closest to the door on the assumption that it will turn on the light. Instead, a fan goes on. So I press the other one, and the light goes on. Learning: Press both.

After a couple of days, I accidentally press only the second button from the door and get both light and a fan. Mystery. So what does the first button do? It turns out that it turns on a hot air blower in the ceiling next to the ventilation fan.

So every time I entered the washroom, I started one device to blow hot air into the room and another to suck it back out. No wonder we’re burning a lot of fossil fuel. If only 5% of hotels in the US have this usability problem, the 1 billion hotel nights in the US alone waste about 440 MWh per year - about the total yearly electricity consumption of Mali. A trivial usability test with five people would have found this issue.

Do you test your applications for usability?

No Comments »

I have seen the future of ERP

I’m at Oracle HQ in Redwood Shores this week for a workshop on implementing Oracle’s best user experience (UX) design practices in ADF.

Yesterday, the Oracle UX team hosted a confidential (strictly no photography!) event demoing some of the new stuff they are working on. If I told you the details I’d have to kill you, but what I can say is this: The future of ERP is as a platform, not an application.

I have been building custom user interfaces for Oracle E-Business Suite for years and have been struggling with inconsistent, incomplete and only slowly evolving APIs. With Fusion Applications, that’s all different - because it is service oriented from the bottom up, it becomes easy to build multiple interfaces to the core Fusion Applications services.

You’ll see many ways of accessing the Fusion Application platform on various devices. Oracle will be covering desktop, laptop, and mobile with various products specialized for each platform. But  if you’re not happy with what Oracle is building, you can easily use the Fusion APIs to build your own interface. Who will be the first to implement Fusion Apps on Google Glass?

1 Comment »

Smart People use UX Design Patterns

I was just watching my son play the Neverwinter MMORPG beta. The user interface looks just like other MMORPGs and he could jump right in and start playing.

That’s not because the people at Cryptic Studios lack imagination - it’s because their users already have an expectation of how an MMORPG should look. It would be stupid to risk turning people away by inventing a brand new user experience (UX). Instead, they are using a User Experience Design Pattern that their users recognize.

If smart people (whose livelihoods depend on people liking their applications) use UX design patterns, maybe you should, too? There are well-known UX design patterns for enterprise applications, too. Have a look at the Oracle Design Patterns and Guidelines for some great resources to get started.

No Comments »

Review: Oracle SOA Suite 11g Developer’s Cookbook

As the title says, this is a “Cookbook” containing specific recipes for handling specific tasks. Most of the tasks are development tasks faces by a SOA developer with a few that are more relevant to a SOA administrator.

The 67 recipes cover many components and technologies used in the very large Oracle SOA Suite, including BPEL, OSB, Java in SOA, JSON, OPSS etc. Some of the recipes are fairly simple and do not really contain much information, but serve more to make you aware of features in the SOA Suite that you might not have been aware of. However, the majority are very useful and detailed (include these JAR files, remember to check this checkbox, use this code) and definitely have the potential to save you some time.

I especially appreciate the thorough chapter with recipes for Oracle Meta Data Services (MDS), which is sorely under-used in Oracle implementations. There is really no need to hardwire configuration and environment parameters into code and config files when you have MDS, and this book explains how to use it.

The recipes for using JSON with OSB are also very relevant, as SOA applications start pulling in data from outside the organization, typically in JSON format.

Just like you won’t make every dish in a regular cookbook, you won’t be using every recipe in this book. But if you are working with the Oracle SOA Suite, do check out the table of contents and see if there is anything to your taste. Even if you need just a few of the recipes, the time you save is well worth the cost of the book.

See it on Amazon.com

See it on Amazon.co.uk

See it on Amazon.de

No Comments »

I am sailing…

Next week, I’m off for the OUGN Spring Conference that the Norwegian Oracle User Group arranges on board a cruise ship sailing from Oslo to Kiel and back. This event gathers the Oracle A-List, including Tom Kyte, Cary Millsap, Bryn Llewellyn, Mark Rittman, Markus Eisele and many others - it’s an honor to be part of such a lineup.

My presentations are:

  • Ten Secrets of Successful ADF Projects
  • APEX or ADF? From Requirements to Tool Choice

I’ve heard that there are still a few spaces available…

2 Comments »

Oracle OpenWorld Submissions - The Full Monty

Here one day before deadline, I have entered almost my entire current catalog of presentations for consideration in the Oracle OpenWorld 2013 agenda. One new for this year: “Worst Oracle ADF Project Ever” ;-)

If you would like me to speak at one of your events, the following are the presentations I currently have prepared - feel free to email me at sten@vesterli.com. If you don’t have budget for speaker travel and accommodation and plan to ask the Oracle ACE Program for support, note that you must ask me to give two presentations, and you can only have two ACE Directors at your event.

Worst Oracle Application Development Framework Project Ever
If it can go wrong, it will. This humorous presentation presents “horror stories” from various projects of misunderstandings, architectural blunders, coding errors and downright bad luck. With the knowledge from this presentation, you will never make the same mistakes and will have only successful Application Development Framework projects, on time and on budget.

What a Server Administrator Needs to Know About ADF
Developers have deployed an Oracle Application Development Framework (ADF) application onto the WebLogic server. It’s eating up database connections and performing horribly, and everybody is looking to you to tune it. This presentation will explain the structure of an ADF application, how it uses database connections, what you can do to tune it, and what you can tell the developers to change.

What Beginners Need to Know about ADF Performance
By default, Application Development Framework (ADF) applications usually perform well, due to the many best practices implemented in the framework. But in the few cases where you are not getting the performance you are looking for, you have dozens of tuning settings and parameters. This presentation will cover the tuning options available in Entity Objects, Entity Associations, View Objects, View Links and Application Modules, focusing on the important AM settings and avoiding passivations. It contains a live demo using automated load to illustrate the mechanisms of Application Module pooling so the participant to see and understand how these parameters work.

From Requirements to Tool Choice
As Oracle developers, we used to have only a hammer (Oracle Forms), so everything looked like a nail (a job for Oracle Forms). Today, we have both Application Express (APEX) and Application Development Framework (ADF), so we have to make a choice. More important than the discussion of Java vs  PL/SQL is whether your application is user interface driven or data driven. A data-driven application is one where the data structure determines the user interface. These applications are well suited for a wizard-driven, browser-based approach as used in APEX; A user interface driven application is one that starts from a set of requirements to support a work process. This is easier to implement with the flexible architecture of ADF.

Life After Forms
Are you wondering about the evolution of your existing applications based on Oracle Forms? This presentation will discuss and demonstrate the most common options: Modernize your Forms and integrate in web application or portal; Build ADF Business Components based on your Forms and then building an ADF Faces web application on these components; Building an Oracle Application Express application, using the Forms Conversion capability of APEX to jumpstart development. This presentation will give the audience a good overview of impression of the capabilities and effort needed for each approach in order to make an informed decision about the future of their Forms applications.

Forms to ADF - Live!
This live presentation shows how to take a Form from an existing Oracle Forms application and develop corresponding ADF Faces screens. The form is first demonstrated and examined in Oracle Forms. Then, ADF Business Components corresponding to the base table usages in Forms are built using the wizards in JDeveloper. A user interface corresponding to the Forms application is built using ADF Faces with drag-and-drop design in JDeveloper. The presentation also highlights some of the places where a Forms application and an ADF Faces web application are irreconcilably different. The presentation is intended for developers who want to see in real life (not PowerPoint) how to start building ADF applications to replace existing Forms.

Top Ten Secrets of Successful Oracle ADF Projects
There is more to developing applications with Oracle Application Development Framework (ADF) than just the page building and coding. This presentation will teach you all the other things you need to know to make your enterprise ADF project a success. Topics covered include: The component catalog; Expectation management, Proof of Concept; Structuring workspaces, projects and code; Using templates and framework extension classes; Version Control and Build tools; ADF Logging. After having attended this session, the participant will understand the tasks and tools necessary to complete an enterprise ADF project successfully.

Choose Your Weapon - An Overview of Oracle Development Tools
This presentation examines all of the most important development tools and technologies available from Oracle today, discussing the strong and weak points of each: Application Express (declarative development in web browser,  PL/SQL business logic, data-driven design); Application Development Framework (declarative development with JDeveloper, Java business logic, user interface driven design; Oracle Forms (the classical Oracle development tool, PL/SQL logic, data-driven design). The presentation is concluded with an overview and recommendation for how to choose the right tool and application development approach.

No Comments »

WebLogic-In-A-Box

Oracle has just announced a new Oracle Database Appliance, this time with WebLogic. So if you are looking to move to WebLogic and want a high availability environment, read on.

Like the previous editions of the Oracle Database Appliance, this is a physical 4-U rack mounted box that comes with a standard software bundle - new is that WebLogic is included. You connect power and network and run the setup wizards to install the pre-packaged database and weblogic bundles and have a high availability environment up and running in a day.

You should definitely consider this option if all of the following apply:

  • You are moving to WebLogic (because you have started building ADF applications or are moving to Forms 11g)
  • You want a high availability environment
  • You are not very familiar with managing WebLogic (especially in a HA environment)

What does it cost, you ask? Well, it’s a standard HA environment, so it’s Enterprise Edition of both database and WebLogic. You’ll pay $60K for the hardware, $47.5K/CPU for the database EE, $10K/CPU for RAC One (or $23K for full RAC) and $25K for WebLogic EE. So, say you want to start with 4 cores of DB with RAC One & 4 cores of WebLogic, you’ll have to shell out $225K.

Interestingly, this system has pay-as-you-grow licensing - so if you want more cores, you pay up and and are good to go immediately (until you are using all the 24 cores in the machine). This is a one-way street as is usual with Oracle licenses; you can’t go back to fewer cores.

2 Comments »

Oracle Cloud: Nice and Fluffy, Still no Substance

After Oracle’s Cloud announcement yesterday, I was left scratching my head wondering if anything was actually announced.

We got the same message at OpenWorld (see previous blog post) and as far as I can see, got very little new yesterday. The only thing that was actually new is that Oracle has pasted the “Cloud” moniker on some of their latest acquisitions, adding a “Social” component to their cloud.

However, we’re still missing the most important pieces of information:

  • Availability date
  • Pricing

On past performance, I’m afraid Oracle will build some excellent software and then attach an “enterprise” (= very high) price tag, leaving their stuff out of reach of 99% of the potential user population. The Platform Services (Java and Database) should appeal to the wider market, but only if Oracle gets the pricing right.

No Comments »

Internet Explorer and ADF: Not Friends

One of the advantages to using commercial, fully supported framework like Oracle Application Development Framework (ADF) is that the vendor supplies a list of supported browsers. If something doesn’t work or doesn’t look right, it’s the vendor’s problem.

When we started a recent project, we initially made sure that our ADF 11.1.x pages looked OK in Internet Explorer and Firefox. As expected, no problems. So we started building our application, and the developers used Firefox and Chrome because of the superior tooling these browsers offer for web developers.

However, as has happened in other applications, one screen mutated into the dreaded “one-screen-to-rule-them-all” page allowing a power user to see and change almost every data item in the entire system. And while Firefox and Chrome were able to render our panels inside tabs inside panels inside accordions inside panels, Internet Explorer had to give up at some point.

Lesson learned:

ADF allows the developer to write cheques that Internet Explorer can’t cash. [tweet this]

Have your developers run their pages in IE every day in order to see where you meet the limitations of Internet Explorer. It’s much easier to fix the issues during development than during QA…

No Comments »

Is JDeveloper 11.1.2 a Dead End?

Oracle recently came out with JDeveloper 11gR2 (11.1.2.x), and not everyone was impressed. See for example the discussion “Performance and stability of JDeveloper 11gR2 vs. 11gR1” in the ADF Enterprise Methodology Group.

If you look up JDeveloper 11gR2 in the Oracle Lifetime Support Policy document, on page 9 you will find that 11gR2 does not get the normal 5 years of premier support and 3 years of extended support. Instead, you have only 3 years of premier support, ending June 2014. In effect, Oracle does not consider JDeveloper 11gR2 a real release and will only support it as long as they support 11gR1.

Finally, if you look at the section “Bugs Fixed in 11.1.2.1.0” in “Oracle JDeveloper and Oracle ADF 11g Release 2 (11.1.2.x) New Features”, you see a lot of bugs where the subject start with “backport”. Backporting means to take a bug fix from a newer release and apply it to an older one. So the fact that the very latest JDeveloper release comes with backports right from the start indicates that Oracle is considering 11gR2 the “old” release.

JDeveloper 11gR2 looks like a dead end in ADF development [tweet this]

Would you consider using it? Please comment below.

4 Comments »

Next »