To be able to distinguish various dimensions along which tools can be classified
To be aware of the major trends in (collections of) software tools
To appreciate the role of tools in the software development process
Software development is generally supported by tools, ranging from those that support a single activity to integrated environments supporting a complete development process. In this chapter, we discuss the main classes of software development tools and their role in the development process.
The demand for software grows faster than the increase in software development productivity and available manpower. The result is an ever-increasing shortage of personnel; we are less and less able to satisfy the quest for software. To turn the tide, we must look for techniques that result in significant productivity gains.
One of the most obvious routes to pursue is automation itself. We may use the computer as a tool in the production of software. In the past, all sorts of things were automated, save software development itself. Programmers knew better than that.
We have long been accustomed to employ the computer as a tool for the implementation of software. To this end, programmers have a vast array of tools at their disposal, such as compilers, linkers, and loaders. Also during testing, tools such as test drivers and test harnesses have been used for a long time. The development of tools to support earlier phases of the software life ...