SlideShare a Scribd company logo
1 of 31
SE-381
Software Engineering
BEIT-V
Lecture # 20
(Computer Aided Software Engineering (CASE) Tools)
Computer Aided Software
Engineering (CASE)
– Encompasses wide range of Software programs that
are used to support Sw Process activities such as
Requirements Analysis, System Modeling,
Debugging, Testing etc
– All methods/methodologies come with associated
CASE Technology such as
• Editors with specific notations,
• Analysis tools to check system models,
• Report Generators to create system documentation,
• Code generators to generate source/skeleton code from
system model
• Change Management tools to manage changes and system
configurations etc
CASE – Computer Aided (or
Assisted) Software Engineering
– Note – it is NOT ‘Computer Automated’
– Computers are to Assist, and especially in
creative activities like Software
Development, they cannot replace
humans, the can only aid or assist
– CASE tools are around since the inception of
SD arena, their form and shape is constantly
improving.
• Eg, these used to be Line or Text Editors for now
used context-sensitive Intelligent Editors
CASE Supports
– Software process activities such as
Requirements Engineering, Design, Program
Development, Testing, Documentation, Projec
t Management, Configuration Management
etc.
– CASE Tools include tools like
• Design (Textual and Graphical) Editors
• Data Dictionaries
• Compilers, Debuggers, IPDEs, Context Sensitive
and Structure Editors,
• System Building and Change management tools
• Resource and Project Management tools
• Reverse Engineering Tools etc
CASE Status [Som04]
– In 1980s and 1990s, it was hoped that CASE tools
will bring in 3-4 fold productivity enhancement, but
according to [Som04] this enhancement has been in
the range of 40%.
– The main impediments for the progress has been
• Software Development is a creative activity and still
computers and Sw will take a long time to do it without
human interaction.
• SD is a team activity and most of the time is spent in mutual
communication, CASE has still not addressed that domain
– The areas addressed by CASE are mostly the ones
where the recurring procedures have been
automated.
CASE Status [Sch07]
• Ref: Myers 1992
• Reifer investigated 45 companies in 10 industries.
50% in IS, 25% RT Aerospace and 25% related to
Scientific Areas
• Average Annual productivity gains 9% (RTA), 12%
(IS). And Costs $125K per user of introducing
CASE Technology
CASE Tools
• CASE Tools
• handle the repetitive rigor / drudgery of the software process
and in there SD activities eg Word Processors and Drawing
Systems facilitate software engineers to maintain up-to-date
documentation and design by facilitating Change and easy
Reproduction, but documentation is done by humans
• CASE tools help Sw Engineers to encounter complexity of
the SD Eg maintenance of a Data Dictionary even of a
moderate size software is manually not possible
• These are around since inception of software but their
functionality, UI, reliability, form, … has lot changed
Why CASE?
• To
– Enhance productivity of developers
– Introduce Consistency in deliverables coming from
different phases, stages and tools
– Counter rigor and drudgery involved in docum –
entation and analysis of complex software
– Intelligently check Consistency and balancing of
different artifacts and diagrams
– Support team work at analysis and design levels
– Integrate inputs and outputs generated by different
tools for different phases of software development
Various Categorizations of CASE
– Different authors have defined various
categories for CASE Tools, in general these
are
• Function Based CASE Categories [Som04]
• Process or Activities Based CASE Categories
[Som04]
• Coverage Based Categorization or classification
with Integration perspective [Som04, Sch02]
• Depth Base Categorization [Sch02, Bit92]
• Phase and Non-Phase wise Categorization and
1st and 2nd Generations of CASE tools [Mal05]
Function Based Classification of
CASE Tools [Sch02]
Activity Based Classification of
CASE Tools [Som04]
Taxonomy / Classification of
CASE (Depth Based)
– CASE tools can be specific to one or more
activities of SDLC. A number of activities can
constitute a Phase and vice versa
– There could be many tools to support the same
activity and in contrast the functionality of a Sw
tool can span to more than one activity
– Further an Activity Eg Coding, may comprise of
multiple Tasks, Eg Editing, Compiling, Linking and
Loading; and the boundaries of an activity and a
phase may not be same.
– Nature wise CASE Tools are categorized by
(Bitter 1992 and Schach 2004) as
• Upper CASE or Front-End Tools which support the
Requirements, Specification, Planning and Design
phases, and
• Lower CASE or Back-End Tools which assist in
Implementation, Integration, Testing and Maintenance
Ref: CASE in G G Bitter (Editor); Macmillan
Encyclopedia of Computers, 1991, Vol 1, Macmillan
Pub Co NY (1992), pp:185-193
Data Dictionary (DD)
• Keeps record of all data items i.e. system
variables, data structures - their variable
names, data types and locations where each one
of these is defined and used, Dimensions, Size etc
and enables other parts of the tool (or Tools) to
– Use them
– Check consistency of implementation of these data items
in different parts of the system
– Ensure completeness i.e. all data items needed by
design are defined in DD and are specified in
Specification document
– Provide data to different Report Generators (a
component that generates the code needed to produce
reports) and Screen Generators (which generate code to
assist the developers for generating their Data Capture
(input) screens and prototypes)
DD is
the back-bone of any CASE Tool as it integrates different
parts of the tool and enables them to share data items
unnoticeably and seamlessly
Workbenches
are combinations of various Sw tools to support one or
more phases of SDLC Eg DD combined with the set of
Graphical Representations, Screen & Report
Generators, Consistency Checkers can form a
workbench to Specification and Design phases
CASE Environments
are the integration of Workbenches that support the
whole or most part of the Software Process. Late 80s
and Early 90s Borland’s Turbo series SDEs or
Programming Environments to support
Implementation, Integration and Testing phases.
Some Examples:
ADW, Excelerator, Analyst/Designer, STP – Software
Through Pictures, System
Integration Based Classification
Tools, Workbenches and
Environments in CASE – Another View
CASE Environment [Mal05]
Architecture of Repository (DD) Based
Integrated CASE Tool [Som04]
CASE Architecture
Scope of CASE
• CASE Tools have been around since Software
– Programming-in-the-Small – in Single module
• Line-Editors to Page-Editors and Structure-Editors
– Programming-in-the-Large – at multi-Module or Code level
• Debuggers and Optimizing Compilers have replaced core dumps
and segmentation faults
• Dbx, Make – Unix utilities to debug and compile larger jobs
– Programming-in-the-Many – using teams
• On-line Interface Checking – to cure arguments and object file miss-
matches
• Non-Phase CASE Tools
– Project Management – MS Project, Prima Veirra
– Configuration Management - Versioning, SCCS
Graphical Tool
• Additional features
– Data dictionary
– Screen and report generators
– Consistency checker to ensure that various views
are always consistent
• Specifications and design workbench
• Online Documentation
– Problems with
• Manuals
• Updating
• Essential online documentation
– Help information
– Programming standards
– Manuals
CASE Tool for Structured and
OOA/D
ASCENT
Automated Strict CASE Environment at
Teesside
(Product of a University at UK)
Software Versions
– Software is composed of modules, each having
numerous versions
– Different versions of constituting modules lead to
different versions of Software
– For implementation, testing, operation one has to be
very specific, which version is being referred
– For User support, or bugs eradication, the respective
bugs are to be reproduced using respective versions
– During maintenance, at all times there are at least two
versions of the product:
• The old version, and
• The new version
– Two types of versions: revisions and variations
Revisions and Variations
• Revision
– Version to fix a fault in the module, replaces
its predecessor
– We cannot throw away an incorrect version
– Perfective and adaptive maintenance also
results in revisions
– Different versions are to be kept in repository
to reproduce the errors being received, and
to analyze and correct them
Revisions and Variations
(contd)
• Variation
– Version for different operating system–hardware
– Variations are designed to coexist in parallel
Configuration Control
• Every module
exists in three
forms
– Source code;
object code;
executable load
image
• Configuration
– Version of each
module from
which a given
version of a
product is built
Pareto Analysis
In any series of elements to be controlled, a
selected, small fraction, in terms of the
number of elements, always account for the
large fraction in terms of effect
Vilfredo Pareto (1848 – 1923)
References
1. Ian Sommerville (2004); Software Engineering, 7th
Ed, Pearson Education, New Delhi, Ch-4. (4.5)
Computer Aided Software Engineering, pp 108-111
2. Rajib Mall (2005); Fundamentals of SE, 2nd Ed,
Prentice-Hall of India, New Delhi, Ch-12 Computer
Aided Software Engineering pp 302-309
3. Stephen Schach (2007)l Software Engineering, 7th
Ed, Tata McGraw-Hill Publishing Company, New
Delhi, Ch-5 (5.4-9) CASE tools, pp 330-341
4. CASE in G G Bitter (Editor); Macmillan Encyclopedia
of Computers, 1991, Vol 1, Macmillan Pub Co NY
(1992), pp:185-193

More Related Content

What's hot

CASE tools and their effects on software quality
CASE tools and their effects on software qualityCASE tools and their effects on software quality
CASE tools and their effects on software qualityUtkarsh Agarwal
 
Chapter04 automated tools for systems development
Chapter04 automated tools for systems developmentChapter04 automated tools for systems development
Chapter04 automated tools for systems developmentDhani Ahmad
 
Software Engineering tools
Software Engineering tools Software Engineering tools
Software Engineering tools imran khan
 
SWE-401 - 12. Software CASE Tools Overview
SWE-401 - 12. Software CASE Tools OverviewSWE-401 - 12. Software CASE Tools Overview
SWE-401 - 12. Software CASE Tools Overviewghayour abbas
 
Tools for system analysis
Tools for system analysisTools for system analysis
Tools for system analysissanjana mun
 
Analytix Mapping Manager Datasheet
Analytix Mapping Manager DatasheetAnalytix Mapping Manager Datasheet
Analytix Mapping Manager DatasheetAnalytixDataServices
 
Software Engineering UPTU
Software Engineering UPTUSoftware Engineering UPTU
Software Engineering UPTURishi Shukla
 
Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Raj vardhan
 
Software engineering : Layered Architecture
Software engineering : Layered ArchitectureSoftware engineering : Layered Architecture
Software engineering : Layered ArchitectureMuhammed Afsal Villan
 
software project management
software project managementsoftware project management
software project managementAnkit Gupta
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineeringRupesh Vaishnav
 
Resume - DWBI - 5years - Akshay Shaha
Resume - DWBI - 5years - Akshay ShahaResume - DWBI - 5years - Akshay Shaha
Resume - DWBI - 5years - Akshay ShahaAkshay Shaha
 

What's hot (20)

Case tools
Case toolsCase tools
Case tools
 
Case tools
Case toolsCase tools
Case tools
 
CASE tools and their effects on software quality
CASE tools and their effects on software qualityCASE tools and their effects on software quality
CASE tools and their effects on software quality
 
Case tools
Case toolsCase tools
Case tools
 
Case tools
Case toolsCase tools
Case tools
 
Case tools
Case toolsCase tools
Case tools
 
Chapter04 automated tools for systems development
Chapter04 automated tools for systems developmentChapter04 automated tools for systems development
Chapter04 automated tools for systems development
 
Software Engineering tools
Software Engineering tools Software Engineering tools
Software Engineering tools
 
Case tools
Case tools Case tools
Case tools
 
SWE-401 - 12. Software CASE Tools Overview
SWE-401 - 12. Software CASE Tools OverviewSWE-401 - 12. Software CASE Tools Overview
SWE-401 - 12. Software CASE Tools Overview
 
Computer Sided Software Engineering
Computer Sided Software EngineeringComputer Sided Software Engineering
Computer Sided Software Engineering
 
Tools for system analysis
Tools for system analysisTools for system analysis
Tools for system analysis
 
Analytix Mapping Manager Datasheet
Analytix Mapping Manager DatasheetAnalytix Mapping Manager Datasheet
Analytix Mapping Manager Datasheet
 
Software Engineering UPTU
Software Engineering UPTUSoftware Engineering UPTU
Software Engineering UPTU
 
Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2
 
Resume_Ashwini
Resume_AshwiniResume_Ashwini
Resume_Ashwini
 
Software engineering : Layered Architecture
Software engineering : Layered ArchitectureSoftware engineering : Layered Architecture
Software engineering : Layered Architecture
 
software project management
software project managementsoftware project management
software project management
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineering
 
Resume - DWBI - 5years - Akshay Shaha
Resume - DWBI - 5years - Akshay ShahaResume - DWBI - 5years - Akshay Shaha
Resume - DWBI - 5years - Akshay Shaha
 

Viewers also liked

Ian Sommerville, Software Engineering, 9th Edition Ch 23
Ian Sommerville,  Software Engineering, 9th Edition Ch 23Ian Sommerville,  Software Engineering, 9th Edition Ch 23
Ian Sommerville, Software Engineering, 9th Edition Ch 23Mohammed Romi
 
Ch 4 software engineering
Ch 4 software engineeringCh 4 software engineering
Ch 4 software engineeringMohammed Romi
 
Ch15-Software Engineering 9
Ch15-Software Engineering 9Ch15-Software Engineering 9
Ch15-Software Engineering 9Ian Sommerville
 
Ian Sommerville, Software Engineering, 9th Edition Ch1
Ian Sommerville,  Software Engineering, 9th Edition Ch1Ian Sommerville,  Software Engineering, 9th Edition Ch1
Ian Sommerville, Software Engineering, 9th Edition Ch1Mohammed Romi
 
Ai 02 intelligent_agents(1)
Ai 02 intelligent_agents(1)Ai 02 intelligent_agents(1)
Ai 02 intelligent_agents(1)Mohammed Romi
 
Ian Sommerville, Software Engineering, 9th EditionCh 8
Ian Sommerville,  Software Engineering, 9th EditionCh 8Ian Sommerville,  Software Engineering, 9th EditionCh 8
Ian Sommerville, Software Engineering, 9th EditionCh 8Mohammed Romi
 
Ch24-Software Engineering 9
Ch24-Software Engineering 9Ch24-Software Engineering 9
Ch24-Software Engineering 9Ian Sommerville
 
Ch22-Software Engineering 9
Ch22-Software Engineering 9Ch22-Software Engineering 9
Ch22-Software Engineering 9Ian Sommerville
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9Ian Sommerville
 
Ch2-Software Engineering 9
Ch2-Software Engineering 9Ch2-Software Engineering 9
Ch2-Software Engineering 9Ian Sommerville
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9Ian Sommerville
 
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ian Sommerville,  Software Engineering, 9th Edition Ch 4Ian Sommerville,  Software Engineering, 9th Edition Ch 4
Ian Sommerville, Software Engineering, 9th Edition Ch 4Mohammed Romi
 
Ian Sommerville, Software Engineering, 9th Edition Ch2
Ian Sommerville,  Software Engineering, 9th Edition Ch2Ian Sommerville,  Software Engineering, 9th Edition Ch2
Ian Sommerville, Software Engineering, 9th Edition Ch2Mohammed Romi
 

Viewers also liked (20)

Ch12
Ch12Ch12
Ch12
 
Ian Sommerville, Software Engineering, 9th Edition Ch 23
Ian Sommerville,  Software Engineering, 9th Edition Ch 23Ian Sommerville,  Software Engineering, 9th Edition Ch 23
Ian Sommerville, Software Engineering, 9th Edition Ch 23
 
Ch2020
Ch2020Ch2020
Ch2020
 
Ch 4 software engineering
Ch 4 software engineeringCh 4 software engineering
Ch 4 software engineering
 
Ch7
Ch7Ch7
Ch7
 
Ch15-Software Engineering 9
Ch15-Software Engineering 9Ch15-Software Engineering 9
Ch15-Software Engineering 9
 
Ian Sommerville, Software Engineering, 9th Edition Ch1
Ian Sommerville,  Software Engineering, 9th Edition Ch1Ian Sommerville,  Software Engineering, 9th Edition Ch1
Ian Sommerville, Software Engineering, 9th Edition Ch1
 
Ai 02 intelligent_agents(1)
Ai 02 intelligent_agents(1)Ai 02 intelligent_agents(1)
Ai 02 intelligent_agents(1)
 
Chap4 RE validation
Chap4 RE validationChap4 RE validation
Chap4 RE validation
 
Ian Sommerville, Software Engineering, 9th EditionCh 8
Ian Sommerville,  Software Engineering, 9th EditionCh 8Ian Sommerville,  Software Engineering, 9th EditionCh 8
Ian Sommerville, Software Engineering, 9th EditionCh 8
 
Ch24-Software Engineering 9
Ch24-Software Engineering 9Ch24-Software Engineering 9
Ch24-Software Engineering 9
 
Ch 6
Ch 6Ch 6
Ch 6
 
Swiching
SwichingSwiching
Swiching
 
Ch22-Software Engineering 9
Ch22-Software Engineering 9Ch22-Software Engineering 9
Ch22-Software Engineering 9
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9
 
Ch2-Software Engineering 9
Ch2-Software Engineering 9Ch2-Software Engineering 9
Ch2-Software Engineering 9
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9
 
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ian Sommerville,  Software Engineering, 9th Edition Ch 4Ian Sommerville,  Software Engineering, 9th Edition Ch 4
Ian Sommerville, Software Engineering, 9th Edition Ch 4
 
Ian Sommerville, Software Engineering, 9th Edition Ch2
Ian Sommerville,  Software Engineering, 9th Edition Ch2Ian Sommerville,  Software Engineering, 9th Edition Ch2
Ian Sommerville, Software Engineering, 9th Edition Ch2
 
Ch3. agile sw dev
Ch3. agile sw devCh3. agile sw dev
Ch3. agile sw dev
 

Similar to Beit 381 se lec 20 - 31 - 12 apr25 - case tools and ascent1-55

Data modelling tool in CASE
Data modelling tool in CASEData modelling tool in CASE
Data modelling tool in CASEManju Pillai
 
Introduction,Software Process Models, Project Management
Introduction,Software Process Models, Project ManagementIntroduction,Software Process Models, Project Management
Introduction,Software Process Models, Project Managementswatisinghal
 
15 object orienteddesign
15 object orienteddesign15 object orienteddesign
15 object orienteddesignrandhirlpu
 
HelloChapter6fgfg-Artifacts__of_theProcess.ppt
HelloChapter6fgfg-Artifacts__of_theProcess.pptHelloChapter6fgfg-Artifacts__of_theProcess.ppt
HelloChapter6fgfg-Artifacts__of_theProcess.ppt19526YuvaKumarIrigi
 
CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1SIMONTHOMAS S
 
SAD REPORTING GROUP 2BCFGGGGHHHJJJJ.pptx
SAD REPORTING GROUP 2BCFGGGGHHHJJJJ.pptxSAD REPORTING GROUP 2BCFGGGGHHHJJJJ.pptx
SAD REPORTING GROUP 2BCFGGGGHHHJJJJ.pptxJakeariesMacarayo
 
03 module2-090710094221-phpapp02
03 module2-090710094221-phpapp0203 module2-090710094221-phpapp02
03 module2-090710094221-phpapp02Asadullah Tareen
 
MODULE 1 Software Product and Process_ SW ENGG 22CSE141.pdf
MODULE 1 Software Product and Process_ SW ENGG  22CSE141.pdfMODULE 1 Software Product and Process_ SW ENGG  22CSE141.pdf
MODULE 1 Software Product and Process_ SW ENGG 22CSE141.pdfJayanthi Kannan MK
 
unit 1.pptx regasts sthatbabs shshsbsvsbsh
unit 1.pptx regasts sthatbabs shshsbsvsbshunit 1.pptx regasts sthatbabs shshsbsvsbsh
unit 1.pptx regasts sthatbabs shshsbsvsbshsagarjsicg
 
Software systems engineering PRINCIPLES
Software systems engineering PRINCIPLESSoftware systems engineering PRINCIPLES
Software systems engineering PRINCIPLESIvano Malavolta
 
Software Development Methodologies.pptx
Software Development Methodologies.pptxSoftware Development Methodologies.pptx
Software Development Methodologies.pptxMohamedElshaikh10
 

Similar to Beit 381 se lec 20 - 31 - 12 apr25 - case tools and ascent1-55 (20)

Data modelling tool in CASE
Data modelling tool in CASEData modelling tool in CASE
Data modelling tool in CASE
 
Introduction,Software Process Models, Project Management
Introduction,Software Process Models, Project ManagementIntroduction,Software Process Models, Project Management
Introduction,Software Process Models, Project Management
 
Criteria For EA Tool Selection
Criteria For EA Tool SelectionCriteria For EA Tool Selection
Criteria For EA Tool Selection
 
SE notes 2.pdf
SE notes 2.pdfSE notes 2.pdf
SE notes 2.pdf
 
15 object orienteddesign
15 object orienteddesign15 object orienteddesign
15 object orienteddesign
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
HelloChapter6fgfg-Artifacts__of_theProcess.ppt
HelloChapter6fgfg-Artifacts__of_theProcess.pptHelloChapter6fgfg-Artifacts__of_theProcess.ppt
HelloChapter6fgfg-Artifacts__of_theProcess.ppt
 
12. Case Tools
12. Case Tools12. Case Tools
12. Case Tools
 
Unit 1.pdf
Unit 1.pdfUnit 1.pdf
Unit 1.pdf
 
sdlc.pptx
sdlc.pptxsdlc.pptx
sdlc.pptx
 
CASE (Computer Aided Software Design)
CASE (Computer Aided Software Design)CASE (Computer Aided Software Design)
CASE (Computer Aided Software Design)
 
CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1
 
SAD REPORTING GROUP 2BCFGGGGHHHJJJJ.pptx
SAD REPORTING GROUP 2BCFGGGGHHHJJJJ.pptxSAD REPORTING GROUP 2BCFGGGGHHHJJJJ.pptx
SAD REPORTING GROUP 2BCFGGGGHHHJJJJ.pptx
 
03 module2-090710094221-phpapp02
03 module2-090710094221-phpapp0203 module2-090710094221-phpapp02
03 module2-090710094221-phpapp02
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
MODULE 1 Software Product and Process_ SW ENGG 22CSE141.pdf
MODULE 1 Software Product and Process_ SW ENGG  22CSE141.pdfMODULE 1 Software Product and Process_ SW ENGG  22CSE141.pdf
MODULE 1 Software Product and Process_ SW ENGG 22CSE141.pdf
 
unit 1.pptx regasts sthatbabs shshsbsvsbsh
unit 1.pptx regasts sthatbabs shshsbsvsbshunit 1.pptx regasts sthatbabs shshsbsvsbsh
unit 1.pptx regasts sthatbabs shshsbsvsbsh
 
Software systems engineering PRINCIPLES
Software systems engineering PRINCIPLESSoftware systems engineering PRINCIPLES
Software systems engineering PRINCIPLES
 
Software Development Methodologies.pptx
Software Development Methodologies.pptxSoftware Development Methodologies.pptx
Software Development Methodologies.pptx
 
Computer Aided Software Engineering Nayab Awan
Computer Aided Software Engineering Nayab AwanComputer Aided Software Engineering Nayab Awan
Computer Aided Software Engineering Nayab Awan
 

More from babak danyal

Easy Steps to implement UDP Server and Client Sockets
Easy Steps to implement UDP Server and Client SocketsEasy Steps to implement UDP Server and Client Sockets
Easy Steps to implement UDP Server and Client Socketsbabak danyal
 
Java IO Package and Streams
Java IO Package and StreamsJava IO Package and Streams
Java IO Package and Streamsbabak danyal
 
Swing and Graphical User Interface in Java
Swing and Graphical User Interface in JavaSwing and Graphical User Interface in Java
Swing and Graphical User Interface in Javababak danyal
 
block ciphers and the des
block ciphers and the desblock ciphers and the des
block ciphers and the desbabak danyal
 
key distribution in network security
key distribution in network securitykey distribution in network security
key distribution in network securitybabak danyal
 
Lecture10 Signal and Systems
Lecture10 Signal and SystemsLecture10 Signal and Systems
Lecture10 Signal and Systemsbabak danyal
 
Lecture8 Signal and Systems
Lecture8 Signal and SystemsLecture8 Signal and Systems
Lecture8 Signal and Systemsbabak danyal
 
Lecture7 Signal and Systems
Lecture7 Signal and SystemsLecture7 Signal and Systems
Lecture7 Signal and Systemsbabak danyal
 
Lecture6 Signal and Systems
Lecture6 Signal and SystemsLecture6 Signal and Systems
Lecture6 Signal and Systemsbabak danyal
 
Lecture5 Signal and Systems
Lecture5 Signal and SystemsLecture5 Signal and Systems
Lecture5 Signal and Systemsbabak danyal
 
Lecture4 Signal and Systems
Lecture4  Signal and SystemsLecture4  Signal and Systems
Lecture4 Signal and Systemsbabak danyal
 
Lecture3 Signal and Systems
Lecture3 Signal and SystemsLecture3 Signal and Systems
Lecture3 Signal and Systemsbabak danyal
 
Lecture2 Signal and Systems
Lecture2 Signal and SystemsLecture2 Signal and Systems
Lecture2 Signal and Systemsbabak danyal
 
Lecture1 Intro To Signa
Lecture1 Intro To SignaLecture1 Intro To Signa
Lecture1 Intro To Signababak danyal
 
Lecture9 Signal and Systems
Lecture9 Signal and SystemsLecture9 Signal and Systems
Lecture9 Signal and Systemsbabak danyal
 
Cns 13f-lec03- Classical Encryption Techniques
Cns 13f-lec03- Classical Encryption TechniquesCns 13f-lec03- Classical Encryption Techniques
Cns 13f-lec03- Classical Encryption Techniquesbabak danyal
 
Classical Encryption Techniques in Network Security
Classical Encryption Techniques in Network SecurityClassical Encryption Techniques in Network Security
Classical Encryption Techniques in Network Securitybabak danyal
 

More from babak danyal (20)

applist
applistapplist
applist
 
Easy Steps to implement UDP Server and Client Sockets
Easy Steps to implement UDP Server and Client SocketsEasy Steps to implement UDP Server and Client Sockets
Easy Steps to implement UDP Server and Client Sockets
 
Java IO Package and Streams
Java IO Package and StreamsJava IO Package and Streams
Java IO Package and Streams
 
Swing and Graphical User Interface in Java
Swing and Graphical User Interface in JavaSwing and Graphical User Interface in Java
Swing and Graphical User Interface in Java
 
Tcp sockets
Tcp socketsTcp sockets
Tcp sockets
 
block ciphers and the des
block ciphers and the desblock ciphers and the des
block ciphers and the des
 
key distribution in network security
key distribution in network securitykey distribution in network security
key distribution in network security
 
Lecture10 Signal and Systems
Lecture10 Signal and SystemsLecture10 Signal and Systems
Lecture10 Signal and Systems
 
Lecture8 Signal and Systems
Lecture8 Signal and SystemsLecture8 Signal and Systems
Lecture8 Signal and Systems
 
Lecture7 Signal and Systems
Lecture7 Signal and SystemsLecture7 Signal and Systems
Lecture7 Signal and Systems
 
Lecture6 Signal and Systems
Lecture6 Signal and SystemsLecture6 Signal and Systems
Lecture6 Signal and Systems
 
Lecture5 Signal and Systems
Lecture5 Signal and SystemsLecture5 Signal and Systems
Lecture5 Signal and Systems
 
Lecture4 Signal and Systems
Lecture4  Signal and SystemsLecture4  Signal and Systems
Lecture4 Signal and Systems
 
Lecture3 Signal and Systems
Lecture3 Signal and SystemsLecture3 Signal and Systems
Lecture3 Signal and Systems
 
Lecture2 Signal and Systems
Lecture2 Signal and SystemsLecture2 Signal and Systems
Lecture2 Signal and Systems
 
Lecture1 Intro To Signa
Lecture1 Intro To SignaLecture1 Intro To Signa
Lecture1 Intro To Signa
 
Lecture9 Signal and Systems
Lecture9 Signal and SystemsLecture9 Signal and Systems
Lecture9 Signal and Systems
 
Lecture9
Lecture9Lecture9
Lecture9
 
Cns 13f-lec03- Classical Encryption Techniques
Cns 13f-lec03- Classical Encryption TechniquesCns 13f-lec03- Classical Encryption Techniques
Cns 13f-lec03- Classical Encryption Techniques
 
Classical Encryption Techniques in Network Security
Classical Encryption Techniques in Network SecurityClassical Encryption Techniques in Network Security
Classical Encryption Techniques in Network Security
 

Recently uploaded

4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptxmary850239
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITWQ-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITWQuiz Club NITW
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxSayali Powar
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptxmary850239
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxkarenfajardo43
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research DiscourseAnita GoswamiGiri
 
Multi Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleMulti Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleCeline George
 
How to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseHow to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseCeline George
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
How to Fix XML SyntaxError in Odoo the 17
How to Fix XML SyntaxError in Odoo the 17How to Fix XML SyntaxError in Odoo the 17
How to Fix XML SyntaxError in Odoo the 17Celine George
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptxDhatriParmar
 
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...DhatriParmar
 

Recently uploaded (20)

4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of EngineeringFaculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITWQ-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research Discourse
 
Paradigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTAParadigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTA
 
Multi Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleMulti Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP Module
 
Mattingly "AI & Prompt Design: Large Language Models"
Mattingly "AI & Prompt Design: Large Language Models"Mattingly "AI & Prompt Design: Large Language Models"
Mattingly "AI & Prompt Design: Large Language Models"
 
prashanth updated resume 2024 for Teaching Profession
prashanth updated resume 2024 for Teaching Professionprashanth updated resume 2024 for Teaching Profession
prashanth updated resume 2024 for Teaching Profession
 
How to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseHow to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 Database
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
How to Fix XML SyntaxError in Odoo the 17
How to Fix XML SyntaxError in Odoo the 17How to Fix XML SyntaxError in Odoo the 17
How to Fix XML SyntaxError in Odoo the 17
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
 
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
 

Beit 381 se lec 20 - 31 - 12 apr25 - case tools and ascent1-55

  • 1. SE-381 Software Engineering BEIT-V Lecture # 20 (Computer Aided Software Engineering (CASE) Tools)
  • 2. Computer Aided Software Engineering (CASE) – Encompasses wide range of Software programs that are used to support Sw Process activities such as Requirements Analysis, System Modeling, Debugging, Testing etc – All methods/methodologies come with associated CASE Technology such as • Editors with specific notations, • Analysis tools to check system models, • Report Generators to create system documentation, • Code generators to generate source/skeleton code from system model • Change Management tools to manage changes and system configurations etc
  • 3. CASE – Computer Aided (or Assisted) Software Engineering – Note – it is NOT ‘Computer Automated’ – Computers are to Assist, and especially in creative activities like Software Development, they cannot replace humans, the can only aid or assist – CASE tools are around since the inception of SD arena, their form and shape is constantly improving. • Eg, these used to be Line or Text Editors for now used context-sensitive Intelligent Editors
  • 4. CASE Supports – Software process activities such as Requirements Engineering, Design, Program Development, Testing, Documentation, Projec t Management, Configuration Management etc. – CASE Tools include tools like • Design (Textual and Graphical) Editors • Data Dictionaries • Compilers, Debuggers, IPDEs, Context Sensitive and Structure Editors, • System Building and Change management tools • Resource and Project Management tools • Reverse Engineering Tools etc
  • 5. CASE Status [Som04] – In 1980s and 1990s, it was hoped that CASE tools will bring in 3-4 fold productivity enhancement, but according to [Som04] this enhancement has been in the range of 40%. – The main impediments for the progress has been • Software Development is a creative activity and still computers and Sw will take a long time to do it without human interaction. • SD is a team activity and most of the time is spent in mutual communication, CASE has still not addressed that domain – The areas addressed by CASE are mostly the ones where the recurring procedures have been automated.
  • 6. CASE Status [Sch07] • Ref: Myers 1992 • Reifer investigated 45 companies in 10 industries. 50% in IS, 25% RT Aerospace and 25% related to Scientific Areas • Average Annual productivity gains 9% (RTA), 12% (IS). And Costs $125K per user of introducing CASE Technology
  • 7. CASE Tools • CASE Tools • handle the repetitive rigor / drudgery of the software process and in there SD activities eg Word Processors and Drawing Systems facilitate software engineers to maintain up-to-date documentation and design by facilitating Change and easy Reproduction, but documentation is done by humans • CASE tools help Sw Engineers to encounter complexity of the SD Eg maintenance of a Data Dictionary even of a moderate size software is manually not possible • These are around since inception of software but their functionality, UI, reliability, form, … has lot changed
  • 8. Why CASE? • To – Enhance productivity of developers – Introduce Consistency in deliverables coming from different phases, stages and tools – Counter rigor and drudgery involved in docum – entation and analysis of complex software – Intelligently check Consistency and balancing of different artifacts and diagrams – Support team work at analysis and design levels – Integrate inputs and outputs generated by different tools for different phases of software development
  • 9. Various Categorizations of CASE – Different authors have defined various categories for CASE Tools, in general these are • Function Based CASE Categories [Som04] • Process or Activities Based CASE Categories [Som04] • Coverage Based Categorization or classification with Integration perspective [Som04, Sch02] • Depth Base Categorization [Sch02, Bit92] • Phase and Non-Phase wise Categorization and 1st and 2nd Generations of CASE tools [Mal05]
  • 10. Function Based Classification of CASE Tools [Sch02]
  • 11. Activity Based Classification of CASE Tools [Som04]
  • 12. Taxonomy / Classification of CASE (Depth Based) – CASE tools can be specific to one or more activities of SDLC. A number of activities can constitute a Phase and vice versa – There could be many tools to support the same activity and in contrast the functionality of a Sw tool can span to more than one activity – Further an Activity Eg Coding, may comprise of multiple Tasks, Eg Editing, Compiling, Linking and Loading; and the boundaries of an activity and a phase may not be same. – Nature wise CASE Tools are categorized by (Bitter 1992 and Schach 2004) as • Upper CASE or Front-End Tools which support the Requirements, Specification, Planning and Design phases, and • Lower CASE or Back-End Tools which assist in Implementation, Integration, Testing and Maintenance
  • 13. Ref: CASE in G G Bitter (Editor); Macmillan Encyclopedia of Computers, 1991, Vol 1, Macmillan Pub Co NY (1992), pp:185-193
  • 14. Data Dictionary (DD) • Keeps record of all data items i.e. system variables, data structures - their variable names, data types and locations where each one of these is defined and used, Dimensions, Size etc and enables other parts of the tool (or Tools) to – Use them – Check consistency of implementation of these data items in different parts of the system – Ensure completeness i.e. all data items needed by design are defined in DD and are specified in Specification document – Provide data to different Report Generators (a component that generates the code needed to produce reports) and Screen Generators (which generate code to assist the developers for generating their Data Capture (input) screens and prototypes)
  • 15. DD is the back-bone of any CASE Tool as it integrates different parts of the tool and enables them to share data items unnoticeably and seamlessly Workbenches are combinations of various Sw tools to support one or more phases of SDLC Eg DD combined with the set of Graphical Representations, Screen & Report Generators, Consistency Checkers can form a workbench to Specification and Design phases CASE Environments are the integration of Workbenches that support the whole or most part of the Software Process. Late 80s and Early 90s Borland’s Turbo series SDEs or Programming Environments to support Implementation, Integration and Testing phases. Some Examples: ADW, Excelerator, Analyst/Designer, STP – Software Through Pictures, System
  • 17. Tools, Workbenches and Environments in CASE – Another View
  • 19. Architecture of Repository (DD) Based Integrated CASE Tool [Som04]
  • 21. Scope of CASE • CASE Tools have been around since Software – Programming-in-the-Small – in Single module • Line-Editors to Page-Editors and Structure-Editors – Programming-in-the-Large – at multi-Module or Code level • Debuggers and Optimizing Compilers have replaced core dumps and segmentation faults • Dbx, Make – Unix utilities to debug and compile larger jobs – Programming-in-the-Many – using teams • On-line Interface Checking – to cure arguments and object file miss- matches • Non-Phase CASE Tools – Project Management – MS Project, Prima Veirra – Configuration Management - Versioning, SCCS
  • 22. Graphical Tool • Additional features – Data dictionary – Screen and report generators – Consistency checker to ensure that various views are always consistent • Specifications and design workbench • Online Documentation – Problems with • Manuals • Updating • Essential online documentation – Help information – Programming standards – Manuals
  • 23. CASE Tool for Structured and OOA/D ASCENT Automated Strict CASE Environment at Teesside (Product of a University at UK)
  • 24.
  • 25.
  • 26. Software Versions – Software is composed of modules, each having numerous versions – Different versions of constituting modules lead to different versions of Software – For implementation, testing, operation one has to be very specific, which version is being referred – For User support, or bugs eradication, the respective bugs are to be reproduced using respective versions – During maintenance, at all times there are at least two versions of the product: • The old version, and • The new version – Two types of versions: revisions and variations
  • 27. Revisions and Variations • Revision – Version to fix a fault in the module, replaces its predecessor – We cannot throw away an incorrect version – Perfective and adaptive maintenance also results in revisions – Different versions are to be kept in repository to reproduce the errors being received, and to analyze and correct them
  • 28. Revisions and Variations (contd) • Variation – Version for different operating system–hardware – Variations are designed to coexist in parallel
  • 29. Configuration Control • Every module exists in three forms – Source code; object code; executable load image • Configuration – Version of each module from which a given version of a product is built
  • 30. Pareto Analysis In any series of elements to be controlled, a selected, small fraction, in terms of the number of elements, always account for the large fraction in terms of effect Vilfredo Pareto (1848 – 1923)
  • 31. References 1. Ian Sommerville (2004); Software Engineering, 7th Ed, Pearson Education, New Delhi, Ch-4. (4.5) Computer Aided Software Engineering, pp 108-111 2. Rajib Mall (2005); Fundamentals of SE, 2nd Ed, Prentice-Hall of India, New Delhi, Ch-12 Computer Aided Software Engineering pp 302-309 3. Stephen Schach (2007)l Software Engineering, 7th Ed, Tata McGraw-Hill Publishing Company, New Delhi, Ch-5 (5.4-9) CASE tools, pp 330-341 4. CASE in G G Bitter (Editor); Macmillan Encyclopedia of Computers, 1991, Vol 1, Macmillan Pub Co NY (1992), pp:185-193