Future of Object Technology
Oracle Database Tips by Donald Burleson
About three years ago, the major
industries recognized that object technology with it's objects,
classes, behaviors, and messages has a lot to bring to the table.
You've got the ability to provide polymorphism, encapsulation, and
inheritance and all these other new terms and words that nobody
understands, but have very compelling reasons to be there.
Larry Ellison, the other billionaire, announced
that his Oracle database was going to have object oriented features, and in fact
Oracle, they're calling it Oracle "late" because of the delays in the delivery
of the product, nearly spanning a four year period. However, Oracle does indeed
support many of the object technology constructs, like pointers and inheritance
and the ability to define class libraries and it's going to turn the entire data
processing world on its side.
As we may know, Michael Stonebreaker's famous Illustra database, the object oriented database that used data blades, was
recently purchased by Informix Corporation. Informix is re-architecting
Informix from the ground up to be a robust object oriented database, and it will
soon become a major player in the object/relational database market. So we're
starting to see a major change, not only in the kinds of systems that we
develop, the sorts of applications that we support, but in the technology that
is actually driving these kinds of applications.
As we broaden our base of technology, and push
the limit of well-structured kinds of systems to a higher plane, a whole
different kind of occupation is going to be coming up for IT resources. For
example, within the mundane realm of database administration, computer
programming is going to change radically. It is referred to as the programming
revolution, which will begin in 1998 as these databases make their way into the
mainstream, it's analogous to the Industrial Revolution of the 18th
Century. Prior to the Industrial Revolution, people were individual craftsmen.
Each and every rifle was it's own unique work of art. After the Industrial
Revolution, the jobs of gun makers changed. Rather than being custom craftsmen,
they became assemblers of pre-manufactured components. That very same thing is
going to be happening to the jobs of applications programmers today and it's
being largely driven by the major hardware and software vendors.
Changes in systems development is going to
become radically different but it's not going to happen overnight. Programmers
have recognized that creating these reusable capsules of code can dramatically
change and improve the way that information systems are developed. For example,
the programmer of the future isn't going to write that much custom code.
They're simply going to be assembling from pre-written, pre-tested components.
And the benefits of this type of system development should be self-evident, and
what you will see is that all the SQL, all the application process codes move
out of the application and move into these object oriented databases, where it's
tightly coupled with the objects.
CORBA, the (Common Object Request Broker
Architecture) sponsored by the OMG, and Microsoft's DCOM (Distributed Common
Object Model) are taking over as the de facto standards for inter-operable
systems communication. These emerging standards are what is driving our
industry today and it's going to have a profound impact on the way we, as IT
professionals, do business. With all of the process code moving out of
applications programs and into the database, it opens up entire new job
opportunities, especially in the Information processing professions.
The computer industry can be very fickle. The
IT industry has a fantastic rate of change that is broadening the scope of the
way information systems are handled and managed. We're going to start seeing
the whole era of Very Large Memory Systems. Just look at the last ten years,
and look at how things have changed. For example, look at normalization that is
used in database design. You learn to tear things apart, and put them in their
most atomic, tiny pieces, because you don't want to have redundancy. Redundancy
was always considered bad. Well that changed as disk prices fell, it was
almost like one morning they woke up and said, "Hey guess what? Redundancy's
now good!" But wait a minute, it was bad yesterday. "No, it's good,
And that's what we see in this whole computer
arena, we're finding that the rules are changing, like the attitudes towards
data redundancy. For example, you'll notice all of the major databases are
supporting a synchronous replication, snapshots, mirrored databases, and
Redundant Arrays of Inexpensive Disk (RAID). So again, we're seeing more
examples of how the changes in these hardware arenas are influencing the way we
do business in information systems. It also has a tremendous impact on the way
information systems are designed.
Software products of the future are also going
to change in their fundamental nature. For example, database products aren't
going to have roll forward capability anymore. It takes a tremendous amount of
database resources to write the before and after images of every record that has
been updated in an OLTP environment. The only reason the legacy databases write
these images is in case you have a disk crash and you have to roll the database
forward to a point in time prior to the disk failure. But doesn't that become a
moot issue with RAID technology? With RAID, you have continuous 7 by 24
support, if a disk goes bad, you run over, unplug it, slap in another disk, it
resynchronizes and you never any system unavailability due to disk failure.
Hence, we're seeing the reaction of the software community to the advances in
hardware technology. The major software vendors reacting to the change in
hardware technology, and it cascades on down to where we are today.
We're going to start seeing changes in the roles
of everyone who works with computers. The roles of computer programmers are
going to radically change into the roles of code assemblers. The roles of the
systems analysts are going to become much broader with the advent of object
technology. Class hierarchies, polymorphism, encapsulation, all of these wild
and wonderful tools are going to present challenges to the systems development
community. And now is the time to ramp up for it. If you're going to sit back
in your ivory tower and hope it'll go away, you're going to be in for a
surprise. The major software vendor companies are forcing us to embrace these
new ways of doing things and now is the time to prepare for them.