According to the U.S. Department of Commerce, the economy remained fairly healthy in 2005 with quarterly gross domestic product (GDP) growth averaging approximately 3.5 percent. Business investment in equipment and software grew at almost twice that rate.
Most of the software vendors in this guide reported business to be good with many reporting that 2005 was their best year since 1998-1999 when the Y2K phenomena drove new system sales and professional services to record levels. Most research firms expect this trend to continue for the next three years.
THE END OF THE LEGACY SYSTEMIn earlier days, internal data processing departments were staffed with analysts and programmers. When the company needed new application software, it would turn to its staff to analyze internal processes and then write the necessary programs.
Companies that turned to outside vendors, however, would buy standard software and then have it customized. In the late 90s, many companies were forced to make additional software investments to address the Y2K problem.
These legacy systems tend to execute business processes following strict, carefully defined rules that make changes complicated and expensive. Integrating these systems with e-Business applications, customer relationship management software, third-party sales tax, or shipping software is difficult, if not impossible.
If these packages were written in legacy development languages, such as the Common Business Oriented Language (COBOL), and use proprietary databases, the challenge is made even greater and companies may not be able to find staff that is qualified to work with these systems. If fortunate enough to find qualified staff, the risk of having critical business applications dependent upon a few people may be unacceptable.
THE PACE OF CHANGE ACCELERATESThe pace of change is accelerating. The Internet has emerged as the tool for creating integrated business processes across the supply chain. Integration through the Internet has allowed electronic commerce to flourish. Only five years ago, information systems were isolated and difficult to access. Now they can be accessed by employees remotely from almost anywhere in the world.
As the Internet has connected all systems, the demand that a system be open, or able to connect to other systems easily, has become primary. Software companies have responded to this by making products interoperable, different systems having the ability to work together on a common task. Interoperability describes the capability of different programs to read and write common file formats and utilize the same protocols.
The two most common development environments for interoperability are Microsoft's .Net (pronounced dot-net) and Sun's Java. These tools provide most of the technology stack - the tools that are used to develop the programming code and user interface. This allows the software company to put all of its effort into developing the business processes and rules needed to run a company.
Software as a service and services-oriented architecture (SOA) are buzzwords that will be heard for the next five years.
SOA treats a service as a basic building block. Each service receives a request and provides a response. This service approach can perform credit checking. The request includes the customer number, order number, and order amount. The service checks credit limit, payment status, open orders, etc., and then returns an answer as to approve or decline the order.
Why is this different than how this task is completed now? The service might be performed on the company's system, or the services might be performed by a different application or by a different company.
With SOA this credit checking service could be achieved by a credit bureau that is able to check and report a company's credit rating, or validate its shipping address directly from the U.S. Postal Service's database. Service providers can make expertise available to multiple companies.
Imagine what happens to the pricing model for software fees when a company can pay for services only as it uses them.
NEW LANGUAGE FOR COMMUNICATINGHave you ever tried to open a file and all you got was gibberish? A new technology called XML can eliminate this problem.
XML is a language that has been in development since the mid-1990s. Originally developed as a more powerful language for developing Web pages, XML has evolved and will become the preferred approach for describing all forms of data.
XML is not a proprietary language, it's not part of a programming language, operating system, or hardware platform. It doesn't belong to just one software vendor. Use of this mechanism for defining data promotes the goal of interoperability by making data files accessible by more than one software application.
XML acceptance has been given a boost by Microsoft's adoption of this format in the new version of Microsoft Office. Other open formats are being required by state governments to eliminate the problems caused by proprietary formats.
All of this new technology is cutting edge - customers who have adopted it have the staff and resources to test and experiment with the technology.
There are few applications that wholly utilize all of these new tools or approaches to building software. It can be expensive to adopt and implement these new approaches. In the wholesale distribution market, expect this technology to be adopted slowly over the next four to six years.
As buyers of technology, companies should be able to discuss these topics with prospective software vendors and develop understanding of these dramatic changes that are on the technology horizon.
Jeff Gusdorf, CPA, Principal, Brown Smith Wallace Consulting Group, can be reached at firstname.lastname@example.org.
Publication date: 03/27/2006