SlideShare a Scribd company logo
Unit-10
Advanced Topics in
Software Engineering
Intro CASE
•A CASE (Computer Aided Software Engineering) tool is a
generic term used to denote any form of automated
support for software engineering.
•A CASE tool means any tool used to automate some
activity associated with software development.
The primary reasons for using a CASE tool are:
• To increase productivity
• To help produce better quality software at lower cost
Components of CASE
CASE
repository
Document
Generator
Design
Generator
Analysis
tool
Code
Generator
Drawing
Tool
Error-checking
tool
Security and
Version Control
Screen and
Report Generator
Prototyping
Tool
Database
Generator
Components of CASE
•CASE repository
• Central component of any CASE tool
• Also known as the information repository or data
dictionary
Components of CASE
•CASE repository
• Centralized database
• Allows easy sharing of information between tools and
SDLC activities
• Used to store graphical diagrams and prototype forms
and reports during analysis and design workflows
• Provides wealth of information to project manager
and allows control over project
• Facilitates reusability
Components of CASE
•CASE repository acts as:
• Information repository
• Combines information about organization’s business
information and application portfolio
• Provides automated tools to manage and control access
• Data dictionary
• Used to manage and control access to information
repository
• Facilities for recording, storing and processing resources
• Useful for cross-referencing
Components of CASE
•Diagramming tools
• Allow you to represent a system and its components
visually
• Allows higher level processes to be easily decomposed
• Can examine processes or data models at high or low
level
Components of CASE
•Screen and report generators
• Used to
• Create, modify and test prototypes of computer displays and
reports
• Identify which data items to display or collect for each screen
or report
• Some tools have templates
Components of CASE
•Analysis tools
• Generate reports that help identify possible
inconsistencies, redundancies and omissions
• Generally focus on
• diagram completeness and consistency
• data structures and usage
Components of CASE
•CASE documentation generator tools
• Create standard reports based on contents of
repository
• Need textual descriptions of needs, solutions, trade-
offs, diagrams of data and processes, prototype
forms and reports, program specifications and user
documentation
• High-quality documentation leads to 80% reduction
in system maintenance effort in comparison to
average quality documentation
CASE integration
•Tools
• Support individual process tasks such as design
consistency checking, text editing, etc.
•Workbenches
• Support a process phase such as specification or design,
Normally include a number of integrated tools.
•Environments
• Support all or a substantial part of an entire software
process. Normally include several integrated
workbenches.
CASE Tools
• Upper CASE
• requirements
• specification
• planning
• design
• Lower CASE
• implementation
• integration
• maintenance
CASE Tool Taxonomy - 1
• Business process engineering tools
• represent business data objects, their relationships, and flow of
the data objects between company business areas
• Process modeling and management tools
• represent key elements of processes and provide links to other
tools that provide support to defined process activities
• Project planning tools
• used for cost and effort estimation, and project scheduling
CASE Tool Taxonomy - 2
•Risk analysis tools
• help project managers build risk tables by providing
detailed guidance in the identification and analysis of
risks
•Requirements tracing tools
• provide systematic database-like approach to tracking
requirement status beginning with specification
CASE Tool Taxonomy - 3
•Metrics and management tools
• management oriented tools capture project specific
metrics that provide an overall indication of productivity
or quality, technically oriented metrics determine metrics
that provide greater insight into the quality of design or
code
•Documentation tools
• provide opportunities for improved productivity by
reducing the amount of time needed to produce work
products
CASE Tool Taxonomy - 4
•System software tools
• network system software, object management services,
distributed component support, and communications
software
•Quality assurance tools
• metrics tools that audit source code to determine
compliance with language standards or tools that extract
metrics to project the quality of software being built
CASE Tool Taxonomy - 5
•Database management tools
• RDMS and OODMS serve as the foundation for the
establishment of the CASE repository
•Software configuration management tools
• uses the CASE repository to assist with all SCM tasks
(identification, version control, change control, auditing, status
accounting)
•Analysis and design tools
• enable the software engineer to create analysis and design
models of the system to be built, perform consistency checking
between models
CASE Tool Taxonomy - 6
•PRO/SIM tools
• prototyping and simulation tools provide software engineers
with ability to predict the behavior of real-time systems before
they are built and the creation of interface mockups for
customer review
•Interface design and development tools
• toolkits of interface components, often part environment with
a GUI to allow rapid prototyping of user interface designs
CASE Tool Taxonomy - 7
•Prototyping tools
• enable rapid definition of screen layouts, data design, and
report generation
•Programming tools
• compilers, editors, debuggers, OO programming environments,
fourth generation languages, graphical programming
environments, applications generators, and database query
generators
•Web development tools
• assist with the generation of web page text, graphics, forms,
scripts, applets, etc.
CASE Tool Taxonomy - 8
•Integration and testing tools
•data acquisition
• get data for testing
•static measurement
• analyze source code without using test cases
•dynamic measurement
• analyze source code during execution
•simulation
• simulate function of hardware and external devices
•test management
•cross-functional tools
CASE Tool Taxonomy - 9
•Static analysis tools
• code-based testing tools, specialized testing languages,
requirements-based testing tools
•Dynamic analysis tools
• intrusive tools modify source code by inserting probes to check
path coverage, assertions, or execution flow
• non-intrusive tools use a separate hardware processor running
in parallel with processor containing the program being tested
CASE Tool Taxonomy - 10
•Test management tools
• coordinate regression testing, compare actual and expected
output, conduct batch testing, and serve as generic test drivers
•Client/server testing tools
• exercise the GUI and network communications requirements for
the client and server
CASE Tool Taxonomy - 11
•Reengineering tools
•reverse engineering to specification tools
• generate analysis and design models from source code, where used
lists, and other design information
•code restructuring and analysis tools
• analyze program syntax, generate control flow graph, and automatically
generates a structured program
•on-line system reengineering tools
• used to modify on-line DBMS

More Related Content

PPTX
Basics of fisheries and aquaculture
PPTX
Neuromarketing
PPTX
Exchange Rate
PDF
AI for Software Engineering
PPTX
Wildlife conservation in India(ppt)
PPTX
A basic PPT on Internet Of Things(IOT)
PPSX
Wildlife sanctuaries and National Park in India
PPTX
boAt lifestyle Success Story.pptx
Basics of fisheries and aquaculture
Neuromarketing
Exchange Rate
AI for Software Engineering
Wildlife conservation in India(ppt)
A basic PPT on Internet Of Things(IOT)
Wildlife sanctuaries and National Park in India
boAt lifestyle Success Story.pptx

What's hot (20)

PPT
Chapter 13 software testing strategies
PPTX
Cohesion and coupling
PPTX
Introduction to software testing
PPTX
Software project management
PPTX
Software Reliability
PPT
Formal Specification in Software Engineering SE9
DOCX
Techniques & applications of Compiler
PPTX
formal verification
PPTX
Software Configuration Management (SCM)
PPTX
Software Evolution
PPT
Quality Management in Software Engineering SE24
PPT
Introduction to Software Project Management
PPTX
Software quality assurance
PDF
Agile Methodology - Software Engineering
PPT
Rad model
PPT
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
PPT
Flow oriented modeling
PPTX
Software Engineering Process Models
PPTX
software process improvement
PPT
Architecture design in software engineering
Chapter 13 software testing strategies
Cohesion and coupling
Introduction to software testing
Software project management
Software Reliability
Formal Specification in Software Engineering SE9
Techniques & applications of Compiler
formal verification
Software Configuration Management (SCM)
Software Evolution
Quality Management in Software Engineering SE24
Introduction to Software Project Management
Software quality assurance
Agile Methodology - Software Engineering
Rad model
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
Flow oriented modeling
Software Engineering Process Models
software process improvement
Architecture design in software engineering
Ad

Viewers also liked (20)

PPT
Software Coding- Software Coding
PPT
Coding
PPTX
Quality & Reliability in Software Engineering
PPT
Cocomo
PPT
Software Quality Assurance
PPTX
software project management Cocomo model
PPT
Software engineering
PDF
Software Quality Management
PPTX
Software quality
PPT
PPT
Software quality
PPT
Cocomo model
PPT
Software reliability
PPTX
Coding and testing in Software Engineering
PPTX
ISO 9000
PPT
Software Engineering ppt
PPT
Cocomo model
PPT
Software Testing Fundamentals
PPTX
Software testing ppt
PPTX
Introduction To Software Engineering
Software Coding- Software Coding
Coding
Quality & Reliability in Software Engineering
Cocomo
Software Quality Assurance
software project management Cocomo model
Software engineering
Software Quality Management
Software quality
Software quality
Cocomo model
Software reliability
Coding and testing in Software Engineering
ISO 9000
Software Engineering ppt
Cocomo model
Software Testing Fundamentals
Software testing ppt
Introduction To Software Engineering
Ad

Similar to Advanced topics in software engineering (20)

PPT
CASE tools_Se lect15 btech
PPT
Case tools and modern process of system development
PPT
Data modelling tool in CASE
PPTX
Case tools
PPTX
CAATS.pptx tgrewughfehiwjjjfisufisjdihfh
PPTX
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
PDF
How to Automate your Enterprise Application / ERP Testing
PDF
Unit 1.pdf
DOCX
Ayaz Qureshi
PPTX
2. Business Data Analytics and Technology.pptx
PPTX
Inventory managment system
PPTX
Case_TOOL(Unit_04, on a case stydy).pptx
PPTX
Case_TOOL(Unit_04 on a case study).pptx
PPTX
Automated Tools For System Analysis and Design
PPTX
IncQuery Suite demo for INCOSE 2022IW
PPT
Test Automation Framework Designs
DOC
Gilbert_Benitez_Jr
PPTX
Presentation_on seirity_case study.pptx
CASE tools_Se lect15 btech
Case tools and modern process of system development
Data modelling tool in CASE
Case tools
CAATS.pptx tgrewughfehiwjjjfisufisjdihfh
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
How to Automate your Enterprise Application / ERP Testing
Unit 1.pdf
Ayaz Qureshi
2. Business Data Analytics and Technology.pptx
Inventory managment system
Case_TOOL(Unit_04, on a case stydy).pptx
Case_TOOL(Unit_04 on a case study).pptx
Automated Tools For System Analysis and Design
IncQuery Suite demo for INCOSE 2022IW
Test Automation Framework Designs
Gilbert_Benitez_Jr
Presentation_on seirity_case study.pptx

More from Rupesh Vaishnav (10)

PPT
Software maintenance and configuration management, software engineering
PPT
Software design, software engineering
PPT
Software coding & testing, software engineering
PPT
Software as a service, software engineering
PPT
Requirement analysis and specification, software engineering
PPT
Quality assurance and management, software engineering
PPT
Managing software project, software engineering
PPT
Intoduction to software engineering part 2
PPT
Intoduction to software engineering part 1
PPT
Agile development, software engineering
Software maintenance and configuration management, software engineering
Software design, software engineering
Software coding & testing, software engineering
Software as a service, software engineering
Requirement analysis and specification, software engineering
Quality assurance and management, software engineering
Managing software project, software engineering
Intoduction to software engineering part 2
Intoduction to software engineering part 1
Agile development, software engineering

Recently uploaded (20)

PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
CH1 Production IntroductoryConcepts.pptx
PPT
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
PPTX
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
PPTX
web development for engineering and engineering
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PDF
Well-logging-methods_new................
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
Digital Logic Computer Design lecture notes
PPTX
Welding lecture in detail for understanding
PDF
composite construction of structures.pdf
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
OOP with Java - Java Introduction (Basics)
CH1 Production IntroductoryConcepts.pptx
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
web development for engineering and engineering
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
Operating System & Kernel Study Guide-1 - converted.pdf
Well-logging-methods_new................
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
bas. eng. economics group 4 presentation 1.pptx
Foundation to blockchain - A guide to Blockchain Tech
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
UNIT-1 - COAL BASED THERMAL POWER PLANTS
Digital Logic Computer Design lecture notes
Welding lecture in detail for understanding
composite construction of structures.pdf
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...

Advanced topics in software engineering

  • 2. Intro CASE •A CASE (Computer Aided Software Engineering) tool is a generic term used to denote any form of automated support for software engineering. •A CASE tool means any tool used to automate some activity associated with software development. The primary reasons for using a CASE tool are: • To increase productivity • To help produce better quality software at lower cost
  • 4. Components of CASE •CASE repository • Central component of any CASE tool • Also known as the information repository or data dictionary
  • 5. Components of CASE •CASE repository • Centralized database • Allows easy sharing of information between tools and SDLC activities • Used to store graphical diagrams and prototype forms and reports during analysis and design workflows • Provides wealth of information to project manager and allows control over project • Facilitates reusability
  • 6. Components of CASE •CASE repository acts as: • Information repository • Combines information about organization’s business information and application portfolio • Provides automated tools to manage and control access • Data dictionary • Used to manage and control access to information repository • Facilities for recording, storing and processing resources • Useful for cross-referencing
  • 7. Components of CASE •Diagramming tools • Allow you to represent a system and its components visually • Allows higher level processes to be easily decomposed • Can examine processes or data models at high or low level
  • 8. Components of CASE •Screen and report generators • Used to • Create, modify and test prototypes of computer displays and reports • Identify which data items to display or collect for each screen or report • Some tools have templates
  • 9. Components of CASE •Analysis tools • Generate reports that help identify possible inconsistencies, redundancies and omissions • Generally focus on • diagram completeness and consistency • data structures and usage
  • 10. Components of CASE •CASE documentation generator tools • Create standard reports based on contents of repository • Need textual descriptions of needs, solutions, trade- offs, diagrams of data and processes, prototype forms and reports, program specifications and user documentation • High-quality documentation leads to 80% reduction in system maintenance effort in comparison to average quality documentation
  • 11. CASE integration •Tools • Support individual process tasks such as design consistency checking, text editing, etc. •Workbenches • Support a process phase such as specification or design, Normally include a number of integrated tools. •Environments • Support all or a substantial part of an entire software process. Normally include several integrated workbenches.
  • 12. CASE Tools • Upper CASE • requirements • specification • planning • design • Lower CASE • implementation • integration • maintenance
  • 13. CASE Tool Taxonomy - 1 • Business process engineering tools • represent business data objects, their relationships, and flow of the data objects between company business areas • Process modeling and management tools • represent key elements of processes and provide links to other tools that provide support to defined process activities • Project planning tools • used for cost and effort estimation, and project scheduling
  • 14. CASE Tool Taxonomy - 2 •Risk analysis tools • help project managers build risk tables by providing detailed guidance in the identification and analysis of risks •Requirements tracing tools • provide systematic database-like approach to tracking requirement status beginning with specification
  • 15. CASE Tool Taxonomy - 3 •Metrics and management tools • management oriented tools capture project specific metrics that provide an overall indication of productivity or quality, technically oriented metrics determine metrics that provide greater insight into the quality of design or code •Documentation tools • provide opportunities for improved productivity by reducing the amount of time needed to produce work products
  • 16. CASE Tool Taxonomy - 4 •System software tools • network system software, object management services, distributed component support, and communications software •Quality assurance tools • metrics tools that audit source code to determine compliance with language standards or tools that extract metrics to project the quality of software being built
  • 17. CASE Tool Taxonomy - 5 •Database management tools • RDMS and OODMS serve as the foundation for the establishment of the CASE repository •Software configuration management tools • uses the CASE repository to assist with all SCM tasks (identification, version control, change control, auditing, status accounting) •Analysis and design tools • enable the software engineer to create analysis and design models of the system to be built, perform consistency checking between models
  • 18. CASE Tool Taxonomy - 6 •PRO/SIM tools • prototyping and simulation tools provide software engineers with ability to predict the behavior of real-time systems before they are built and the creation of interface mockups for customer review •Interface design and development tools • toolkits of interface components, often part environment with a GUI to allow rapid prototyping of user interface designs
  • 19. CASE Tool Taxonomy - 7 •Prototyping tools • enable rapid definition of screen layouts, data design, and report generation •Programming tools • compilers, editors, debuggers, OO programming environments, fourth generation languages, graphical programming environments, applications generators, and database query generators •Web development tools • assist with the generation of web page text, graphics, forms, scripts, applets, etc.
  • 20. CASE Tool Taxonomy - 8 •Integration and testing tools •data acquisition • get data for testing •static measurement • analyze source code without using test cases •dynamic measurement • analyze source code during execution •simulation • simulate function of hardware and external devices •test management •cross-functional tools
  • 21. CASE Tool Taxonomy - 9 •Static analysis tools • code-based testing tools, specialized testing languages, requirements-based testing tools •Dynamic analysis tools • intrusive tools modify source code by inserting probes to check path coverage, assertions, or execution flow • non-intrusive tools use a separate hardware processor running in parallel with processor containing the program being tested
  • 22. CASE Tool Taxonomy - 10 •Test management tools • coordinate regression testing, compare actual and expected output, conduct batch testing, and serve as generic test drivers •Client/server testing tools • exercise the GUI and network communications requirements for the client and server
  • 23. CASE Tool Taxonomy - 11 •Reengineering tools •reverse engineering to specification tools • generate analysis and design models from source code, where used lists, and other design information •code restructuring and analysis tools • analyze program syntax, generate control flow graph, and automatically generates a structured program •on-line system reengineering tools • used to modify on-line DBMS

Editor's Notes

  • #5: CASE repository Stores the diagrams and other project information Keeps track of how the diagrams fit together
  • #8: Diagramming tools Allow you to draw DFDs, ERDs, use case diagrams, case diagrams Allows you to use stepwise refinement in building models (work from high level to low level)
  • #10: Analysis tools Types of analyses depend on methodology used and features of CASE environment
  • #11: Case documentation generator tools Provide a method of managing documentation Allow creation of master templates