Find Articles in:
All
Business
Reference
Technology
News
Lifestyle

Business Services Industry

The impact of CASE

Internal Auditor, Dec, 1991 by Douglas A. Menendez

CASE (Computer Aided Software Engineering) is an emerging technology with the potential to be one of the most significant advancements in the soft-ware industry. Making certain that proper controls are designed into application systems is part of an auditor's responsibilities; and grasping the implications of CASE will be essential to reviewing systems development projects in the future.

What is CASE?

In its broadest definition, CASE refers to the automation of all phases of the software development process, such as initiation, analysis, design, construction, acceptance testing, installation, maintenance, and evaluation. Automating the techniques and methodologies used to engineer software has become an entire industry, complete with user groups, conferences, training courses, and supporting products.

CASES is developing now because of the intersection of a set of several basis forces:

* The backlog of required software is large and growing at an accelerated rate, and the supply of professionals is severely limited.

* The design complexities have expanded beyond the traditional manual design and management processes.

* Enabling technologies such as interactive graphics, relational data bases, and, recently, expert systems, have been proven in other computer aided design applications.

* The cost of interactive computing has dropped to the point where workstations can be economically justified.

* Information systems are becoming factors of strategic importance.

CASE tools are available in roughly three categories: analysis/design tools (sometimes called the front-end tools or upper CASE); application generators (the back-end tools or lower CASE); and system test and control tools. Over 150 CASE products are currently available, and more are coming into the market every day. Most products target a single part of the development process and a specific problem or system environment. Some newer analysis/design tools automate the business system planning process to define the requirements for individual application design.

CASE Benefits

The key benefits of CASE are increases in software quality and development productivity. Through explicit design notation schemes, CASE provides a basis for communicating complex requirements and design information among developers and users. The result is better vision and understanding of the business problem and how the system works, and a clearer understanding of the system's design. With their disciplined, highly structured engineering approach and emphasis on rigid design rules, CASE tools verify consistency and completeness at early stages of the development process.

CASE Trends

For some time, many organization have been using computer aided tools for construction, testing, documentation, and system management. A significant part of today's development effort is spent on designing and building code. CASE is beginning to shift the concentration of effort to requirements analysis and specification phases.

This shift should be substantial, and the quality of application systems will almost certainly be improved. Meeting the user's needs and intentions is expected to become a simpler process; and the code and test effort will be reduced, thereby shortening the overall development cycle.

In addition, overall maintenance and inherent costs should be reduced. The typical increase in enhancement effort, seen today as older systems require change, will be reduced because the explicit design notation of CASE will make it easier for maintenance programmers to understand existing systems.

In the long term, CASE promises to:

* Improve productivity.

* Improve software quality and reduce errors.

* Reduce software costs.

* Automate software development and maintenance.

* Automate the generation of code.

* Automate error checking.

* Automate project management.

* Formalize and standardize documentation.

* Increase control of the software development process.

* Promote software reusability.

* Improve software portability.

The CASE Environment

Implementing CASE can be frustrating and the benefits slow to accrue, as many organizations who have implemented CASE will attest. With the current tools and techniques, development productivity is so difficult to measure that a simple cost/payback analysis for expensive CASE tooks is nearly impossible. Similarly, putting a number on the quality improvements brought about by CASE is difficult. While detailed quantitative measurements are not sufficient to justify CASE, industry experts believe that quality and productivity gains are real, and improvements in the metrics will prove it.

Coding

To realize their full potential, CASE tools must automatically generate source or executable code. Today, there is a large gap between the high-level analysis and design done by a human and the code needed by a procedural computer, although a few tools currently on the market do attempt code generation. Some tools generate nearly 100 percent of the code needed for common business problems, such as on-line data entry and update using a data base management system (DBMS). However, manual coding is still required for complex logic, control algorithms and nonstandard interfaces.

 

BNET TalkbackShare your ideas and expertise on this topic

The following tags are supported in BNET comments:
<b></b> <i></i> <u></u> <pre></pre>

Leave a Reply

  1. You are currently a guest | Login?
advertisement
Go
advertisement
  • Click Here
  • Click Here
advertisement

Content provided in partnership with Thompson Gale