Introduction to CASE Tools
The set of application programs to automate software development lifecycle activities and are used by managers in a project, engineers and analysts to build a software system is called CASE tools and the software development cycle stages can be simplified using several tools such as design, analysis, project management, database management, documentation, etc. and the use of these tools speeds up the project development to obtain desired results.
Components of CASE Tools
There are several components are based on their usage in different stages of the software development life cycle. They are:
- Central Repository: A central repository is required by the tools to serve as a common source of integrated and consistent information. The central place of storage consisting of specifications of product, documents requirement, diagrams and reports and information about the management is a central repository. The central repository also acts as a data dictionary.
- Upper: Planning, analysis, and designing of different stages of the software development life cycle can be performed using upper case.
- Lower: Implementation, testing, and maintenance can be performed using lower case.
- Integrated: All the stages of the software development life cycle right from the gathering of requirements for testing and documentation can be performed using integrated tools.
This that have similar functionality, process activities and based on their capacity of integration with other different tools can be grouped together. This has scope throughout all the stages of the software development life cycle.
Top 13 Types of CASE Tools
There are several types of tools available.
1. Diagram Tools
The components of the system, data flow, control flow among the various components of software and the structure of the system can be represented in graphical form using diagram tools.
Example: The state-of-the-art flowcharts can be created using flow chart maker tool.
2. Process Modeling
The software process model can be created using process modelling tools for software development. The managers can choose a process model using process modelling tools or make modifications depending upon the software product requirements.
Example: EPF composer.
3. Project Management
Planning of the project, estimation of cost and efforts, scheduling of project and planning of resources can be done using project management tools. All the steps in the execution of the project must be strictly followed by the managers in management of software project. The project information can be stored and shared in real time using the tools of project management throughout the organization.
Examples: Creative Pro Office, trac project, Basecamp etc.
4. Documentation Tools
Before the beginning of software process, documentation of the software project must begin. This documentation must cover the all the software development life cycle phases and the completion of the software development phase as well. The documents are generated by the documentation tools for both technical and end users. The in-house professionals in the development team who refer the manual maintained for the system, manual maintained for reference, manual for training, manuals for installation etc. make the technical users. The functioning of the system and how system works is described in the end user documents.
Example: Doxygen, adobe robohelp, DrExplain etc.
Requirements gathering, inconsistency checks, diagrams inaccuracy, redundancies in the data etc. can be checked using analysis.
Example: For requirement analysis are Accept 360, Accompa, casecomplete etc. Total analysis can be done using visible analyst.
The block structure of the software can be designed by the software designers using design tools which are again broken down into smaller modules using techniques of refinement. The detailing of every module and the interconnections between the modules can be done using this.
Example: Animated software design.
7. Configuration Management Tools
Whenever one version of software instance is released, configuration management tools deals with the following:
- Management of revision and version
- Configuration management of baseline
- Change control management
Automatic tracking, management of version, and management of release can be done with the help of configuration management.
Example: Git, Accu Rev etc.
8. Change Control
Change Control are a part of configuration management. The changes that occur in the software after fixing its baseline or after the first release of the software are dealt by change control tools. Tracking the changes, management of files, management of codes etc. can be automated using change control. The change policy of the organization can be enforced by using change control.
The programming environments like integrated development environment , library consisting of in built modules, simulation are all included in programming tools. The development of software product is aided by these and simulation and testing features are included.
Example: Cscope for searching code in C, Eclipse.
The simulated version of the software product to be built is called a prototype in software. The look and feel of the product is provided by the prototype and several aspects of the actual product can be simulated using prototyping. Graphical libraries are contained in the prototyping tools. User interfaces and design that are hardware independent can be created using prototyping. Rapid prototypes can be built using prototyping based on the existing information. The software prototype can be simulated using prototyping tools.
Example: Mockup builder, Serena prototype composer etc.
11. Web Development
The web pages like forms, text, script, graphic etc. can be designed using web development tools. The web page that is being developed can be previewed to see how it looks after completion using web development.
Example: Adobe Edge Inspect, Foundation 3, brackets etc.
12. Quality Assurance
Monitoring the engineering process and methods used for software development to ensure the quality is as per the standards of the organization can be performed using quality assurance tools. The configuration change control and software testing tools come under the category of QA tools.
Example: SoapTest, Jmeter, AppsWatch, etc.
If there are any modifications after the delivery of the software product can be done through software maintenance tools. Techniques for automatically logging, error reporting, generation of error tickets automatically and root cause analysis are used in the maintenance phase of the software development life cycle to help the software organizations.
Example: Bugzilla for tracking defects etc.
This is a guide to CASE Tools. Here we discuss several components, types available in detail. You can also go through our other related articles to learn more –