Register | Login
:: Select Business Solutions - Application Development Tools

What is Computer Aided Software Engineering? (CASE)

E-mail

Computer-aided software engineering (CASE) is the use of software tools to assist in the development and maintenance of software. Tools used to assist in this way are known as CASE Tools.

All aspects of the software development lifecycle can be supported by software tools, and so the use of tools from across the spectrum can, arguably, be described as CASE; from project management software through tools for business and functional analysis, system design, code storage, compilers, translation tools, test software, and so on.

However, it is the tools that are concerned with analysis and design, and with using design information to create parts (or all) of the software product, that are most frequently thought of as CASE tools. Such tools arose out of developments such as Jackson Structured Programming and the software modelling techniques promoted by researchers such as Ed Yourdon, Chris Gane and Trish Sarson (see structured programming, SSADM). In this narrower range, CASE applied, for instance, to a database software product, might normally involve:

  • Modeling business / real world processes and data flow
  • Development of data models in the form of entity-relationship diagrams
  • Development of process and function descriptions
  • Production of database creation SQL and stored procedures

The term CASE was originally coined in the early 1980s by the Nastec Corporation. They brought out a number of integrated graphics and text editors, which were the first microprocessor based tools to logically and semantically evaluate software and system design diagrams and build a data dictionary. This was later expanded to support analysis of a wide range of structured analysis and design methodologies, notably Yourdon/Demarco SA/SD and Warnier-Orr.

Most of the early, graphically focused CASE tools specialized in either process (program or module) design, or data design.

The early CASE tools focused primarily on creating and analyzing graphical software design representations. The original concepts were to be the bridge between the system development methodology and the project management system.

CASE tools were at their peak in the early 1990s. By now, tools were full lifecycle and included Upper CASE and Lower CASE (see below).

With the decline of the mainframe, the big CASE tools died off, opening the market for the mainstream CASE tools of today.

Some typical CASE tools are:

  • Code generation tools
  • UML editors and the like
  • Refactoring tools
  • QVT or Model transformation tools
  • Configuration management tools including revision control

CASE tools do not only output code. They also generate other output typical of various systems analysis and design methodologies such as SSADM. e.g.

  • Database schema
  • Data Flow Diagrams (DFDs)
  • Entity Relationship Diagrams (ERDs)
  • Program specifications
  • User documentation

Sometimes CASE tools are separated in two groups:

  • Upper CASE
    • Tools for the analysis and design phase of the software development lifecycle (diagramming tools, report and form generators, analysis tools)
  • Lower CASE
    • Tools to support data base schema generation, program generation, implementation, testing, configuration management
 

agilemodeling

cbdi2

cmmi

dsdm

mda_thumbnail

omg_thumbnail

uml

References

Information is taken in whole, or in part, from Wikipedia, The Free Encyclopedia - which is a fully independent knowledge resource that has no affiliation with Select Business Solutions. As a result, Select Business Solutions takes no responsibility for the accuracy. If you believe the information is wrong, please contact us and we will investigate.

Application Development Tools Blog
  • Do you know your business processes well enough to outsource them? 20 Mar 2009 | 11:44 am

    If you read the Daily Telegraph you might have come across the Media  Planet supplement “Sourcing” last Tuesday (March 17th); it had the strap line “Utilising sourcing as part of your business strategy”. Of course we are all pretty familiar with the now standard model of outsourcing, or off-shoring software development. There are numerous destinations for [...]

  • Easing the ‘complexity’ of BPMN 2 Mar 2009 | 3:30 am

    As a consultant with a business and systems modeling tool vendor, the conversations I have involving business analysts invariably seem to turn to the perceived complexity of the business process modeling notation (BPMN). It’s a topic which has had much coverage in the last year, following the publication of a research paper on BPMN usage by [...]

  • Why? Identifying the purpose of business systems 27 Feb 2009 | 8:09 am

    Those familiar with the Zachman framework will recognise the need for identifying the ‘Why?’, and certainly I’ve come across many projects where without a clear indicator of the business reasoning behind development of new systems, those systems have, not surprisingly, failed to fully meet the business needs. Identifying the business motivation behind a project is perhaps [...]

  • One man’s goal is another man’s objective 25 Feb 2009 | 7:37 am

    In my travels in recent weeks, talking to clients about the business motivation model, I’ve been struck by the number of folks who have welcomed the BMM simply because it provides a definition and context for business planning terms like goal and objective. While many have tried to communicate their business plan to a wider [...]