Page 1 of 1

Computer Aided Software Engineering CASE

PostPosted: Fri Dec 06, 2013 2:27 pm
by Prasanth

Computer Aided Software Engineering is a technique to help with one or more phases of the software development cycle which involves analysis, design, implementation and maintenance of software. CASE is the use of computer-based support in the software development process. They provide all kinds of computer-based support for any of the managerial, administrative, or technical aspects of any part of a software project. The CASE approach to building and maintaining systems involves software tools and training for the developers who will use them.

CASE provides the engineer with the ability to automate the manual activities and to improve engineering insight. Also CASE tools ensure that quality is designed before the product is built. Although benefits can be derived from individual CASE tools that address specific software engineering activities, the real power of CASE can be achieved only through integration.


Various attempts have been made to make finer-grained distinctions between different classes of CASE tools along a number of dimensions. The most common distinctions are:
• Tools that are interactive in nature (such as a design method support tool) and those that are not (such as a compiler). The former class sometimes called CASE tools, while the latter class called development tools.

• Tools that support activities early in the life cycle of a soft ware project (such as requirements and design support tools) and those that are used later in the life cycle (such as compilers and test support tools). The former class sometimes called front-end CASE tools, and the latter are called back-end CASE tools.

• Tools that are specific to a particular life-cycle step or domain (such as a requirements tool or a coding tool) and those that are common across a number of life-cycle steps or domains (such as a documentation tool or a configuration management tool). The former class sometimes called vertical CASE tools, while the latter class are called horizontal CASE tools.

But these distinctions are problematic. It is difficult to give a simple and consistent definition of `interactive' that is meaningful. For example, some classes of compilers prompt the user for information. In the second and third cases, there is an assumption about the methods and approaches in use (e.g., object-oriented software development, or prototype-oriented development), hence broadly a CASE tool is a computer-based product aimed at supporting one or more software engineering activities within a software development process.

CASE tools can also be classified by function in terms of
• Their role as instruments for managers or technical people
• Their use in various steps of the software development process
• The environment architecture i.e. hardware and software that supports the CASE tools
• Origin
• Cost