Taligent believes it can best help software innovation not by creating yet
another monolithic operating system, but by facilitating changes in the way both
application programmers and system programmers work. These changes won't happen
overnight. Procedural programming required developers to learn new languages and
new ways of working, and so does Taligent's application of OOP to system
software. But just as procedural programming changed the nature of application
development, Taligent believes that the intelligent use of objects can
dramatically improve the speed with which all developers create software.
Figure 6 illustrates the three major ways that Taligent products increase
development leverage compared to traditional development environments:
- Factored subsystems ("Divide and conquer"). With the help of its
investors, Taligent has carefully examined existing application and system
environments, factored them into appropriate subsystems, and organized the
subsystems into an integrated object-oriented architecture. Instead of facing a
monolithic system with complex intrasystem relationships that must be mastered
programmatically, application developers can deal with more manageable
independent parts that are designed to work together. If a developer's domain
requires dealing with only two or three subsystems, development can focus on
modifying and extending those parts rather than making sure everything works
correctly with the rest of the system.
- Design reuse via frameworks ("Don't reinvent the wheel"). For each
subsystem, Taligent provides an implementation based on a framework, so that the
developer doesn't have to start from scratch. Instead, development starts with
prefabricated, preassembled units that are designed to be customized. Rather than
having to do all the work themselves, programmers only have to write the extra
pieces unique to their requirements. They don't have to reinvent basic elements
such as menus, windows, text and graphics tools, or distributed computing
capabilities on their own. Because Taligent's frameworks are designed for use on
multiple hardware and operating system platforms, the resulting software is
guaranteed to be portable without major development efforts for each
platform.
- Tools optimized for object development ("You're only as good as your
tools"). Finally, to ensure that developers can take full advantage of these
benefits, Taligent also provides development tools that are optimized for its
object-oriented approach. Most development environments today are organized
around
text editors--that is, applications designed for writing and editing code. They
work this way because most operating systems define the programmer's role as
writing new lines of code. In Taligent's view, the programmer's primary role
should not be to write new code but to reuse existing code
in new ways. So the cpProfessional development environment is designed
to let the programmer browse through working pieces of code, making
small modifications along the way and seeing their effect without having
to recompile the entire program. Like the CommonPoint system, the cpProfessional
development environment itself is built from frameworks
that can be used and extended by tool developers.
For a more detailed discussion of the potential benefits of Taligent technology
for commercial software developers, corporate software developers, and OEMs, see
"Benefits of CommonPoint development," beginning on page 125.