product logo Taking an Oracle ADF Application from Design to Reality


Learn techniques for decomposing system requirements into a living, breathing Oracle ADF application.

By Chris Muir ACE Director and Penny Cookson ACE

This multi-part article takes a narrative approach to assist other developers in understanding the mindset and skills required to build an Oracle ADF solution. The article introduces techniques such as storyboarding to capture user requirements, prioritization of requirements to break your problem set into discrete solvable units using a technique known as "MoSCoW," and step-by-step problem decomposition to implement the discrete solutions in ADF Business Components and ADF Faces RC under Oracle JDeveloper 11g.

We will not take readers through step-by-step instructions for creating every single ADF construct. Rather, we presume that readers are familiar with the basics of ADF Business Components—including creating Application Modules, Entity Objects, and View Objects—as well as ADF Faces RC, including the basics of creating JSF pages, page flows, and similar things.


Chapter 1 - Where's My Parcel?

Learn how to use storyboarding techniques to determine requirements, and employ MoSCoW prioritization so you know where to start.

Chapter 2 - "Must-Have" Requirements: A Basic Search Application

In this section you'll learn how to build the must-have requirements; initially you only need the search fields and a basic search screen.

Chapter 3 - "Should-Have" Requirements: Creating an App for the General Public

Learn how to build should-have requirements such as logging of the user's IP address if they accept our terms and conditions and enhanced search capabilities.

Chapter 4 - "Could-Have" Requirements: Logging Search Criteria

Learn how to log all search criteria entered by the user, as well as the number of records returned. This will enable you to monitor how useful the search page is.

Chapter 5 - "Won't-Have" Requirements (But We'll Implement Them Anyway): Preventing Malicious Access

Shows how you can add some functionality to prevent malicious access by blocking any IP address that has issued three queries in the last hour but failed to find any results.

Chris Muir, an Oracle ACE Director, is a senior Oracle systems developer and trainer for Sage Computing Services in Australia. With over 10 years working in traditional Oracle development he has more recently earned battle scars working with, training with and promoting Oracle JDeveloper and ADF. Chris is a frequent presenter on Java and JDeveloper on the Australian Oracle User Group scene. As an active committee member holding past and present National committee positions, he was made a life member in 2006 for his dedication to the user group arena.

Penny Cookson, an Oracle ACE, has been working with Oracle products since 1987. Penny is the Managing Director for Sage Computing Services, which specialises in providing Oracle education and consulting services, and has conducted training courses and provided expert advice in a wide range of products throughout Australia. Penny is a frequent presenter at Oracle conferences. She was Oracle Magazine's Educator of the Year in 2004.

The authors would like to John Stegeman and Steve Muench for the information gained from their blogs, which was used in the creation of this article, and Grant Ronald for his detailed review.