Computer aided software engineering

Computer Aided Software Engineering (CASE)


What is CASE?
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.

What is CASE Tool?
A CASE tool is a computer-based product aimed at supporting one or more software engineering activities within a software development process.
Computer-Aided Software Engineering tools are those software which are used in any and all phases of developing an information system, including analysis, design and programming. For example, data dictionaries and diagramming tools aid in the analysis and design phases, while application generators speed up the programming phase.
CASE tools provide automated methods for designing and documenting traditional structured programming techniques. The ultimate goal of CASE is to provide a language for describing the overall system that is sufficient to generate all the necessary programs needed.

Components of CASE Tools
CASE Tool are used to support a wide variety of SDLC. CASE Tools are used to help in the project identification and selection, project initiation and planning, and design phacss, and in the implementation and maintenance phases. The components of CASE Tools are categorized into 3 mainly;

  • UpperCASE Tool
    UpperCASE Tool is a Computer-Aided Software Engineering (CASE) software tool that supports the software development activities upstream from implementation. Uppercase tool focus on the analysis phase (but sometimes also the design phase) of the software development lifecycle (diagramming tools, report and form generators, and analysis tools)
  • LowerCASE Tool
    LowerCASE Tool Computer-Aided Software Engineering (CASE) software tool that directly supports the implementation (programming) and integration tasks. LowerCASE tools support database schema generation, program generation, implementation, testing, and configuration management.
  • I CASE
    Tools that integrate both upper and lower CASE, for example making it possible to design a form and build the database to support it at the same time. An automated system development environment that provides numerous tools to create diagrams, forms and reports. It also offers analysis, reporting, and code generation facilities and seamlessly shares and integrates data across and between tools.

Types of CASE Tools
The general types of CASE tools are listed below:

  1. Diagramming tools: enable system process, data and control structures to be represented graphically.
  2. Computer display and report generators: help prototype how systems look and feel. It makes it easier for the systems analyst to identify data requirements and relationship.
  3. Analysis tools: automatically check for importance, inconsistent, or incorrect specifications in diagrams, forms, and reports.
  4. Central repository: enables the integrated storage of specifications, diagrams, reports and project management information.
  5. Documentation Generators: produce technical and user documentation in standard formats.
  6. Code generators: enable the automatic generation of program and data base definition code directly from the design documents, diagrams, forms, and reports.

What is Quality to CASE Tool?
The reason for using case may be very straight forward and practical decision such as being easier to use and makes life better. However from a broader perspective, Quality to using case implies how Case tools have improved the quality of software development. Case tool has improved software development in the following;

  • Improve the quality of the system developed.
  • Increase the speed with which systems are designed and developed.
  • Ease and improve the testing process through the use of automated checking.
  • Improve the integration of development activities via common methodologies.
  • Improve the quality and completeness to documentation.
  • Help standardize the development process.
  • Improve the management of the project.
  • Simplify program maintenance.
  • Promote reusability of modules and documentation.
  • Improve software portability across environments.

What is productivity to CASE Tool? And how it helps Software Development.
Productivity can be said to be the state or quality of producing something. Or the effectiveness of the productive efforts. Therefore productivity to case can be the achievements gained or the effectiveness of using the CASE technology. Productivity has helped in the development of software in the following ways;

  • Provide new systems with shorter development time.
  • Improve the productivity of the systems development process.
  • Improve the quality of the systems development process.
  • Improve worker skills.
  • Improve portability of new systems.
  • Improve the management of the systems development process.

Functions of a CASE Tool

  1. Analysis
    CASE analysis tools automatically check for incomplete, inconsistent, or in correct specifications in diagrams, forms and reports.
  2. Design
    This is where the technical blueprint of the system is created by designing the technical architecture – choosing amongst the architectural designs of telecommunications, hardware and software that will best suit the organization’s system and future needs. Also designing the systems model – graphically creating a model from graphical user interface, screen design, and databases, to placement of objects on screen
  3. Code generation
    CASE Tool has code generators which enable the automatic generation of program and data base definition code directly from the documents, diagrams, forms, and reports.
  4. Documentation
    CASE Tool has documentation generators to produce technical and user documentation in standard forms. Each phase of the SDLC produces documentation. The types of documentation that flow from one face to the next vary depending upon the organization, methodologies employed and type of system being built.

Summary
This write up introduces the use of automated tools to support the systems development process. First, it started by defining CASE and What is CASE tool, the components of CASE tool which include upper CASE, lower CASE and Integrated CASE , each covering different stages of the SDLC. The types of CASE tools were also discussed. Secondly in the contents it stated what quality means to CASE tool, what is productivity to CASE tool and how it helps to the development of software. Function of CASE tools which include: analysis, design, code generation, and documentation.

References

  1. computer aided software engineering

    http://en.wikipedia.org/wiki/Computer-aided_software_engineering

    Date accessed: 11th February, 2007.

  2. Case tool.

    http://www.answers.com/case%20tool

    Date accessed: 11th February, 2007.

  3. what is case

    http://www.sei.cmu.edu/legacy/case/case_whatis.html

    Date accessed: 12th February, 2007.

  4. Upper Case tool.

    http://www.opfro.org/index.html?Components/Producers/Tools/UpperCASETools.html~Contents

    Date accessed: 11th February, 2007.

  5. Lowercase tool

    http://www.opfro.org/index.html?Components/Producers/Tools/LowerCASETools.html~Contents

    Date accessed: 11th February, 2007.

  6. Jefferey A. Hoffer, Joey F. George, and Joseph S. Valacich. Modern Systems Analysis and Design. Fourth edition .2005. New Jersey. Pg 602-617.

One thought on “Computer Aided Software Engineering (CASE)”

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>