DEVELOPING PORTABLE SOFTWAREJames D. Mooney
Lane Department of Computer Science and Electrical Engineering, West Virginia University,PO Box 6109, Morgantown, WV 26506 USASoftware portability
is often cited as desirable, but rarely receives systematic attention in the software development process. With the growing diversity of computing platforms, it is increasingly likely that software of all types may need to migrate to a variety of environments and platforms over its lifetime.
This tutorial is intended to show the reader how to design portability
into software projects, and how to port software when required.
Most software developers agree that portability is a desirable attribute for their software projects. The useful life of an application, for example,
is likely to be extended, and its user base increased, if it can be migrated to various platforms over its lifetime. In spite of the recognized
importance of portability, there is little guidance for the systematic inclusion of portability considerations in the development process.
There is a fairly large body of literature on aspects of portability. A
comprehensive bibliography is provided by Deshpande (1997). However,
most of this literature is based on anecdotes and case studies (e.g. Blackham
(1988), Ross (1994)). A few seminal books and papers on portability appeared in the s (e.g. Brown (1977), Poole (1975), Tanenbaum
(1978)). Several books on software portability were published in the 1980s
(Wallis (1982), Dahlstrand (1984), Henderson (1988), LeCarme (None of these publications
provide a systematic, up-to-date presentation of portability techniques for present-day software. This tutorial offers one approach to reducing this void.
software engineering software portability
Abstract:
Key words: