Saturday, March 7, 2020

CASE Tools Essays - Product Development, Project Management

CASE Tools Essays - Product Development, Project Management CASE tools 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. Grade Received on Report : 95%