Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Foundations for the Arcadia environment architecture
Taylor R., Belz F., Clarke L., Osterweil L., Selby R., Wileden J., Wolf A., Young M. ACM SIGPLAN Notices24 (2):1-13,1989.Type:Article
Date Reviewed: May 1 1990

This paper presents the Arcadia environment research project, which describes research funded by NSF and ARPA. It is a consortium of workers from three universities, AT&T Bell Laboratories, and TRW.

The Arcadia consortium investigates the integrated software engineering environment, the purpose of which is to give support to users for their development and maintenance activities. Such an integrated environment does not restrict support to programming.

This project addresses a broad range of software environment issues, such as the environment architecture for organizing large collections of tools and for facilitating their interactions with users and each other. It also describes the tools used for testing and analyzing concurrent and sequential software.

The paper clearly explains the difficulties of defining a fully integrated environment and describes the trade-offs between flexibility, extensibility, ergonomy, and integration of the environment.

The Arcadia environment architecture is composed of three parts: the User Interface Management System, the Process Program Interpreter, and the Object Management System.

The paper uses the concept of process programming. Process programs, written in a process programming language (PPL), describe software processes that are used in developing or maintaining software. In a PPL, tools are operators and objects--created by tools or users--are operands. Flexibility is obtained by modifying process programs, and extensibility is maintained by writing new programs. Process programming is one of the key concepts in the Arcadia environment. The paper gives some details on the requirements for a process programming language (such as a powerful typing mechanism) and compares these with previous or existing so-called process programming languages. The description of the Arcadia programming research is detailed and gives some hints about the problems to be solved.

“The Object Management System will be a major component of the Arcadia environment infrastructure. It will be responsible for managing two distinct categories of object: the components of the software products being produced by users of the environment and the tools and information structures that constitute the environment itself.” The Arcadia project is a meaningful improvement over previous works on object management. The Object Management System is the fundamental mechanism on which the data management capabilities of a process programming language can be implemented. The Arcadia project draws the most out of the process programming concept. The main issues that an object management system should tackle are described, namely types, relationships, persistence, and concurrency and distribution. For a research phase, the Object Management System is extensively presented.

The description of the User Interface Management System highlights three main characteristics: uniformity or consistency, direct manipulation, and permissiveness. The User Interface Management System for the software engineering environment addresses those problems that have already been solved with advanced user interfaces. Arcadia user interface management research deals with separating functionality and interaction and managing the display, input model, and different approaches to uniformity.

This well-written paper is of interest to those concerned about the integrated software engineering environment. It is also of interest to researchers in the field. But parts of the paper read more as a research proposal than a paper reporting important results of experiments.

The bibliography misses a reference to the Portable Common Tool Environment (PCTE), a dedicated software engineering environment known since the mid-1980s.

Reviewer:  A. Decroix Review #: CR113827
Bookmark and Share
 
Programming Environments (D.2.6 )
 
 
Control Design Styles (B.1.1 )
 
 
Design Tools and Techniques (D.2.2 )
 
Would you recommend this review?
yes
no
Other reviews under "Programming Environments": Date
A prototyping environment for differential equations
Boubez T., Froncioni A., Peskin R. ACM Transactions on Mathematical Software 18(1): 1-10, 1992. Type: Article
Mar 1 1993
PICT: an interactive graphical programming environment
Gilnert E., Tanimoto S. Computer 17(11): 7-25, 1984. Type: Article
Jul 1 1985
Towards monolingual programming environments
Heering J. (ed), Klint P. (ed) ACM Transactions on Programming Languages and Systems 7(2): 183-213, 1985. Type: Article
Nov 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy