OFM 11g Launch – Live Webcast – Part 1

Oracle Fusion Middleware 11g will hold a lot of new features and technologies to get acquainted with, but most of all the stack is even more integrated and the first major release after the BEA acquisition. I think a lot of people have been waiting on this announcement, especially when we talk about Fusion Apps which has been a tremendous effort and if you have the opportunity to see a demo, please do … !

Bringing this single stack of technology, using the best of breed of both middleware stacks, will minimize the product dependencies because we will be using 1 single stack for as well Applications, Middleware projects, database as the infrastructure-side.
Using this pre-fabricated environment based on open standards which will give us the ability to have a pre-patched, pre-tested, pre-configured, … environment that can be managed, monitored, secured, … in a unified way.

The middleware is the key part in the entire stack to be able to offer and re-use standardized services to each component, technology or product within the product stack.
In other words, if you understand how the middleware works and operates you will understand how security, deployment, management, monitoring, … works throughout the stack.

Building rich client applications using the Application Development Framework that will give you the ability to render your application as you see fit.
Building an orchestration engine for as well human-, process- as document-centric process flows.
Having a single and unified way of defining security, managing components and monitoring these different services by using a single layer of metadata.

All these functionalities and features will give us more time to innovate instead of maintaining the existing applications landscape.

Business Process Integration – What, where and how

If we talk about business process integration, we would probably have a different vision and other expectations depending on our role.

For example: if we talk to the manager about business process integration, this could mean automate existing manual processes. If we talk to the sales-departement they would expect to have more insight into trends, benchmarks and action-triggered marketing campaigns.

Another example: If you talk to analysts they would think about business process modelling and defining the landscape of existing processes to be able have a clear understanding of the company’s process lifecycle and how processes, data and tasks are managed. If we talk to architects we would start discussing the usage of UML Sequence Diagrams, Class Diagrams, Canonical Data Models, …

In other words the expectations differ depending the context you would be interested in the integration aspect.

The steps that can be equal across the different stakeholders:

  1. Analyse existing business processes, data, services, organisational aspect, …
  2. Define workflow aspects such as the difference between automatic and manual steps
  3. Automate business processes
  4. Integrate business processes

The products that can be used to tackle these aspects, as well on business side as IT side, and offered within the Fusion Middleware 11g stack are: BPA Suite, BPM Suite and SOA Suite.

BPA Suite, Business Process Analysis Suite, can offer you an environment to analyse needed data, services, organisational aspects and business processes (using different types of diagrams). Besides architecting these artifacts you can also simulate the processes to be able to have a clear view on the throughput and process lifecycle without needing to automate the processes you’ve put in place in for example a non-automatic manner. Afterwards you’re able to discuss the business processes with your IT department and start implementing/automating these processes using Business Process Modeling Notation and Business Process Execution Language (BPMN and BPEL). BPMN 2.0 is now supported in 11g.

BPM Suite can then offer a unified view to as well analyst as stakeholders as developers using the same environment, the same processes and analysis. By introducing one single environment for these different stakeholders, communication and collaboration will be augmented without frustration of difference in object definitions or concepts.

After the analysis, simulation and automation has been put in place, using SOA Suite (e.g. Bpel process Manager) you can start integrating these processes within existing environments. Call out to these new processes (a deployed BPEL Process is a web service) from the Back-End. Publish these services to your existing partners and new partners, …

ODTUG 2009 – Jam Session

During the ODTUG conference a lot of interesting presentations and session were given regarding different aspects, such as:
  • Forms Modernization (Forms 2.0, Forms 11g, …)
  • Apex (Case studies, Apex & reporting, Apex for mobile applications, …)
  • ADF 11g (Fusion development using ADF 11g and rich client components, Package based development using ADF BC, …)
  • Integration (web services, ESB, BPEL, usage of a canonical datamodel, best practices when talking about security, development, …)
  • Finance (Hyperion, Essbase, …)
  • Data Integration (OWB, ODI, …)

Besides these sessions we also had the time to have our own little jam session …

In other words, the conference was a great learning experience and we had a lot of fun as well ;o)

OFM 11g Launch – The fusion ages kicked in

Oracle Fusion Middleware 11g has finally arrived and it’ll give as well developers as customers the possibility to implement bleeding edge technology throughout the Oracle Stack.

Just looking at the different features and functionalities that have been build into the stack is amazing and most of all, you can’t get round fusion anymore.

So let’s have a look at what fusion has to offer us (it’ll swipe you of your feet!):

  1. The BEA Integration Milestone:
    1. Weblogic Server will be the underlying backbone of all fusion applications, going from classic environments such as Forms, Reports to the web 2.0 environments such as Webcenter and ADF. What will this milestone offer us:
      1. Flexibility and agility by declarity of design
      2. Take decisions in real time by integrating analytics within the transactional context
      3. Power for the end-user so business and it can interact and collaborate whilst enabling end-users with a flexible, personalized and easy-to-use business oriented environment
      4. Ease-of-upgrade using automated tools to upgrade existing OC4J applications towards the new Web Logic Server
        1. Automated upgrade for soa components, webcenter applications, forms and reports applications
        2. Smart Upgrade for OC4J JEE Applications
          1. Descriptor analysis to report on recommended findings
          2. Upgrade all the pieces of configuration necessary (pick and choose)
      5. Consolidation and virtualization of the data-center to enable companies to maximize return on investment using the data grid
  • Budget can go to development instead of administration and management
  • Services-based delivery that will enable companies to re-use services throughout the enterprise using a standards based approach giving customers and partners the ability to work within a shared-service infrastructure
  • Unified management and monitoring capabilities within one environment and a rich user interface
  1. Enterprise Manager will be the window on the data-center!
  2. Fusion Middleware Control gives you the ability to manage multi-domains, policies, alerts, SLA and much more in a single environment.
  1. The Grid: A new model for efficient resource utilization:
    1. The Coherence in-memory data grid gives you the ability to paralyze computation across the grid
    2. Inherently use the grid for as well cpu as memory
    3. State-aware continuous availability for service infrastructure
    4. Software-only solution, no hardware costs necessary
    5. Off-heap storage = Significantly reduced coherence nodes
  2. Unified Security Model
    1. Using the Oracle Platform Security Services you can define a generic and integrated security model throughout the Oracle Stack = 1 Common Security Layer

So now we have the backbone of our infrastructure laid out, now it’s time to have a look at the different components that will offer these functionalities.

  1. SCA – Service Component Architecture:
    1. Composites will be key throughout this stack which will give you the possibility to deliver and reuse any service that has been built Enterprise-wide. When you’re talking about data services, business services, web services or even mediator services, it’ll all be managed within one environment. In other words ease of development, deployment, management using a unified approach for as well business and IT.
      1. These composite services can be re-used in different ways throughout the business and it lifecycle going from business dashboards, to side-by-side versioning on composite level, to global-policy management, to unified management and monitoring of each aspect and transactions within and E2E-context and much more.
    2. Integration of BEA products :
      1. OESB will become the mediator component within the Service Component Architecture used for basic routing between components
      2. OSB will become the new service bus that’ll offer routing, transformation, chaining of services and much more within SCA
    3. B2B, BAM, BPEL, Human Workflow, OSB can be hooked up into the SCA cloud using Adapter technology to enable business and it to focus on different aspects of the organization whilst holding the needed agility and flexibility throughout the entire development lifecycle.
    4. A unified BPM Platform which is fully BPMN 2.0 compliant and leverages BPM capabilities using a single environment for as well business as IT, namely Jdeveloper
      1. Integration of BPM Studio within Jdeveloper
      2. Share processes and services using the BPM Process Composer and business Catalog
      3. Easy-to-upgrade using the migration path provided when going from 10g to 11g
  2. Jdeveloper – The development environment for as well business and IT, a unique proposition
  • Integration of BPM Studio
  • Composite based development using Adapter-technology
  • ADF which will put a face on each application that needs to be delivered to end-users
    • ADF render kits for Ajax and Flash
    • ADF render kits to .png (talking bandwidth and performance into account)
    • ADF render kits for usability purposes (e.g. Screen reader-functionality)
  • Active Data Services Push
    • Data changes are pushed into the UI instead of needing to pull for data changes, using Coherence Cache Listeners and asynchronous calls
  • Application Lifecycle Management
    • Pluggable interface to quickly access documentation, bugs, reports etc. used throughout the stack
  • ADF Desktop Integration
    • Build transactional spreadsheets using the existing binding layer of ADF

In other words SCA Suite, Webcenter Suite, Forms, Reports and Fusion Apps will use the same infrastructure which will enable the usage of consistent admin and management tools whilst leveraging capabilities of the infrastructure and database throughout the entire stack.

My 2 cents … Fusion has become a reality with unlimited functionality and features!
Working within a forms, JEE, DB or Apps environment, everyone will be using the same technologies throughout the stack … The fusion ages kicked in!

Fusion Design Fundamentals

Duncan Mills gave a great presentation on ODTUG regarding the Fusion Design Fundamentals which gave more insight in how to manage and start in Fusion Development.

The key take aways I found very interesting:

  • The Groundwork: 1. understand the fundamentals of the UI in which you’re aware of what ADF can and can’t do (don’t start designing in dreamweaver because you need to be able to hook it up into ADF. 2. Prototype it and make it sufficiently real which will also give your team and the customer a real case study of what the application can become. 3. Approach the framework and architecture with an open mind because the architectural approach is key.
  • What is the fusion blue print = View – Business Logic – Data (as what you would think working with an MVC-framework.
  • Educate your UI Designers: Use the Placeholder Data Control to mock data and services + show them the rea-site in which you have a sandbox available to plug and play with the different components + behaviour of the design is key when designing User Interfaces (e.g. what happens to the application when I resize the window)
  • Team organisation: a. Optimize team size so you can have expertise in specific technology areas (you can’t do that if the team’s to small, in that case they need to know more about the framework, as well UI as business logic for example). b. try to partition the skills: UI specialist, Service specialist, Orchestration Specialist, DB Specialist, SCM-build and release management. => more separation within the team so developers can specialize.
  • 2 trains of training: a. Create Subject Matter Experts that can mentor large teams (they create POC’s and get to know the framework). b. SWAT-team: mixture of architects and PM’s to get high level view of development teams and decide when to move up and escalate, e.g. in case of a bug
  • Source control and release management need a separate team in which Master Data Management is an integral part of dependency managment
  • Specific things you can do with the stack: a. Create your own Superclasses (Application Super Classes for ADF BC + UI Event Handler Superclasses). b. Use templates for the UI and taskflow using your pre-defined exception handlers. c. Use the skinning-technology to be able to change the look and feel of the UI in a general, generic way. d. Learn to love ADF Taskflows which is fundamental to create reusable stuff and to encapsulate a flow of information ( ADF Taskflow = Page flow on steriods; used for chunks of reusable UI with transactional state, private memory areas, … the true Web 2.0 experience). e. Work with the UI, not against it (think of geometry management, e.g. use decorativeBix which can be resized and stretched depending on the UI Specs) => don’t use absolute sizing or positioning. f. Document the UI patterns you’re using: e.g. master-detail, wizards, … the common patterns are documented on OTN: ADF Functional Patterns.
  • ADF 11G: You will have different source of template patterns to choose from (this is an awesome functionality in which you can choose to work with 1, 2 or 3 columns and each area can be defined upfront as being locked, stretchable, scrollable, …)

Another interesting part of the presentation, 5 laws to live by ;o):

  • Don’t write javascript because anything in Javascript can be hacked or bypassed (make use of the Client Side and Server Side Listener functionalities)
  • Don’t mix in html => stick to the components, avoid JSP Constructs (e.g. JSP include or JSTL) => in this way you can use any controller-layer possible and uplift performance
  • Minimize Use of CSS => use skinning technology and define custom styles in skin
  • Don’t write Custom SQL => try to do it declaratively using view and entity objects
  • Communicate ! Demo, document and share experiences

This was a really interesting presentation regarding the organisation of teams, how to use ADF and what the pitfalls can be.

A Canonical Data Model, the missing link within a Service Oriented Environment

Chris Judson has given an interesting presentation regarding a Canonical Data Model within a Service Oriented Architecture.

First he gave an example of the different aspects and problems you could be facing when defining the existing arhictecture and business flows within an organisation.

One of the aspects that’s needed to accomplish this, is getting IT and business to consolidate and collaborate with eachother to have a clear understaning of today’s architecture and the goals defined for the future.

The Canonical Data Model will define a common format to describe business entity within the enterprise wide organisation, as well for business as IT.

Take aways from this session:

  • The CDM will reduce the interface maintenance and encapsulate business logic in one central place
  • Put the CDM on the bus: you can plug in new applications to listen to existing events, without the need to define a new format for the new consumer + there’s a common understanding of the data model for as well business as it
  • Use the 80/20 rule to define a CDM: First you take all the unique identifiers combined with a super set of data which will be used by most consumers. In other words, if 80% of the consumers have the needed data within the CDM, the 20% can be delivered using the enrichment pattern, without the need to enlarge the payload of the CDM
  • Managing change is hard within such a model, because the dependencies between several applications are mostly high. To manage change, the 80/20 rule is applicable as well. When 80% of the consumers need new attributes, changes in the existing attributes, … the CDM can be changed. The other consumers can be delivered the same functionality using the enrichment pattern again.
  • For schema versioning the Format Indicator Pattern is mostly used
  • Use generic XML types for the XSD instead of DB specific types
  • Use declarative namespaces to manage data domains to have a generic enterprise wide data definition strategy in place

The presentation of Chris was very enlightning, because a lot of these tips & tricks are valuable for each design or implementation using XML type data and service enablement.

ADF 11g – Take Aways

Monday morning I followed the session of Lucas Jellema, Putting a Smile on ADF Faces. The presentation was great, especially because Lucas created a demo with some of the features integrated that Steve Miranda had shown in the keynote session regarding Fusion Apps.

Take aways from this session:

  • A table can fetch data in an asynchronous request, so you can scroll throug records and the server will get more data as needed. In other words you don’t need to use the pre-defined row-set anymore which was necessary in previous versions, e.g. show 10 records at a time)
  • Client Side and Server Side support has been greatly improved so developers can tackle functionality where it’s supposed to happen. API’s are available to be able to work only on the Client Side or Server Side using Listeners. Using the Client Side scripting for example, you can now use javascript and client Side API’s instead of needing to use backing beans or managed beans. For Example using propertyListeners on the client side to trigger events.
  • You can embed tables inside the panelCollection-component to be able to change to look and feel of a table component, e.g. detach the table to a separate region to have more display-functionality. What you can do know is hide columns, filter on records at run-time which can give you the same dynamic look and feel as with using interactive reporting within Apex
  • Autosuggest-functionality to be able to get a list of valies according to the information the end-user has putted in. The event keys kan be intercepted by the Client Side Listener, calling the Server Side Listener which can then push the data to the Client Side
  • The Data Push mechanism or Active Data Services give you the ability to work on real-time data without the need to fetch the data yourself which is a great enhancement

And of course there’s lots more in the ADF 11g release that will enhance user friendliness and capabilities for the developer to give you a true Web 2.0 experience. The hierarchy viewer-component can be viewed already on the rea-side. Have a look at what ADF has to offer you in a sandbox-environment where you can start playing around with the functionality.

ADF EMG at ODTUG, OKUG, google-group …

This group is a place to discuss best practices and methodologies for JDeveloper ADF Enterprise development, including effort by “experts” in ADF to discuss high level issues than those discussed on the OTN JDeveloper Forums.

This effort is an overall part of getting ADF experts, advocates and programmers to start collaborating at user group events and OOW to get “ADF out there”.

What does the ADF EMG stand for?

Meanwhile, for those who are looking for something of substance, we’ve recently centralised previous efforts of the group from the Oracle Wiki to this group.

If you select the “Pages” link to the right of the Group window, it’ll list useful content including:

During the Middleware and SOA Session at the Sundown Sessions, we will be further discussing these deliverables and other aspects that have been mentioned on our group.

You can find more information regarding ADF EMG and the ACE program during ODTUG, at: http://www.odtugkaleidoscope.com/acedirector.html

Simon Haslam has submitted an Abstract regarding the ADF EMG take aways for OKUG as well. So if you can’t attend ODTUG, you certainly need to attend OKUG!