Concepts and Tools for the Software Life Cycle
暂无分享,去创建一个
Abstract The life cycle process for large software-intensive systems is an extremely intricate and complex process involving many people performing amid a very large base of evolving computer programs, documentation and data. To be successful, the process must be well conceived, planned and conducted; however, the nature of scientific and other high-technology projects involving large-scale software is such that conceptualization, planning and implementation to the degree of detail required is so laborintensive and unmotivating as to be counter-productive and seldom cost-effective. The tools, techniques and aids needed to engineer, manage and administrate a large software-intensive task are themselves parts of a large software base, and are incurred only at great expense. This paper focuses on the needs of the software life cycle in terms of supporting tools and methodologies. The concept of a distributed network for engineering, management and administrative functions for engineering, management and administrative functions is outlined, and the key characteristics of localized subnets in high-communications-traffic areas of software activity are discussed. A formal, deliberate, structured, systems-engineered approach toward the construction of uniform, coordinated tools is proposed as a means to reduce development and maintenance costs, foster creativity, enhance reliability, promote standardization and sustain human motivation.
[1] Brian W. Kernighan,et al. Software tools in Pascal , 1976 .
[2] K. H. Kim,et al. A Look at Japan's Development of Software Engineering Technology , 1983, Computer.
[3] Barry W. Boehm,et al. A Software Development Environment for Improving Productivity , 1984, Computer.
[4] Carl Sagan,et al. Machine Intelligence and Robotics Report of the NASA Study Group , 1979 .
[5] Marvin V. Zelkowitz,et al. Software Engineering Practices in the US and Japan , 1984, Computer.