| Software
Portability
Weighing Options, Making Choices
By
Ken Garen
NOVEMBER 2007
- The world of software moves at either a snail’s pace or
lightning fast, depending on one’s perspective. We constantly
hear of new applications and uses for technology that build on previous
concepts. For example, the iPod has rapidly become ubiquitous, leaving
Sony Walkmans to gather dust in our closets. But
portability remains a complicated issue. For example, we can’t
listen to iTunes music files on Microsoft’s Zune the way
we could take cassettes or CDs and play them on another maker’s
device. Instead, we are locked into hearing music on the system
we purchase. And however much we love our iPods, limiting our
choices as consumers to Apple’s proprietary system seems
fundamentally wrong.
The idea
of portability—how easily a program can be moved between
and used on different computer operating systems (OS)—has
been around since the mid-20th century. Portability does not imply
that the application will transfer simply to the new platform,
but nor does it mean a major effort is required. Portability is
simply the ability to use the program on another system with reasonable
cost and effort. If the cost of porting a program to another OS
is more than writing a different version of it for that OS, the
program isn’t portable.
From an end-user
perspective, portable software means:
- The software
can be moved across a wide range of systems with minimal changes;
- The program
works with other applications on local or remote systems; and
- Users
require little or no retraining on the program.
Portability
is highly desirable for software products, saving time and money.
What company wouldn’t want to run its accounting, payroll,
and tax software on any PC it chooses? But in most cases, the
same application won’t run across platforms. Instead, the
program written for Windows is fundamentally different and virtually
impossible to transfer to Unix, Linux, Macintosh, or some other
operating system. To make matters worse, we can’t even use
the same software on different versions of the same operating
platform. What’s a business to do if some computers run
Windows 98, while others use XP, but everyone needs to access
the same program? If the software developers had written the applications
to be portable, there would be no issue.
A notable
and commonly understood example of portability in the software
world is Adobe’s Acrobat Reader, a free program for viewing
and printing documents whether they have been created in a Windows,
Unix, Macintosh, or other environment. Acrobat files end with
.pdf (portable document format). This format allows easy and free
access to documents without the need to own the software used
to create the document.
The
History of Portability
In the late
1950s, the U.S. Department of Defense brought together members
of six computer manufacturers and three government agencies to
discuss solving the problem of lack of portability. This committee
arrived at standards in 1959 for a common computer programming
language that could be used on any system. Portability took hold
in the business community with the resulting language, Common
Business-Oriented Language (COBOL), because it handles financial
data and numbers with aplomb. Most major industries, from financial
applications to manufacturing, rely on COBOL, as do operating
systems such as IBM’s OS, Microsoft’s Windows, and
the Unix/Linux families. The Gartner Group reported that in 1997,
80% of global business ran, at least in part, on COBOL-based programs.
The Department
of Defense is even more concerned with portability now, primarily
because Microsoft’s Windows has the lion’s share of
the global OS market. Having virtually all of the world’s
computers using one operating system (96.7% as reported by OneStat.com
in August 2006) leaves those computers vulnerable to viruses and
hackers. There are murmurs that the Department of Defense may
mandate that no more than one-third of its computers run on a
particular operating system so as to prevent a single virus from
taking down all of its computers at once.
Common sense
suggests that placing all of one’s eggs in a single basket
is a recipe for disaster; however, it is not unusual for one company
to have a dominant market share. In the 1950s, IBM had almost
100% penetration with its operating system and hardware. The marketplace,
and the government with its antitrust watchdog function, demanded
change. Other companies made computing affordable for those who
couldn’t afford IBM’s expensive mainframes. Today,
Microsoft faces the same antitrust and marketplace objections.
The rise of Unix and Linux and operating system variants testifies
to the ever-changing technology environment.
Choosing
Wisely
Why worry
about portability when considering accounting software? Small
Business Trends magazine reported in 2006 that small U.S.
companies (up to 99 employees) spent approximately $410 million
on accounting software solutions, a figure expected to top $500
million by 2008. Companies are searching for easy-to-install,
user-friendly solutions tailored to them. In addition, nearly
75% of these businesses upgrade their accounting software package
every one to two years.
Even more
importantly, Small Business Trends reported that more
than half of all small businesses use no accounting software at
all. The pressures of a changing regulatory environment and the
need to operate more efficiently, as well as the desire to exchange
data with larger customers and suppliers, suggest that many of
these companies will purchase accounting software in the future.
Running a
business in the current regulatory environment, including compliance
with the Sarbanes-Oxley Act (SOX), is nearly impossible without
good accounting software. In addition, more states are moving
toward requiring the e-filing of payroll and tax returns. Most
software creators are using such mandates as a revenue opportunity
to charge consolidation fees of three or four dollars per return.
This can easily add up to thousands of dollars a year in extra
cost unless a business owns software that will allow an accountant
to file directly with the IRS and states.
Allowing
each user to work on the workstation of their choice (including
Mac or Linux) is a major long-term cost saver and productivity
booster. This can happen only with software designed for portability,
where different operating systems can access the same data files
simultaneously. Users can run on $500 Linux computers instead
of $2,000 Windows boxes.
Another major
long-term financial consideration is the cost of relicensing fees
for nonportable software if a user changes platforms. For example,
if a user moves from Windows 95 to Windows XP, most software vendors
would charge for a “new” version of the software that
is already owned. Software designed for true portability would
run on all platforms, eliminating any need for relicensing fees
when a business moves to a different platform.
Portability
Pros and Cons
Open portability
has important advantages:
- Long-term
viability of the application: There’s no need to reinvent
the product to make it usable from one version of an OS to the
next.
- Resource
allocation: More developer resources can be put into new features
and products if developers aren’t spending time debugging
for the latest OS version.
- Scalability:
Portable software can be designed to accommodate one or many
users, and small or massive amounts of data.
- Versatility:
It’s easy to add features and have the assurance that
they will run on all platforms.
- Keeping
data is flexible: Choosing a database or index file system matters
a great deal. For example, indexed sequential access method
(ISAM, a way to store data for fast retrieval) files are fully
portable without modification.
- Moving
data from one application to another is easy.
Portability
also has downsides, however. Writing platform-independent software
requires high-level skills and a good grasp of portability issues.
Few developers know how to do it. Companies that create software
development tools make many processes or procedures automatic
in order to allow a developer to concentrate on the interface
and functionality.
Marketers
have cast a negative light on software written for portability,
but it’s been working since 1959 and new applications continue
to be developed, which shows that portability remains a viable
technology strategy.
Platforms
and Products
Windows.
The most common operating system platform by far today is the
Windows family of products, the latest version of which, Vista,
launched recently. Windows’ broad use—every information
technology professional knows it—means that it’s easy
to find qualified help and to hire employees who have experience
with it. A wide variety of programs are written specifically for
Windows.
Unfortunately,
Windows users will need technical assistance with some regularity.
Windows doesn’t run trouble-free. Windows applications don’t
scale as well as Linux- or Unix-based ones, and are often unstable.
Because Windows faces no real market competition, however, users
accept its foibles and vulnerabilities to hacking and viruses.
Most software
for the accounting profession, whether designed for small or large
companies, is written exclusively for Windows. Unfortunately,
these programs often don’t allow data to be transferred
between them, so switching from one program to another requires
recreating or porting the data at great cost. The software may
allow only limited options for exporting data.
Linux.
Linux is making inroads in operating-system market share for larger
corporate users for web servers, firewalls, and databases. Working
in Linux’s favor is its more limited vulnerability to viruses
and hackers, its faster and more stable performance, and its scalability
and open systems. Because Linux is an open-source system, users
can actually see and manipulate the underlying code for it. This
makes it easier for a company to adapt Linux systems to its specific
needs.
On the downside,
Linux is definitely a “geekier” system, requiring
specialized technical assistance. The software interface is not
as user-friendly. Also, there are fewer end-user applications
for smaller businesses. One thing keeping Linux from wider use
in corporate environments is that it has no equivalent to Microsoft’s
Exchange Server, which handles e-mail and meeting functionality.
Unix.
The Mac OS is now based on Unix, making it a limited,
but popular, choice. It’s also limited in its vulnerability
to exploiters, and is stable. The Mac OS is also designed to do
many functions for the user, providing more flexibility.
But Mac and
Unix users trade off that ease of use for functionality. For example,
Unix is difficult to customize for an individual user, is graphically
impaired, and requires arcane commands. Unix is definitely for
geeks only, reflecting its origins in the mini-computer world.
Other than software written for the Mac OS, almost no programmers
are currently writing in Unix.
Portable
Software
Accounting
software developers with products designed for platform independence
include SouthWare, SAP, and UBCC. SouthWare touts its scalability
from one to many users, while SAP’s programs are designed
for mid-sized to large companies (often entailing seven- or eight-figure
installation costs).
True multiuser,
multitask accounting software can be easily ported to other systems
if it is designed properly. The product should run well on a multitude
of platforms, including all Windows, Linux, and Unix operating
systems, and even IBM mainframes. These would not be different
versions of the software written for each system, but rather one
set of source and object code and one set of data files. The same
program that runs on an ancient Windows 95 machine should function
on an IBM mainframe or the latest Macintosh, with no need for
the user to relearn the software.
The benefits
of using the most portable software available are manifold.
Companies can seamlessly grow from one to several thousands of
users, or switch platforms or operating environments without jeopardizing
mission-critical software systems. Companies can preserve their
investment in hardware, data files, software, and training time.
Copying
files from one operating environment to the other and restarting
the software on a new desktop can be done in a matter of minutes.
Another benefit of building an application for platform independence
is that printing should be a snap, with all the functionality
built into the application.
Pricing
and Purchasing Decision-Making
There are
several providers of full-service payroll bureau products, with
prices ranging from $3,000 to $25,000. Some providers offer more
flexibility in pricing by allowing users to independently purchase
features and functions, including general ledger, depreciation,
inventory management, and order-billing.
When a company
chooses software, it is also buying the pros and cons of the architecture
upon which the software is constructed. There are several dimensions
to application portability that a company should investigate:
- Program
portability: Will the code run exactly the same on all platforms?
- Data
portability: Will data files be transferable and run as is on
all platforms?
- End-user
portability: Will the program have the same look and feel across
platforms? Will the commands and keystrokes be identical? This
flexibility must be designed in from the outset.
- Developer/documentation
portability: Will a developer or user be able to use a standard
set of skills to understand the program?
Businesses
often stay with their existing accounting systems too long because
the status quo is comfortable. Many times, switching to something
new brings apprehension, and raises questions of time and resources.
But comfortable doesn’t cut it when the future of a business
is on the line.
If companies
voted with their dollars and demanded portability, more software
would be written and more developers would write for it. Portability
should be at the top of the list when companies look at future
software features.
Ken
Garen, CPA, is the founder and president of Universal Business
Computing Company (www.UBCC.com),
a software development firm of high-volume and high- productivity
accounting and payroll solutions.
|