Top 5 Types of Computer-Aided Software Engineering (CASE) Tools
Computer-aided Software Engineering (CASE) can be described as applying computer-aided tools and techniques for software development. CASE helps to create the highest quality and error-free software. CASE provides a checked-pointed and systematic approach that assists testers, designers, developers, and managers identify the key milestones when developing.
CASE can also serve by providing a repository for documents related to projects, such as the business plan, specifications, and design specifications. One of the main benefits of CASE is the production of the final product that will make it more likely to satisfy the requirements of the natural world since it guarantees that customers are included in the entire process.
CASE demonstrates a variety of productivity tools utilized in software development. It creates a framework to assist in managing projects and can be beneficial in improving productivity. However, it is less prevalent in the present since CASE tools have evolved into various functions, usually due to the needs of software developers. Also met, the CASE concept with a lot of criticism following its launch.
CASE Tools:
The principle behind tools for CASE lies in the fact that the software can assist in analyzing and creating systems to improve quality and deliver better results. Through the 1990s, incorporated the CASE tool was into the software lexicon, and major companies like IBM utilized these types of tools to create software.
Various tools are integrated into CASE and are referred to as CASE tools. These tools can help support various phases and milestones of software development.
Are CASE Tools being used?
Several previous studies have found that CASE tools are not widely used. In a survey of 53 businesses, we found that 39 (73.5 percent) were not using CASE. Of the 14 companies that had tried CASE, five decided to stop using the software. The people in these 14 companies believed that CASE tools helped improve the quality of documentation and analysis. It also led to systems that were more simple to maintain and test. But, they also found CASE tools to be time- and effort demanding. In a separate cross-organization survey, just 24% of organizations employed CASE tools. A follow-up study of 13 managers who had used CASE tools two years ago reported that they continued to use CASE usage could only be proven by four managers. The reasons behind abandonment were the cost, the lack of quantifiable changes, and unrealistic expectations. When looking at organizations that use CASE tools, we discovered that many of their system designers weren't using CASE tools.
Common attributes of the CASE tool:
"CASE" is a broad term. Computer-Aided Software Engineering (CASE) includes various products that have diverse functions. Defining the subject matter being discussed is essential when the term "CASE" is employed. Most classifications for CASE tools begin by determining the tools' classification as upper CASE, lower, or an integrated CASE [33. A tool that is an upper CASE (front the CASE's front) offers support for the initial stages of the system development life cycle, including analyzing requirements and designing. A lower-level CASE program (back the CASE) offers support for more advanced life cycle stages like code generation and testing. Integrated CASE tools can handle both the initial and the later phases. Additional classifications typically list what features the tool provides, for example, Data flow diagrams and entity relations models for data, etc. That is a different CASE-specific model that aids in organizing CASE tools.
Types of CASE Tools:
1. Diagramming Tools:
It aids in representing diagrams and graphs of data and system processes. It depicts system components and control flow and data flow between different software components and the system's structure in a graphic format.
For instance, Flow Chart Maker tool for creating state-of-the-art flowcharts.
2. Computer Display and Report Generators:
It assists in understanding information requirements and the connections in the data.
3. Analysis Tools:
It focuses on inconsistencies, incorrect specifications that are part of the diagram, and the data flow. It assists in collecting specifications and immediately identifying any flaws or inaccuracy within the diagrams, data redundancies, or incorrectly omitted details.
For instance,(i) Accept 360, Accompa, and CaseComplete for requirement analysis.
(ii) Visible Analyst for complete analysis.
4. Central Repository:
It is the central place to store documents, reports, and data diagrams. Documents related to managing projects.
5. Documentation Generators:
It aids in creating technical and user documents that conform to the standards. It produces documents for the technical user as well as end-users.
For example, Doxygen, DrExplain, and Adobe RoboHelp for documentation.
Benefits of the CASE method:
A particular focus is put on design and testing. The cost of servicing a product during its anticipated lifetime is considerably less.
The quality of the product gets improved by a systematic approach implemented during development.
The chances of meeting the requirements of real-world situations are higher and less complicated with a computer-aided software engineering method.
* CASE indirectly gives a business advantage by assisting with developing top-quality products.
The disadvantages of the CASE method:
* Cost: Utilizing the CASE tools is prohibitive. Most companies involved in the development of software at a low level don't invest in CASE of tools since they believe in the benefits of CASE when it comes to creating larger systems.
• Learning curve: in many instances, a programmer's productivity could decrease during the beginning implementation phase, as users require time to understand the new technology. Numerous consultants provide workshops and services on-site, which can help speed up the learning curve and develop and use CASE tools.
The Tool Mix is essential to create an appropriate selection tool mix that encourages cost-effective CASE integration and data integration on all platforms. Vitally crucial.
CASE Tools to come in the future:
Horizontal and Vertical Division of AO-groups:
The entire system is comprised of a variety of active objects. Active objects (AO) are divided into different groups. Active objects belonging to the same category are responsible for the same tasks. For instance, active objects support the SA/SD methodology and the object-oriented method. That is known as horizontal division. All AO groups are organized according to hierarchy. For instance, the top-level is for the users. The second level group is for domains. The group on the third level is for knowledge development, the group on the fourth level is dedicated to tools; and the group at the fifth level is for technical support. That is known as "vertical" division. Each group is a delegate who is the local server for the group. The communication between different groups is done through delegates at the appropriate levels.
Knowledge Representation and Processing:
The system can maintain many layers of knowledge and is capable of auto-learning and self-improvement. Notably, it can reason on information that is not complete. If it is not, the system won't be able to figure out users' intentions, and the relationship between the user and the tool won't be able to continue in certain instances. Each node could be tied to some set of rules. Mixed knowledge representations are a good option for reducing the size of the network and consequently increasing the speed of learning. In a neural network, the output is always derived out of any input if that input isn't complete. Self-learning is a normal and natural process that occurs in a neural.
Visual Integration of CASE Tools:
Although a shell for CASE is highly useful in the creation and integration with CASE tools, we feel it's not easy and intuitive enough for CASE users. We recommend providing CASE users with more logical ways to describe the integration of the CASE tools. A diagramming tool similar to the DFD diagramming tool could benefit this. Pipe-filters, event triggers, and models for message-passing are great ways to facilitate integration between CASE instruments.
Work Flow Model:
The essence of software project development is a collaborative activity. A CASE tool must be able to support this aspect. In this regard, it is crucial to represent the process of work as well as the coordination and collaboration between team members. We hope to present all of this information using the flow model. There are currently various ways to describe an efficient workflow for collaborative software team-based development. However, they aren't flexible enough to change dynamically (on the fly). We recommend decentralizing processes, such as "ViewPoint" (E), which can be visualized visually and deal with the possibility of variations during enactment.
Java Technologies:
We're confident that the next generation of CASE tools will function in distributed and heterogeneous environments. JAVA is a standard that allows open access to applications running across multiple computing platforms. JAVA is supported by the OMG, which includes significant computer makers like Digital, Sun, HP, IBM, and software companies like Microsoft, Sunsoft, and Object Design among its members. JAVA could be a normative standard soon. We propose that the next generation of CASE tools be developed based on the CORBA standard. Various platform-independent programming languages, such as Java programming language, will be employed.
Comments
Post a Comment