James D. Mooney’s research while affiliated with West Virginia University and other places

What is this page?


This page lists works of an author who doesn't have a ResearchGate profile or hasn't added the works to their profile yet. It is automatically generated from public (personal) data to further our legitimate goal of comprehensive and accurate scientific recordkeeping. If you are this author and want this page removed, please let us know.

Publications (12)


Developing Portable Software
  • Article

January 2004

·

238 Reads

·

20 Citations

James D. Mooney

Software 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. Full Text at Springer, may require registration or fee


Portability and Reusability: Common Issues and Differences.

January 1995

·

174 Reads

·

16 Citations

Portability is clearly a form of reusability, but the problem of enhancing and supporting portability raises problems which are not often addressed by reuse research. Portability is typically concerned with the reuse of complete applications on new platforms, while reuse research has typically concentrated on building and maintaining collections of reusable components or similar artifacts, and reusing them effectively in new applications. This paper reviews and compares current issues in reuse research and portability research. Although the dominant problems for the two research domains are distinct, the goal is to identify some common areas where both domains may benefit from continuing research. Several common areas are identified. These include classification, specification and measurement, validation and verification, software process issues, and management issues. The problem of integrating portability into the software development process is briefly considered. Benefits may be anticipated from integration of both portability and reuse. It appears, however, that integration of portability may be more easily accomplished, yet harder to justify to management.


A course in software portability

March 1992

·

42 Reads

·

2 Citations

ACM SIGCSE Bulletin

This paper describes an experimental course on the topic of software portability, and initial experience in teaching this course. With the continuing proliferation of both applications and computing environments, the need for portability is being increasingly recognized. A large proportion of the software now being developed will eventually need to be ported to new environments. Yet this topic is missing from most computer science and software engineering curricula. The course described here was designed to explore practical issues in the development of portable software. Lectures and discussions on portability topics are combined with the ongoing development of a simple software project designed to expose a variety of portability problems. During the course the project is ported to several environments and redesigned to improve its portability. This course has been taught experimentally with encouraging results. Student assignments have used novel and effective methods to overcome portability barriers. Feedback from student indicates that they have become more aware of portability issues to be considered in software development, and have gained experience with system interface issues in several programming environments.


Strategies for Supporting Application Portability

December 1990

·

31 Reads

·

36 Citations

Computer

A range of system-design strategies that can be used to support portability and the ways in which these strategies have been employed by past and present systems are examined. The strategies are grouped into three categories: (1) strategies that maintain identical execution-time interfaces by porting system components that form the interface, (2) strategies that maintain identical or nearly identical interfaces for different system components by adhering to appropriate standards, and (3) strategies that assist in the adaptation of programs to a target environment. The principal emphasis is on operating-system issues. User interface portability, dynamic portability in a network, and international exchange of programs are briefly considered.< >


Pitfalls on the Road to Portability

January 1990

·

6 Reads

This paper considers some problems which may arise in the quest for software portability, especially those relating to the system interface, and evaluates the CTRON specification to determine if these problems may be avoided. The literature on portability is reviewed, especially case studies describing porting experience. The portability-related tasks performed by several classes of software developers and implementors are examined. These considerations lead to identification of four potential problem areas: subsets, specification level, range and performance guarantees, and language bindings. The CTRON specification is then examined in relation to these problem areas, and several recommendations are stated.



Perspectives on CTRON

January 1988

·

6 Reads

Unlike other TRON software components, CTRON is designed to run on various CPU architectures, including existing, large-scale computers as well as microprocessors. It is expected that various implementations of CTRON should provide common support for suitable applications in spite of differences in software and hardware architecture. Thus CTRON may be viewed as a standard for an interface between operating systems and applications, and between operating systems and CPU architectures. Such a standard must be robust, to be useable in many different environments. It also should be in harmony with other standards that may exist for similar or related elements of the distributed system which TRON envisions. This paper reviews some principal interfaces that exist in a typical computing system and significant formal and de facto standards for these interfaces, and examines CTRON’s role among these standards. The review is based on experience in the development of the IEEE MOSI standard, which has many similarities with CTRON, and on an ongoing study of CTRON itself. Based on this review, some suggestions are offered for the fine tuning and evolution of CTRON, which may help the specification to best fulfill its intended purposes.


Lessons from the MOSI project

December 1986

·

9 Reads

·

4 Citations

Computer Standards & Interfaces

Some lessons are derived from experience in the development of a software interface standard, IEEE Trial Use Std-855 for Microprocessor Operating System Interfaces (MOSI). This experience has led to the formulation of some useful guidelines which were not necessarily evident from the start. The major observation concerns the importance of careful consideration of the objectives, proper scope, existing models, and expected usage, of the planned standard. This process helps in making the right decisions on what should be standardized. A number of specific guidelines based on these principles are discussed.


MFS: a modular text formatting system

June 1982

·

11 Reads

This paper presents the design goals and architecture of the Modular Formatting System, currently being developed at West Virginia University. MFS applies to formatters the principles of separation of function used in many successful program systems. A small central kernel forms the basis for a family of formatting systems, tailored to specific applications and environments. MFS is intended to support a wide spectrum of applications drawn from the experience of commercial composition, word processing, and research systems. It does not rely on any specialized terminal or input source characteristics. Output devices from line printers through high resolution typesetters are handled in a uniform manner. Users can exercise detailed control over document appearance, or work exclusively with styles predefined through macros.


USIM: a user interface manager

January 1982

·

9 Reads

·

1 Citation

ACM SIGOPS Operating Systems Review

This paper proposes a control mechanism for the user interface. This mechanism provides two principal services of frequent importance in interactive systems: management of alternate file input, and log files. The mechanism is independent of the command language interpreter and thus its services are available to all programs.


Citations (5)


... A program is portable if and to the degree that the cost of porting is less than the cost of redevelopment. The principal role of metrics in relation to portability issues is to help characterize the costs and benefits of incorporating portability in a software design, or of porting an existing software unit [51]. ...

Reference:

NFR Types and its definitions
Issues in the specification and measurement of software portability
  • Citing Article

... Along with performance, behavior is another advantage that C++ has over interpreted languages. The purpose of portability is not necessarily to make an application look and act exactly the same on every platform (Mooney, 1992). Due to conventions used by applications written for a specific device, a program written in a native language would have an advantage over a program meant to be universal. ...

A course in software portability
  • Citing Conference Paper
  • March 1992

ACM SIGCSE Bulletin

... Practitioners in this study perceived the Portability of code snippets in light of Adaptability -the degree to which a code snippet can effectively and efficiently be adapted for different or evolving hardware, software or other operational or usage environments. Portability is critical because of the variety of common runtime platforms and the requirement for developing genuinely agile and flexible systems that do not lock in their users (Mooney, 1995). However, we did not find any study on code snippet quality investigating this area. ...

Portability and Reusability: Common Issues and Differences.
  • Citing Conference Paper
  • January 1995

... This result jived with the study of Takeda, Wolton, and Nicole (1999) whose findings denote that the system's portability is achieved when each function of the system is machine-independent so that it can be allowed to run on different machines and versions. Another study by Mooney (2004) supports the findings by its presentation of two major phases of portingadaptation and transportation. The ability of the system to be used on any platform jived with adaptation and the ability to make the system run on different platforms such as laptops and mobile phones jived with transportation. ...

Developing Portable Software
  • Citing Article
  • January 2004