Abstract
This paper describes research associated with the development and evaluation of Odin-an environment integration system based on the idea that tools should be integrated around a centralized store of persistent software objects. The paper describes this idea in detail and then presents the Odin architecture, which features such notions as the typing of software objects, composing tools out of modular tool fragments, optimizing the storage and rederivation of software objects, and isolating tool interconnectivity information in a single centralized object. The paper then describes some projects that have used Odin to integrate tools on a large scale. Finally, it discusses the significance of this work and the conclusions that can be drawn about superior software environment architectures.
- 1 BOEHM, B. W., AND STANDISH, T. Software technology in the 1990s: Using an evolutionary paradigm. Computer 16, 11 (Nov. 1983).Google Scholar
- 2 BUXTON, J. N., AND STENNING, V. Requirements for Ada programming support environments. Stoneman, DOD, Feb. 1980.Google Scholar
- 3 CLEMM, G.U. Odin--An extensible software environment. Univ. of Colorado, Dept. of Computer Science Tech. Rep. CU-CS-262-84, 1984.Google Scholar
- 4 CLEMM, G.M. The Odin system--An object manager for extensible software environments. Ph.D. dissertation, Dept. of Computer Science, Univ. of Colorado at Boulder, CU-CS-314-86, 1986. Google Scholar
- 5 DEREMER, F., AND KRON, $. Programming-in-the-large versus programming-in-the-small. IEEE Trans. Softw. Eng. SE-2, 2 (June 1976), 80-86.Google Scholar
- 6 FELDMAN, S.I. Make--A program for maintaining computer programs. Softw. Pract. Exper. 9 (1979), 255-265.Google Scholar
- 7 KASTENS, U., HUTT, B., AND ZIMMERMAN, E. GAG: A Practical Compiler Generator. Springer Verlag, New York, 1982.Google Scholar
- 8 KERNIGHAN, B. W., AND RITCH1E, D. M. The C Programming Language. Prentice Hall, Englewood Cliffs, N.J., 1978. Google Scholar
- 9 LAMPSON, B., AND SCHMIDT, E. Practical use of a polymorphic applicative language. In Proceedings of the lOth POPL Conference, 1983. Google Scholar
- 10 LAMPSON, B., AND SCHMIDT, E. Organizing software in a distributed environment. SIGPLAN Not. 18 (June 1983).Google Scholar
- 11 LEBLANG, D. B., AND CHASE, R. P. Computer aided software engineering in a distributed workstation environment. In SIGPLAN/SIGSOFT Symposium on Practical Software Development Environments (Pittsburgh, Pa., April 1984). ACM, New York, 1984. Google Scholar
- 12 LEBLANG, D. B., AND MCLEAN, G. D. Configuration management for large scale software development efforts. In Proceedings of the Workshop on Software Engineering for Programmingin-the-Large (Harwichport, Mass., June 1985).Google Scholar
- 13 LEBLANG, D. B., CHASE, R. P., AND MCLEAN, G. D. The DOMAIN software engineering environment for large scale software development efforts. In Proceedings of the IEEE Conference on Workstations (San Jose, Calif., Nov. 1985). IEEE, New York, 1985.Google Scholar
- 14 OLENDER, K., AND OSTERWEIL, L.J. Specification and static evaluation of sequencing constraints in software. In Workshop on Software Testing (Banff, Canada, July 1986), pp. 14-22, and Univ. of Colorado Dept. of Computer Science Tech. Rep. CU-CS-334-86.Google Scholar
- 15 OSTERWE1L, L.J. Software environment research directions for the next five years. Computer 14 (April 1981), 35-43.Google Scholar
- 16 OSTERWEIL, L. J. Toolpack--An experimental software development environment research project. IEEE Trans. Softw. Eng. SE-9 (Nov. 1983), 673-685.Google Scholar
- 17 RIDDLE, W.E. The evolutionary approach to building the Joseph software development environment. In Proceedings IEEE Softfair--Software Development Tools, Techniques, and Alternatives (Crystal City, Va., July 1983). IEEE, New York, 1983, pp. 317-325.Google Scholar
- 18 SCHMIDT, E. E. Controlling large software development in a distributed environment. Ph.D. dissertation, Computer Science Div., EECS Dept., Univ. of California, Berkeley, Dec. 1982. Google Scholar
Index Terms
- A mechanism for environment integration
Recommendations
Reconciling environment integration and software evolution
Common software design approaches complicate both tool integration and software evolution when applied in the development of integrated environments. We illustrate this by tracing the evolution of three different designs for a simple integrated ...
An analysis technique for examining integration in a project support environment
SDE 5: Proceedings of the fifth ACM SIGSOFT symposium on Software development environmentsWhile 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 ...
Comments