Digital Essays - Free Term Papers and Free Essays
Search:
     Home         Links         Help         Submit         Request         Privacy         Contact

Title of Paper : CASE tools
Grade Received on Report : 95%

CASE Tools 

What are CASE Tools ?

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 
development process,
including: 

     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-
pretty printers. 

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, 
and detailed records of the requirements, design, implementation, and testing of the system must be kept to 
aid maintainers of the software. In addition, multiple versions of all artifacts produced during a project 
must be maintained to facilitate group development of software systems. 

•A group activity involving interaction among a number of people during each stage of its life. Groups of 
people must be able to cooperate, in a controlled manner, and have consistent views of the state of the 
project. 




 CASE Tools  Environment:
	The first generation of CASE tool developers concentrated to a large extent on the automation of 
isolated tasks such as document production, version control of source code, and design method support. 
While successes have been achieved in supporting such specific tasks, the need for these `islands of 
automation' to be connected has been clearly recognized by many first generation CASE tool users. For 
example, a typical development scenario requires that designs be closely related to their resultant source 
code, that they be consistently described in a set of documentation, and that all of these artifacts be under 
centralized version control. The tools that support the individual tasks of design, coding, documentation, 
and version control must be integrated if they are to support this kind of scenario effectively. 


A CASE environment is a collection of CASE tools and other components together with an integration 
approach that supports most or all of the interactions that occur among the environment components, and 
between the users of the environment and the environment itself.




    © 1998-2004 Digital Essays. All Rights Reserved.