Definition

computer-aided software engineering (CASE)

Computer-aided software engineering (CASE) describes a broad set of labor-saving tools used in software development. They create a framework for managing projects and are intended to help users stay organized and improve productivity. There was more interest in the concept of CASE tools years ago, but less so today, as the tools have morphed into different functions, often in reaction to software developer needs. The concept of CASE also received a heavy dose of criticism after its heyday.

Features of CASE tools

CASE tools, which are sometimes called integrated CASE or I-CASE tools, cover all aspects of the software development lifecycle, which includes writing the code, implementation and maintenance. The tools help in every aspect of development work: managing, modeling, error-checking, version control, designing, diagraming tools, prototyping and other aspects associated with software engineering. Compilers and testing tools are also considered part of the CASE tool set.

Everything is centralized in a CASE repository, which provides an integrated system for project management information, code specifications, test cases and results, design specifications, diagrams and reports. This setup provides a place for teams and managers to keep track of what has been accomplished and what still needs to be done. This information is often displayed graphically so users can quickly find what they need, as well as get a quick overview of the project.

History of CASE tools and criticism

CASE software tools emerged as a significant product category in the 1980s. They were developed in a response to a need to bring order to large software development projects, and vendors claimed they would improve IT productivity and reduce errors.

The U.S. government, a major builder of custom development projects, spent millions on CASE tools. But the government later became a critic of vendor claims about their capabilities. "Little evidence yet exists that CASE tools can improve software quality or productivity," wrote the Government Accountability Office in a 1993 report on the use of CASE tools by the U.S. Defense Department.

About a decade later, in 2002, a research paper also noted problems with CASE deployments. It found evidence of "a conceptual gap between the software engineers who develop CASE tools and the software engineers who use them," according to the paper, "Empirical Study of Software Developers' Experiences," by Ahmed Seffah and Rex B. Kline, computer science researchers at Concordia University.

Uses of CASE tools evolved

CASE tools have evolved to accommodate visual programming, object-oriented programming and Agile software development processes.

Tools that fit in the CASE category are widely available, but this umbrella term or approach doesn't have the relevance it once did in describing software engineering tools. Developers may be more likely to think in terms of specific tool categories, such as visual modeling and simulation software, system architecture tools and diagramming tools such as Microsoft Visio.

The problem that CASE technology attempted to fix remains. The Standish Group, according to its data analysis, says that large software projects, such as enterprise resource planning (ERP) implementations that cost more than $10 million, face a failure rate as high as 41%. The complexity of software development is a continuing challenge.

This was last updated in October 2018

Continue Reading About computer-aided software engineering (CASE)

Dig Deeper on Supply chain and manufacturing

SearchOracle
Data Management
SearchSAP
Business Analytics
Content Management
HRSoftware
Close