Computer Aided Software Engineering (CASE) tools provide automated support for many of the systems
analysis and design methods available to the information systems developer.
CASE tools provide an environment which automates many time-consuming aspects of the systems
drawing and redrawing diagrams
cross checking usage of elements across the system model
generation of system documentation
generation of code structures and database schemas
What are the benefits of CASE tools?
Less effort spent on document administration, such as redrafting diagrams increased quality from
extensive cross checking provided in CASE tools subsequent potential for reduction in end-to-end system
development time automated system documentation generation .
History on CASE Tools
Since the early days of writing software, there has been an awareness of the need for automated
tools to help the software developer. Initially the concentration was on program support tools such as
translators, compilers, assemblers, macro processors, and linkers and loaders. However, as computers
became more powerful and the software that ran on them grew larger and more complex, the range of
support tools began to expand. In particular, the use of interactive time-sharing systems for software
development encouraged the development of program editors, debuggers, code analyzers, and program-
As computers became more reliable and in greater use, the need for a broader notion of software
development became apparent. Software development came to be viewed as:
?A large-scale activity involving significant effort to establish requirements, design an appropriate solution,
implement that solution, test the solution's correctness, and document the functionality of the final system.
?A long-term process producing software that requires enhancement through out its lifetime. The
implications of this are that the structure of the software must enable new functionality to be added easily,