HyperWeb: a framework for hypermedia-based environments
- James C. Ferrans,
- David W. Hurst,
- Michael A. Sennett,
- Burton M. Covnot,
- Wenguang Ji,
- Peter Kajka,
- Wei Ouyang
Software productivity and quality will increase as we improve our model of software and develop tools to support that model. Development environments must take into account that software is more than source; that it is more than text; and that it forms ...
Supporting collaborative software development with ConversationBuilder
In this paper we discuss the architecture of the Conversation Builder, an environment for collaborative work, and show how our framework provides a powerful basis for support of collaborative software development activities.
Supporting cooperation in the Marvel process-centered SDE
Large scale software development processes often require cooperation among multiple teams of developers. To support such processes, SDEs must allow developers to interleave their access to the various components of the projects. This interleaving can ...
obTIOS: a CAx-framework service for building concurrent engineering environments
An open integrated CAx-framework supplies services to build derived CAx-environments (e.g. for concurrent Engineering (CE), VLSI-design, Software Engineering, etc.) with specialized, integrated in-house or foreign tools. Such integrated tool uses ...
An empirical investigation of menu design in language-based editors
In program visualization some form of graphics is used to represent some aspect of a program. However, graphics are necessarily expensive with respect to “screen real estate”. Alternatives, therefore, may be required for presentation of certain concepts ...
Consistency in software system development: framework, model, techniques & tools
An important aspect in the software development process is the consistency between various parts of the software system being designed and implemented. During the development of a system we are aware of the consistency problems and we usually solve ...
A transformational approach to generating application-specific environments
Current software development environments tend to lie at opposite ends of a spectrum: at one extreme are specialized application generators; at the other are general-purpose programming environments. The former provide strong support for system ...
Operation-based merging
Existing approaches for merging the results of parallel development activities are limited. These approaches can be characterised as state-based: only the initial and final states are considered. This paper introduces operation-based merging, which uses ...
A reverse engineering environment based on spatial and visual software interconnection models
Reverse engineering is the process of extracting system abstractions and design information out of existing software systems. This information can then be used for subsequent development, maintenance, re-engineering, or reuse purposes. This process ...
Integrating the heterogeneous control properties of software modules
A concurrent software application, whether running on a single machine or distributed across multiple machines, is composed of tasks that interact (communicate and sychronize) in order to achieve some goal. Developing such concurrent programs so they ...
Developing and integrating ProDAG in the Arcadia environment
ProDAG is an analysis toolset that provides an application programmatic interface for program dependence analysis. Program dependences are syntactic relationships between program statements. The ProDAG interface provides a uniform set of operations for ...
Real theorem provers deserve real user-interfaces
This paper explains how to add a modern user interface to existing theorem provers, using principles and tools designed for programming environments.
The Proteus presentation system
Software development environments can increase user productivity by presenting information in more useful ways. This paper describes Proteus, the presentation system of Ensemble, a software development environment that supports a wide variety of ...
An analysis technique for examining integration in a project support environment
While many Computer-Aided Software Engineering (CASE) tool vendors claim to provide open, integrated environments for software development, in practice such claims must be examined very carefully to understand what is meant. One of the problems faced in ...
An architecture for multi-user software development environments
We present an architecture for multi-user software development environments, covering general, process-centered and rule-based MUSDEs. Our architecture is founded on componentization, with particular concern for the capability to replace the ...
The ProcessWall: a process state server approach to process programming
The ProcessWall is a process state server providing storage for process states plus operations for defining and manipulating the structure of those states. It separates the state of a software process from any program for constructing that state. ...
Issues encountered in building a flexible software development environment: lessons from the Arcadia project
This paper presents some of the more significant technical lessons that the Arcadia project has learned about developing effective software development environments. The principal components of the Arcadia-1 architecture are capabilities for process ...