The attraction of Oracle Application Express (APEX) has increased tremendously with the recent
launch of the Oracle Cloud. APEX already supported departmental
development and deployment of business applications with minimal
involvement from the IT department. Positioned as the ideal replacement for MS Access, APEX
probably has managed better to capture the eye of developers and was
used for enterprise application development at least as much as for the
kind of tactical applications that Oracle strategically positioned it
for.
With APEX as PaaS from the Oracle Cloud, a leap is made
to a much higher level of business value. Now the IT department is not
even needed to make infrastructure available with a database running on
it. All the business needs is a credit card. And the business
application that is developed, managed and used from the cloud through a
standard browser can now just as easily be accessed by users from
around the world as by users from the business department itself. As a
bonus – the development of the APEX application is also done in the
cloud – with no special demands on the location or the enterprise access
privileges of the developers.
To sum it up: APEX from Oracle Cloud Database Service
get the development environment up and running in minutes
no involvement from the internal IT department required (not for infrastructure, platform, or development)
superior availability and scalability is offered by Oracle
users from anywhere in the world can be invited to access the application
developers from anywhere in the world can participate in creating and maintaining the application
In addition: because the Oracle Cloud platform is the same as the
on-premise platform, you can still decide to move the APEX application
between the cloud and the local environment – and back again.
The REST-ful services that are available through APEX allow
programmatic interaction with the database under the APEX application.
That means that this database can be synchronized with on premise
databases or data stores in (other) clouds. Through the Oracle Cloud
Messaging Service, the APEX application can easily enter into
asynchronous conversations with other APEX applications, Fusion
Middleware applications (ADF, SOA, BPM) and any other type of
REST-enabled application.
In my opinion, now, for the first time perhaps, APEX offers the
attraction to the business that has been suggested before: because of
the cloud, all the business needs is a credit card (a budget of $175
per month), an internet-connection and a browser. Not like before, with a
PC hidden under a desk or a database running somewhere in the data
center. No matter how unattended: equipment is needed, power is
consumed, the database needs to be kept running and if Oracle Database
XE does not suffice, software licenses are required as well. And this
set up always has a security challenge associated with it. The cloud fee
for the Oracle Cloud Database Service includes infrastructure, power,
licenses, availability, platform upgrades, a collection of reusable
application components and the development and runtime environments
containing the APEX platform.
Of course this not only means that business departments can move quickly
without having to convince their IT colleagues to move along – it also
means that small organizations that do not even have IT colleagues can do
the same. Getting tailored applications or applications up and running
to get in touch with users and customers all over the world is now
within easy reach for small outfits – without any investment.
My misunderstanding
For a long time, I was under the impression that the essence of APEX
was that the business could create applications themselves – meaning
that business ‘people’ would actually go into APEX to create the
application. To me APEX was too much of a developers’ tool to
see that happen – apart from the odd business analyst who missed his or her
calling as an IT developer. Having looked at various other cloud based
development offerings – including Force.com, Mendix, WaveMaker,
WorkXpress, OrangeScape, Caspio and Cordys- I have come to realize my
mistake. All these platforms are positioned for 'the business' but
require a fair amount of coding and technical expertise. However, they
make the business happy nevertheless, because they allow the business to completely circumvent the IT department.
That is the essence. Not having to go through the red tape, not having
to wait for IT staff who (justifiably) need weeks or months to provide
an environment, not having to deal with administrators (again,
justifiably) refusing to take on that 'strange environment'. Being able
to think of an initiative and turn into action right away. The
business does not have to build the application - it can easily hire
some external developers or even that nerdy boy next door. They can get
started, get an application up and running and invite users in –
especially external users such as customers.
They will worry later about upgrades and life cycle management and
integration. To get applications up and running quickly and start
turning ideas into action and results rightaway. That is the key selling
point for all these cloud offerings, including APEX from the Cloud. And
it is a compelling story. For APEX probably even more so than for the
others. While I consider APEX a somewhat proprietary framework compared
with ‘regular’ Java/JEE web development (or even .NET and PHP
development), it is still far more open than most cloud environments.
APEX is SQL and PL/SQL based – nothing special about those languages –
and can run just as easily on site as in the cloud. It has been around
since 2004 (that is not including several predecessors that fed straight
into APEX) so it can be considered pretty mature. Oracle as a company
seems pretty stable – so investments in its technology are bound to last
for some time to come.
By the way: neither APEX nor the other Cloud DevaaS offerings are
targeted at creating applications with enormous life times. They fit
into a trend of agile development and rapid life cycle management, with
fairly light weight user interfaces that quickly adapt to taste,
technology trends and functional requirements and that are easily
replaced.
APEX and ADF – a match made in heaven?! (or at least in the sky)
Note that using APEX only for cloud based database with REST-ful
Services is also a perfectly viable scenario: any UI – mobile or browser
based – capable of consuming REST-ful services can be created against
such a business tier. Creating an ADF Mobile application for example
that runs aginst REST-ful services is a best practice for mobile
development. Such REST-ful services can be consumed from any service
provider – including the Cloud based APEX powered REST-ful services
running against the Oracle Cloud Database Service!
The ADF Mobile architecture overview can easily be morphed to fit the APEX services in – allowing for a cloud based mobile app:
Want to learn more about Oracle Database Cloud Service or Oracle Cloud, just visit cloud.oracle.com or oracle.com/cloud.
Repost of a blog entry by Rick Greenwald, Director of Product Management, Oracle Database Cloud Service.