Book2 CH13 CASE Tools and Their Effect
Book2 CH13 CASE Tools and Their Effect
their effect on
software quality
Hagar Khaled
Introduction
An increasing variety of specialized computerized tools (actually software
packages) have been off ered to software engineering departments since the
early 1990s. The purpose of these tools is to make the work of development
and maintenance teams more effi cient and more eff ective. Collectively named
CASE (computer-aided software engineering) tools, they off er:
● CASE tools are computerized software development tools that support the
developer when performing one or more phases of the software life cycle
and/or support software maintenance.
CASE tools – definition
● The main component of real CASE tools is the repository that stores all
the information related to the project.
2. Upper Case Tools : Upper CASE tools are used in planning, analysis and
design stages of SDLC.
3. Lower Case Tools : Lower CASE tools are used in implementation, testing
and maintenance.
4. Integrated Case Tools : Integrated CASE tools are helpful in all the stages
of SDLC, from Requirement gathering to Testing and documentation.
5. Reverse engineering
CASE tools types
● Diagram tools
These tools are used to represent system components, data and control
fl ow among various software components and system structure in a
graphical form. For example, Flow Chart Maker tool for creating state- of-
the-art fl owcharts.
● Documentation Tools
Documentation in a software project starts prior to the software process,
goes throughout all phases of SDLC and after the completion of the
project. Documentation tools generate documents for technical users and
end users.
CASE tools types
● Analysis Tools
These tools help to gather requirements, automatically check for any
inconsistency, inaccuracy in the diagrams, data redundancies or
erroneous omissions. For example, Accept 360, Accompa, CaseComplete
for requirement analysis, Visible Analyst for total analysis.
● Programming Tools
These tools consist of programming environments like IDE (Integrated
Development Environment), in-built modules library and simulation tools.
For example, Cscope to search code in C, Eclipse.
CASE tools types : Requirements Management
Tools
● Project managers can easily manage their product lifecycle with live
tracking, reporting, real-time collaboration, versioning, test management
and bug tracking features. This will support review meetings with
stakeholders.
CASE tools types : Requirements Management
Tools
● Design tools help software designers to design the block structure of the
software. The software can be further divided into smaller blocks using
refi ned techniques. These tools provide in-depth information about each
module as well as the relationships between them.
● These tools can automate tedious tasks such as testing, checking, and
verifying your software.
CASE tools types : Testing Tools
● 1.Increased Productivity
CASE tools automate many repetitive tasks involved in development, such as code
generation and testing. This allows developers to spend less time on routine
activities and focus on more creative and complex problems that speed up the
overall development process.
● 2.Improved Quality
CASE tools help guarantee that software is built according to proven standards by
guiding developers to follow best practices. They also submit features like
automated error checking and validation, which helps reduce the risk of bugs and
improves the quality of the fi nal product.
Importance of CASE Tools
● 3.Improved Collaboration
CASE tools usually have integrated communication and collaboration features,
such as shared code holds and project management tools. This promotes better
teamwork, as all stakeholders—developers, testers, and project managers can
easily stay updated and work together effi ciently.
● 4.Standardization
CASE tools implement the use of standard methods across teams and projects.
This ensures consistency in the development process, whether it's writing code,
following design patterns, or documenting the software, which makes it easier to
manage multiple projects or collaborate across teams.
Contribution of CASE tools
● Adaptive maintenance:
● Full and updated documentation of the software by CASE tools enables
thorough examination of possible software package adaptations for new users
and applications.
Contribution of CASE tools : software
maintenance quality
● Waterfall Model
● Agile Development
Agile focuses on fl exibility, collaboration, and iterative progress. CASE tools are
mainly helpful for:
● Rapid Prototyping: It Supports the quick and continuous creation of
prototype versions to gather feedback.
● Continuous Integration and Testing: Automating the integration of new
features and running tests continuously helps to fi nd and fi x problems early.
● Task Tracking and Visualization: This Keeps track of progress and manages
tasks that guarantee the team stays on track and can easily adjust
preferences as needed.
Application Development Methodologies and
Case Tools
● Spiral Model
The Spiral model underlines risk management and frequent iterations. Case tools
in software engineering tools help in:
● Managing Requirements: It facilitates clear documentation and management
of changing requirements throughout each iteration.
● Identifying and Mitigating Risks: This checks and analyzes risks, which
makes it easier to adjust plans and make informed decisions during every
cycle.
Application Development Methodologies and
Case Tools
● DevOps
● Regularly evaluating the eff ectiveness of the tool – Alongside, using CASE
tools, you should also evaluate the eff ectiveness of the tools, like-
● How well do your tools achieve the desired goals and results?
● How well do they use the available resources and time?
● How do they adhere to the standards and requirements of clients and the
organization?
● What improvements can be implemented?
Conculsion
• https://www.tutorialspoint.com/software_engineering/
case_tools_overview.htm
• https://www.tutorialspoint.com/software_engineering/
case_tools_overview.htm
• https://www.geeksforgeeks.org/computer-aided-
software-engineering-case/
• https://artoftesting.com/case-tools-in-software-
sngineering
Thank you