SlideShare a Scribd company logo
1
Software Maintenance and Computer
Aided Software Engineering (CASE)
2
Computer Aided Software
Engineering (CASE)
 CASE tools help in
software development
and maintenance.
 CASE is a much talked about
topic in software industries.
3
CASE and Its Scope
 CASE tool is a generic term:
 denotes any form of automated
support for software
engineering.
 In a more restrictive sense:
 a CASE tool automates some
software development activity.
4
CASE and Its Scope
 Some CASE tools assist in phase-
related tasks:
 specification, structured analysis,
design, coding, testing, etc.
 Other tools help non-phase
activities:
 project management and
configuration management.
5
Objectives of CASE
 To increase productivity
 To help produce better
quality software at lower
cost.
6
CASE Environment
 Although individual CASE
tools are useful:
 true power of a tool set can be
realized only when:
 all CASE tools are integrated
together.
7
CASE Environment
 Tools covering different stages
of life cycle share information
(data):
 they should integrate through
some central repository (store)
 consistent view of development
information.
8
CASE Environment
 The central repository is the
data dictionary:
 contains definition of all
composite and elementary
data items.
 through this repository all
CASE tools share information.
9
Programming Environment
 A CASE environment helps:
 automate step-by-step
methodologies.
 In contrast to CASE environment:
 a programming environment
denotes tools supporting coding
phase alone.
10
Schematic representation of
architecture of CASE environment
Central
Repository
Consistency
-
checker
Project
Manageme
nt
Testing
Structured
Design
Structured
Analysis
Configurati
on
Manageme
nt
Document
Generation
Coding
Support
11
Benefits of CASE
 A key benefit of using CASE
environment:
 cost saving through all
developmental phases.
 Studies carried out to measure
the impact of CASE usage:
 cost saving between 30% to 40%.
12
Benefits of CASE
 Use of CASE tools leads to
improvements in quality:
 becomes easy to iterate through
different software development
phases.
 chances of human error is reduced.
 CASE tools help produce higher
quality and consistent documents.
13
Benefits of CASE
 Data relating to a software
product are maintained in a
central repository:
 redundancy in the stored data is
reduced.
 chances of inconsistent
documentation is reduced.
14
Benefits of CASE
 CASE tools take drudgery out
from software engineers’ work:
 engineers need not manually
check balancing of the DFDs
 easily draw diagrams and
produce documentation, etc.
15
Benefits of CASE
 CASE tools lead to cost saving in
software maintenance effort:
 traceability and consistency checks,
 systematic information capture
during various development phases.
16
Benefits of CASE
Introduction of a CASE
environment:
 impacts the style of
working of engineers.
 makes them oriented
towards structured and
orderly approach.
17
Prototyping Support
 Prototyping CASE tool:
 often used in graphical
user interface (GUI)
development,
 supports creating a GUI
using a graphics editor.
18
Prototyping Support
 The user should be allowed to
define:
 data entry forms, menus and
controls.
 It should integrate with the data
dictionary of a CASE environment.
19
Structured Analysis and
Design
 A CASE tool should:
 support some standard structured
analysis and design technique.
 support easy creation of analysis and
design diagrams.
 should provide easy navigation
through different levels of design and
analysis diagrams.
20
Structured Analysis and
Design
 The tool must support
completeness and consistency
checking.
 The tool should disallow
inconsistent operations:
 but, it is difficult to implement
such a feature.
21
Code Generation
 As far as code generation is
concerned:
 expectations from a CASE tool is low.
 The CASE tool should support:
 generation of module skeletons in
one or more popular languages.
 Another reasonable requirement is
traceability from source code to
design.
22
Code Generation
 It should automatically
generate header information:
 copyright messages,
 brief description of the module,
 author name and date of
creation, etc.
23
Code Generation
 The tool should generate data
records or structures automatically:
 using data dictionary definitions.
 It should generate database tables
for relational database
management systems.
24
Code Generation
 The tool should generate code
for user interface from the
prototype:
 for X window and MS window
based applications.
25
Testing Support
 Static and dynamic program
analysis of programs.
 It should generate test reports
in ASCII format:
 which can be directly imported
into the test plan document.
26
Desirable Features
 The tool should work satisfactorily
 when many users work simultaneously.
 The tool should support windowing
interface:
 Enable the users to see more than one
diagram at a time.
 Facilitate navigation and switching from one
part to the other.
27
Documentation Support
 The deliverable documents:
 should be able to incorporate text
and diagrams from the central
repository.
 help in producing up-to-date
documentation.
28
Desirable Features
 The CASE tool should integrate
 with commercially available desk-top
publishing packages.
 It should be possible to export text,
graphics, tables, data dictionary
reports:
 to DTP packages in standard formats
such as PostScript.
29
Project Management
 It should support collecting,
storing, and analyzing information
on the software project's progress:
 such as the estimated task duration,
 scheduled and actual task start,
completion date, dates and results of
the reviews, etc.
30
External Interface
 The tool should allow exchange of
information for reusability of design.
 The information exported by the tool
should preferably be in ASCII format.
 The data dictionary should provide
 a programming interface to access
information.
31
Reverse Engineering Support
 The tool should support:
 generating structure chart,
DFD, and data dictionary
from source code.
 should populate the data
dictionary from source code.
32
Data Dictionary Interface
 Data dictionary interface should provide
 viewing and updating the data definitions.
 print facility to obtain hard copy of the
viewed screens.
 analysis reports like cross-referencing,
impact analysis, etc.
 it should support a query language.
33
Tutorial and Help
 Successful use of CASE tools:
 depends on the users’ capability
to effectively use all supported
features.
 For the first time users:
 a computer animated tutorial is
very important.
34
Tutorial and Help
 The tutorial should not be limited to
teaching the user interface part
only:
 The tutorial should logically classify
and cover all techniques and facilities.
 The tutorial should be supported by
proper documentation and animation.
35
Towards Next Generation
CASE Tool
 An important feature of next
generation CASE tools:
 be able to support any methodology.
 Necessity of a CASE administrator
for every organization:
 who would tailor the CASE environment
to a particular methodology.
36
Intelligent Diagramming
Support
 Future CASE tools would
 aesthetically and automatically
lay out the diagrams.
37
 The user should be allowed to:
 integrate many different tools
into one environment.
 It is highly unlikely that any one
vendor will be able to deliver a
total solution.
Towards Next Generation
CASE Tool
38
 A preferred tool would support
tune up:
 user would act as a system
integrator.
 This is possible only if some data
dictionary standard emerges.
Towards Next Generation
CASE Tool
39
Customization Support
 The user should be allowed to define new
types of objects and connections.
 This facility may be used to build some
special methodologies.
 Ideally it should be possible to specify the
rules of a methodology to a rule engine:
 for carrying out the necessary consistency
checks.

More Related Content

PPT
Data modelling tool in CASE
PPTX
Presentation_on seirity_case study.pptx
PPTX
Case_TOOL(Unit_04, on a case stydy).pptx
PPTX
Case_TOOL(Unit_04 on a case study).pptx
PDF
Computer Aided Software Engineering Slide
PPTX
Computer Aided Software Engineering Nayab Awan
PPTX
Computer Sided Software Engineering
PDF
Dairy management system project report..pdf
Data modelling tool in CASE
Presentation_on seirity_case study.pptx
Case_TOOL(Unit_04, on a case stydy).pptx
Case_TOOL(Unit_04 on a case study).pptx
Computer Aided Software Engineering Slide
Computer Aided Software Engineering Nayab Awan
Computer Sided Software Engineering
Dairy management system project report..pdf

Similar to Computer Aided Software Engineering.ppt SE (20)

PPTX
Case tools
PPT
Criteria For EA Tool Selection
PDF
Computer Aided Software Engineering (CASE).pdf
PPTX
Software Requirement Engineering Chap 6.pptx
PPT
Chapter 01
PPTX
Software Engineering and management project development
PPT
Object oriented sad-5 part i
PPTX
Computer Aided Software Engineering
PPTX
Computer aided software engineering
PDF
SE18_Lec 01_Introduction to Software Engineering
PPT
Software testing presentation for engineering students of computer science
PDF
SE_Lec 01_ Introduction to Software Enginerring
PPT
Rekayasa Perangkat Lunak Pertemuan 1 RPL
PPT
Software engineering introduction
PPT
1. Introduction to software engineering.ppt
PPT
Chapter 01
PPT
Development Tools - Abhijeet
PPTX
Design Model & User Interface Design in Software Engineering
PPT
Chapter 01
Case tools
Criteria For EA Tool Selection
Computer Aided Software Engineering (CASE).pdf
Software Requirement Engineering Chap 6.pptx
Chapter 01
Software Engineering and management project development
Object oriented sad-5 part i
Computer Aided Software Engineering
Computer aided software engineering
SE18_Lec 01_Introduction to Software Engineering
Software testing presentation for engineering students of computer science
SE_Lec 01_ Introduction to Software Enginerring
Rekayasa Perangkat Lunak Pertemuan 1 RPL
Software engineering introduction
1. Introduction to software engineering.ppt
Chapter 01
Development Tools - Abhijeet
Design Model & User Interface Design in Software Engineering
Chapter 01
Ad

More from uthayashangar1 (17)

PPT
INTEGRATION TESTING using combined testing.ppt
PPT
BLACK-BOX TESTING using boundart value analyse.ppt
PPT
Software Engineering -Software Reliability.ppt
PPT
Software Engineering - Software Quality.ppt
PPT
Software Maintenance.ppt in Software Engineering
PPT
Software reengineering.ppt in Software Engineering
PPT
SEI Capability Maturity Model.ppt Software Engineering
PDF
Cryptography and network security part a question and answers
PPT
5. HALSTEAD SOFTWARE SCIENCE.ppt software engineering
PPTX
4. COCOMO – HEURISTIC ESTIMATION TECHNIQUE.pptx
DOC
Web Technology List of html and CSS all the Experiments.doc
DOC
Web Technology all the Units Consolidated Syllabus.doc
DOC
Web TEchnology hackers Encryption VPN Firewall Unit 5.doc
DOC
Web Technology Web Technology Notes Streams Network Principles and SocketsUni...
DOC
Web Technology XML Attributes and elementsUnit 3.doc
DOC
web technology search engine optimization notes Unit 2.doc
DOC
web technology web concepts client server model Unit 1.doc
INTEGRATION TESTING using combined testing.ppt
BLACK-BOX TESTING using boundart value analyse.ppt
Software Engineering -Software Reliability.ppt
Software Engineering - Software Quality.ppt
Software Maintenance.ppt in Software Engineering
Software reengineering.ppt in Software Engineering
SEI Capability Maturity Model.ppt Software Engineering
Cryptography and network security part a question and answers
5. HALSTEAD SOFTWARE SCIENCE.ppt software engineering
4. COCOMO – HEURISTIC ESTIMATION TECHNIQUE.pptx
Web Technology List of html and CSS all the Experiments.doc
Web Technology all the Units Consolidated Syllabus.doc
Web TEchnology hackers Encryption VPN Firewall Unit 5.doc
Web Technology Web Technology Notes Streams Network Principles and SocketsUni...
Web Technology XML Attributes and elementsUnit 3.doc
web technology search engine optimization notes Unit 2.doc
web technology web concepts client server model Unit 1.doc
Ad

Recently uploaded (20)

PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
Sustainable Sites - Green Building Construction
PPTX
Geodesy 1.pptx...............................................
DOCX
573137875-Attendance-Management-System-original
PDF
composite construction of structures.pdf
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPT
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PPTX
Internet of Things (IOT) - A guide to understanding
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPTX
Construction Project Organization Group 2.pptx
PPTX
bas. eng. economics group 4 presentation 1.pptx
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PDF
PPT on Performance Review to get promotions
PPTX
additive manufacturing of ss316l using mig welding
PPTX
CH1 Production IntroductoryConcepts.pptx
PDF
Digital Logic Computer Design lecture notes
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Sustainable Sites - Green Building Construction
Geodesy 1.pptx...............................................
573137875-Attendance-Management-System-original
composite construction of structures.pdf
CYBER-CRIMES AND SECURITY A guide to understanding
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
Internet of Things (IOT) - A guide to understanding
Operating System & Kernel Study Guide-1 - converted.pdf
Construction Project Organization Group 2.pptx
bas. eng. economics group 4 presentation 1.pptx
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPT on Performance Review to get promotions
additive manufacturing of ss316l using mig welding
CH1 Production IntroductoryConcepts.pptx
Digital Logic Computer Design lecture notes

Computer Aided Software Engineering.ppt SE

  • 1. 1 Software Maintenance and Computer Aided Software Engineering (CASE)
  • 2. 2 Computer Aided Software Engineering (CASE)  CASE tools help in software development and maintenance.  CASE is a much talked about topic in software industries.
  • 3. 3 CASE and Its Scope  CASE tool is a generic term:  denotes any form of automated support for software engineering.  In a more restrictive sense:  a CASE tool automates some software development activity.
  • 4. 4 CASE and Its Scope  Some CASE tools assist in phase- related tasks:  specification, structured analysis, design, coding, testing, etc.  Other tools help non-phase activities:  project management and configuration management.
  • 5. 5 Objectives of CASE  To increase productivity  To help produce better quality software at lower cost.
  • 6. 6 CASE Environment  Although individual CASE tools are useful:  true power of a tool set can be realized only when:  all CASE tools are integrated together.
  • 7. 7 CASE Environment  Tools covering different stages of life cycle share information (data):  they should integrate through some central repository (store)  consistent view of development information.
  • 8. 8 CASE Environment  The central repository is the data dictionary:  contains definition of all composite and elementary data items.  through this repository all CASE tools share information.
  • 9. 9 Programming Environment  A CASE environment helps:  automate step-by-step methodologies.  In contrast to CASE environment:  a programming environment denotes tools supporting coding phase alone.
  • 10. 10 Schematic representation of architecture of CASE environment Central Repository Consistency - checker Project Manageme nt Testing Structured Design Structured Analysis Configurati on Manageme nt Document Generation Coding Support
  • 11. 11 Benefits of CASE  A key benefit of using CASE environment:  cost saving through all developmental phases.  Studies carried out to measure the impact of CASE usage:  cost saving between 30% to 40%.
  • 12. 12 Benefits of CASE  Use of CASE tools leads to improvements in quality:  becomes easy to iterate through different software development phases.  chances of human error is reduced.  CASE tools help produce higher quality and consistent documents.
  • 13. 13 Benefits of CASE  Data relating to a software product are maintained in a central repository:  redundancy in the stored data is reduced.  chances of inconsistent documentation is reduced.
  • 14. 14 Benefits of CASE  CASE tools take drudgery out from software engineers’ work:  engineers need not manually check balancing of the DFDs  easily draw diagrams and produce documentation, etc.
  • 15. 15 Benefits of CASE  CASE tools lead to cost saving in software maintenance effort:  traceability and consistency checks,  systematic information capture during various development phases.
  • 16. 16 Benefits of CASE Introduction of a CASE environment:  impacts the style of working of engineers.  makes them oriented towards structured and orderly approach.
  • 17. 17 Prototyping Support  Prototyping CASE tool:  often used in graphical user interface (GUI) development,  supports creating a GUI using a graphics editor.
  • 18. 18 Prototyping Support  The user should be allowed to define:  data entry forms, menus and controls.  It should integrate with the data dictionary of a CASE environment.
  • 19. 19 Structured Analysis and Design  A CASE tool should:  support some standard structured analysis and design technique.  support easy creation of analysis and design diagrams.  should provide easy navigation through different levels of design and analysis diagrams.
  • 20. 20 Structured Analysis and Design  The tool must support completeness and consistency checking.  The tool should disallow inconsistent operations:  but, it is difficult to implement such a feature.
  • 21. 21 Code Generation  As far as code generation is concerned:  expectations from a CASE tool is low.  The CASE tool should support:  generation of module skeletons in one or more popular languages.  Another reasonable requirement is traceability from source code to design.
  • 22. 22 Code Generation  It should automatically generate header information:  copyright messages,  brief description of the module,  author name and date of creation, etc.
  • 23. 23 Code Generation  The tool should generate data records or structures automatically:  using data dictionary definitions.  It should generate database tables for relational database management systems.
  • 24. 24 Code Generation  The tool should generate code for user interface from the prototype:  for X window and MS window based applications.
  • 25. 25 Testing Support  Static and dynamic program analysis of programs.  It should generate test reports in ASCII format:  which can be directly imported into the test plan document.
  • 26. 26 Desirable Features  The tool should work satisfactorily  when many users work simultaneously.  The tool should support windowing interface:  Enable the users to see more than one diagram at a time.  Facilitate navigation and switching from one part to the other.
  • 27. 27 Documentation Support  The deliverable documents:  should be able to incorporate text and diagrams from the central repository.  help in producing up-to-date documentation.
  • 28. 28 Desirable Features  The CASE tool should integrate  with commercially available desk-top publishing packages.  It should be possible to export text, graphics, tables, data dictionary reports:  to DTP packages in standard formats such as PostScript.
  • 29. 29 Project Management  It should support collecting, storing, and analyzing information on the software project's progress:  such as the estimated task duration,  scheduled and actual task start, completion date, dates and results of the reviews, etc.
  • 30. 30 External Interface  The tool should allow exchange of information for reusability of design.  The information exported by the tool should preferably be in ASCII format.  The data dictionary should provide  a programming interface to access information.
  • 31. 31 Reverse Engineering Support  The tool should support:  generating structure chart, DFD, and data dictionary from source code.  should populate the data dictionary from source code.
  • 32. 32 Data Dictionary Interface  Data dictionary interface should provide  viewing and updating the data definitions.  print facility to obtain hard copy of the viewed screens.  analysis reports like cross-referencing, impact analysis, etc.  it should support a query language.
  • 33. 33 Tutorial and Help  Successful use of CASE tools:  depends on the users’ capability to effectively use all supported features.  For the first time users:  a computer animated tutorial is very important.
  • 34. 34 Tutorial and Help  The tutorial should not be limited to teaching the user interface part only:  The tutorial should logically classify and cover all techniques and facilities.  The tutorial should be supported by proper documentation and animation.
  • 35. 35 Towards Next Generation CASE Tool  An important feature of next generation CASE tools:  be able to support any methodology.  Necessity of a CASE administrator for every organization:  who would tailor the CASE environment to a particular methodology.
  • 36. 36 Intelligent Diagramming Support  Future CASE tools would  aesthetically and automatically lay out the diagrams.
  • 37. 37  The user should be allowed to:  integrate many different tools into one environment.  It is highly unlikely that any one vendor will be able to deliver a total solution. Towards Next Generation CASE Tool
  • 38. 38  A preferred tool would support tune up:  user would act as a system integrator.  This is possible only if some data dictionary standard emerges. Towards Next Generation CASE Tool
  • 39. 39 Customization Support  The user should be allowed to define new types of objects and connections.  This facility may be used to build some special methodologies.  Ideally it should be possible to specify the rules of a methodology to a rule engine:  for carrying out the necessary consistency checks.