Software Engineering – A layered Technology
Software Engineering is a layered technology. Like all other engineering approaches, software engineering also rests on an organizational commitment to quality.
The foundation for software engineering is the process layer. Software engineering process holds the technology layers together and enables rational and timely development of computer software. Process defines a framework for a set of key process areas that must be established for effective delivery of software engineering technology.
Software engineering methods provides the technical knowledge for building software. Methods encompasses a board array of tasks that include requirements analysis, design, program construction, testing and support.
Software engineering methods provides automated or semi-automated support for the process and the methods. When tools are integrated so that information created by one tool can be used by another, a system for support of software development called CASE Tools (Computer Aided Software Engineering Tools).