SlideShare ist ein Scribd-Unternehmen logo
1 von 24
SOFTWARE ENGINEERING
UNIT-5
ABHIMANYU MISHRA
ASSISTANT PROF.(CSE)
JETGI
24/12/16 1Abhimanyu Mishra(CSE) JETGI
 Software Evolutionary.
 Need for maintenance.
 Categories of maintenance.
 Cost of maintenance.
 Software Re-engineering.
 Reverse engineering.
 Software configuration management activities.
 Change control process.
 Software version control.
 Overview of CASE Tools.
 COCOMO Model, RMA, Software Risk Analysis & Management.
CONTENTS
24/12/16 2Abhimanyu Mishra(CSE) JETGI
 The software development evolution processes vary considerably on the type of
software being maintained, development process used in the organization and the
people involved in the process.
 System change proposal are drivers for system evolution in the organization.
 These changes proposal may involve existing requirements that have not been
implemented in the released system, request for new requirements and the bugs
repair from stakeholders and new ideas and proposals for software improvement
from system development team.
 The evolution process includes fundamental activities of change analysis, release
planning, system implementation and release a system to customer. The cost and
impact of these changes are accessed to see how much system is affected by the
change and how much it might cost to implement the change.
SOFTWARE EVOLUTION :
24/12/16 3Abhimanyu Mishra(CSE) JETGI
24/12/16 4Abhimanyu Mishra(CSE) JETGI
Change Identification
process
New system
Change
Proposal
Software
Evolution Process
24/12/16 5Abhimanyu Mishra(CSE) JETGI
SOFTWARE MAINTENANCE:
Software maintenance is recognize as an important part of software life cycle.
It is the process of changing system after it has been delivered to the customer.
“According to the standard for software maintenance 1992, software
maintenance is modification of software product after delivery to correct
faults, to improve performance of other attributes or to adopt the product to a
modified environment”.
Need for software maintenance- All hardware system needs maintenance as
due to ageing the hardware wear out and need replacement, but software does
not age and don’t wear out then what is the need for maintenance. The
software needs maintenance due to:-
i. Over a period of time, software’s original requirement may change to
reflect the customer’s need.
ii. Errors undetected during software development may be found during the
use and require correction.
iii. With time new technologies are introduced such as new hardware, o.s , etc.
24/12/16 6Abhimanyu Mishra(CSE) JETGI
CATEGORIES OF MAINTENANCE:
I. Corrective maintenance- Corrective maintenance involves changing a
software application to remove errors and bugs. While in software
development attention is paid to remove all errors and bugs but even some
errors and bugs are left uncovered and they come in notice after a system
has been operation for a long time.
II. Adaptive maintenance- This type of maintenance is concerned with
external changes. Even if the software is error free, it is possible that the
environment in which the software works will often changes.
III. Perfective maintenance- Perfective maintenance is an activity that we
undertake to improve the maintainability, performance and other attributes
of our application. It include all change insertion , deletions, modification,
extension and enhancement made to the application to meet evolving user
need.
The cost of software maintenance is very high. More than 65% of software life
cycle cost is expended in the maintenance activities.
Cost of software maintenance can be control by postponing the development
opportunity of software maintenance but this will cause following intangible cost:-
 Customer dissatisfaction when request for repair cannot be addresses in a manner.
 Reduction in overall software quality as a result of changes that introduce hidden
errors in maintained software.
 M=P+K(C-D)
M= Total efforts expended on maintenance
P= Productive software
K= An empirical constant
C= Measure of complexity
D= Measure of degree of familiarity with the software.
COST OF SOFTWARE MAINTENANCE:
24/12/16 7Abhimanyu Mishra(CSE) JETGI
24/12/16 8Abhimanyu Mishra(CSE) JETGI
SOFTWARE RE-ENGINEERING:
Software re-engineering is concerned with taking existing legacy systems and
re- implementing them to make them more maintainable.
“The IBM user group guide define software engineering as:- The process of
modifying the internal mechanisms of a system or program or the data
structures of a system or program without changing its functionality”.
The following suggestions may be useful for the modification of the legacy
code:
 Study code well before attempting changes.
 Concentrate on overall control flow and not coding.
 Heavily comment internal code.
 Create cross reference.
 Build symbol tables.
 Keep detailed maintenance document
 Use modern design technique.
24/12/16 9Abhimanyu Mishra(CSE) JETGI
BENEFITS OF RE-ENGINEERING PHASE:
 Costs- Evidence from a number of US project suggest that re-
engineering of an existing software system cost significantly less than
new.
 Lower Risk- Software re- engineering is based on incremental
improvement of system, rather than radical system replacement.
 Better use of existing staff
 Incremental Development
REVERSE ENGINEERING
• Reverse engineering, in computer programming, is a technique used to
analyze software in order to identify and understand the parts it is
composed of. The usual reasons for reverse engineering a quantity of
software are to recreate the program, to build something similar to it, to
exploit its weaknesses or strengthen its defenses.
12/31/2016 Abhimanyu Mishra(CSE) JETGI 10
DIAGRAM:-
Reverse Engineering
12/31/2016 Abhimanyu Mishra(CSE) JETGI 11
Proposal
Description
Code
Performance
WHAT IS CAPABILITY MATURITY MODEL?
The Software Engineering Institute (SEI) Capability Maturity Model (CMM)
specifies an increasing series of levels of a software development group. The
higher level, better the software development process, hence getting each
level is an exclusive and inefficient process
12/31/2016 Abhimanyu Mishra(CSE) JETGI 12
There are five levels:
(i) Initial
(ii) Repeatable
(iii) Defined
(iv) Managed
(v) Optimizing
12/31/2016 Abhimanyu Mishra(CSE) JETGI 13
Diagram: CAPABILITY MATURITY MODEL
Optimizing
(Process)
Managed
(Process measure and controlled)
Defined
(Categories for the Organization )
Repeatable
(Its often reactive)
Initial
(Unpredictable and poorly controlled)
12/31/2016 Abhimanyu Mishra(CSE) JETGI 14
CHANGE CONTROL PROCESS
Change control is a methodical approach to handling all changes complete to
a product or system. The purpose are to ensure that no redundant changes
are made, that all changes are documented, that services are not without
need disrupted and that resources are used efficiently.
12/31/2016 Abhimanyu Mishra(CSE) JETGI 15
Diagram: (CCP)
12/31/2016 Abhimanyu Mishra(CSE) JETGI 16
Iden
tify.
Impl
eme
nt
Appr
ove.
Acce
ss.
Follo
w-
Up
SOFTWARE VERSION CONTROLS
Version control systems are a category of software tools that help a software
team manage changes to source code finished time. Version control software
keeps track of every adjustment to the code in a special kind of database. If a
error are made, developers could turn back the clock and compare earlier
versions of the code to help fix the error while minimizing interruption to all
team members.
12/31/2016 Abhimanyu Mishra(CSE) JETGI 17
TASK A
Branch Merge
Development
(Ver1.0) (Ver 1.1) Ver(1.2) Ver(1.3) Ver(1.4)
Branch Merge
TASK B
12/31/2016 Abhimanyu Mishra(CSE) JETGI 18
CASE (COMPUTER-AIDED SOFTWARE
ENGINEERING)
CASE (computer-aided software engineering) is the use of a computer-
assisted method to organize and control the development of software,
especially on large, complex projects involving many software components
and people. Using CASE allows designers, code writers, testers, planners, and
managers to share a common view of where a project stands at each stage of
development. CASE helps ensure a disciplined, check-pointed process. A CASE
tool may portray progress (or lack of it) graphically. It may also serve as a
repository for or be linked to document and program libraries containing the
project's business plans, design requirements, design specifications, detailed
code specifications, the code units, test cases and results, and marketing and
service plans.
12/31/2016 Abhimanyu Mishra(CSE) JETGI 19
Diagram: CASE
Upper Case
Integrated Case
Lower Case
12/31/2016 Abhimanyu Mishra(CSE) JETGI 20
Analysis
Planning
Design
Implementation
Testing
Maintenance
COCOMO MODEL
The Constructive Cost Model (COCOMO) is an algorithmic software cost
estimation model developed by Barry Boehm. The model are using a basic
deterioration formula, with parameters that is resulting from antique project
data and current project characteristics.
12/31/2016 Abhimanyu Mishra(CSE) JETGI 21
Diagram: COCOMO Model
12/31/2016 Abhimanyu Mishra(CSE) JETGI 22
COCOMO
Intermediate
COCOMO model
Complete COCOMO
model
Basic COCOMO
model
SOFTWARE RISK MANAGEMENT
Risk is an anticipation of loss, a potential problem that not occur in the future.
It is generally caused due to lack of information, control or time. A possibility
of grief from loss in software development process is called a software risk.
Loss can be anything, increase in production cost, development of poor quality
software, not being able to complete the project on time. Software risk exists
because the future is uncertain and there are many well-known and indefinite
things that cannot be incorporated in the project plan. A software risk can be of
two types (a) internal risks that are within the control of the project manager
(b) external risks that are beyond the control of project manager. Risk
management is carried out to:
(i) Identify the risk
(ii) Reduce the impact of risk
(iii) Reduce the probability or like of risk
(iv) Risk monitoring
12/31/2016 Abhimanyu Mishra(CSE) JETGI 23
Problem? Fill the box
12/31/2016 Abhimanyu Mishra(CSE) JETGI 24
Risk
Management
Process

Weitere ähnliche Inhalte

Was ist angesagt?

REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process ModelsAhsan Rahim
 
Visual programming lecture
Visual programming lecture Visual programming lecture
Visual programming lecture AqsaHayat3
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design Saqib Raza
 
Evolving role of Software
Evolving role of SoftwareEvolving role of Software
Evolving role of SoftwareShankar Dahal
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsHassan A-j
 
Hostel Management system Report
Hostel Management system ReportHostel Management system Report
Hostel Management system ReportPrasoon Rawat
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationAjit Nayak
 
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)IrtazaAfzal3
 
Software Process Improvement
Software Process ImprovementSoftware Process Improvement
Software Process ImprovementBilal Shah
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering arvind pandey
 

Was ist angesagt? (20)

Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Visual programming lecture
Visual programming lecture Visual programming lecture
Visual programming lecture
 
Cohesion and coupling
Cohesion and couplingCohesion and coupling
Cohesion and coupling
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design
 
Software testing
Software testing Software testing
Software testing
 
Evolving role of Software
Evolving role of SoftwareEvolving role of Software
Evolving role of Software
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Hostel Management system Report
Hostel Management system ReportHostel Management system Report
Hostel Management system Report
 
What is agile model
What is agile modelWhat is agile model
What is agile model
 
Software design
Software designSoftware design
Software design
 
Prototyping model
Prototyping modelPrototyping model
Prototyping model
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
 
Software Process Improvement
Software Process ImprovementSoftware Process Improvement
Software Process Improvement
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering
 
Assemblies
AssembliesAssemblies
Assemblies
 

Andere mochten auch

Ch11 input output systems
Ch11 input output systemsCh11 input output systems
Ch11 input output systemsissbp
 
Os5 2
Os5 2Os5 2
Os5 2issbp
 
Class5
 Class5 Class5
Class5issbp
 
Os2 2
Os2 2Os2 2
Os2 2issbp
 
Os6 2
Os6 2Os6 2
Os6 2issbp
 
Os4 2
Os4 2Os4 2
Os4 2issbp
 
Class9
 Class9 Class9
Class9issbp
 
Lecture 7: Definite Clause Grammars
Lecture 7: Definite Clause GrammarsLecture 7: Definite Clause Grammars
Lecture 7: Definite Clause GrammarsCS, NcState
 
Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5Abhimanyu Mishra
 
Automated Web Service Change Management (AWSCM) A tool published at IEEE Clou...
Automated Web Service Change Management (AWSCM) A tool published at IEEE Clou...Automated Web Service Change Management (AWSCM) A tool published at IEEE Clou...
Automated Web Service Change Management (AWSCM) A tool published at IEEE Clou...Animesh Chaturvedi
 
Pattern detection in mealy machine
Pattern detection in mealy machinePattern detection in mealy machine
Pattern detection in mealy machineAnimesh Chaturvedi
 
Os10 2
Os10 2Os10 2
Os10 2issbp
 

Andere mochten auch (20)

Compiler unit 4
Compiler unit 4Compiler unit 4
Compiler unit 4
 
5 chap - MAINTENANCE
5 chap - MAINTENANCE5 chap - MAINTENANCE
5 chap - MAINTENANCE
 
Os2
Os2Os2
Os2
 
Ch11 input output systems
Ch11 input output systemsCh11 input output systems
Ch11 input output systems
 
Os4
Os4Os4
Os4
 
Os6
Os6Os6
Os6
 
Os5 2
Os5 2Os5 2
Os5 2
 
Class5
 Class5 Class5
Class5
 
Os2 2
Os2 2Os2 2
Os2 2
 
Os6 2
Os6 2Os6 2
Os6 2
 
Os4 2
Os4 2Os4 2
Os4 2
 
Class9
 Class9 Class9
Class9
 
Lecture 7: Definite Clause Grammars
Lecture 7: Definite Clause GrammarsLecture 7: Definite Clause Grammars
Lecture 7: Definite Clause Grammars
 
Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5
 
Design1
Design1Design1
Design1
 
Os5
Os5Os5
Os5
 
Automated Web Service Change Management (AWSCM) A tool published at IEEE Clou...
Automated Web Service Change Management (AWSCM) A tool published at IEEE Clou...Automated Web Service Change Management (AWSCM) A tool published at IEEE Clou...
Automated Web Service Change Management (AWSCM) A tool published at IEEE Clou...
 
Pattern detection in mealy machine
Pattern detection in mealy machinePattern detection in mealy machine
Pattern detection in mealy machine
 
Cspc final
Cspc finalCspc final
Cspc final
 
Os10 2
Os10 2Os10 2
Os10 2
 

Ähnlich wie Software Engineering unit 5

Software Engineering Unit 1
Software Engineering Unit 1Software Engineering Unit 1
Software Engineering Unit 1Abhimanyu Mishra
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1Badar Waseer
 
SOFTWARE REQUIREMENT CHANGE EFFORT ESTIMATION MODEL PROTOTYPE TOOL FOR SOFTWA...
SOFTWARE REQUIREMENT CHANGE EFFORT ESTIMATION MODEL PROTOTYPE TOOL FOR SOFTWA...SOFTWARE REQUIREMENT CHANGE EFFORT ESTIMATION MODEL PROTOTYPE TOOL FOR SOFTWA...
SOFTWARE REQUIREMENT CHANGE EFFORT ESTIMATION MODEL PROTOTYPE TOOL FOR SOFTWA...ijseajournal
 
Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)MuhammadTalha436
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineeringsmumbahelp
 
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...ijseajournal
 
Software Project Planning IV
Software Project Planning IVSoftware Project Planning IV
Software Project Planning IVGagan Deep
 
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...ijseajournal
 
Chapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfChapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfVikasRai405977
 
Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019MuhammadTalha436
 
The Software Engineering Profession SWE311The Software Enginee.docx
The Software Engineering Profession SWE311The Software Enginee.docxThe Software Engineering Profession SWE311The Software Enginee.docx
The Software Engineering Profession SWE311The Software Enginee.docxssusera34210
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineeringsmumbahelp
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models Satya P. Joshi
 
How to Build Software from Scratch in 5 Simple Steps.pdf
How to Build Software from Scratch in 5 Simple Steps.pdfHow to Build Software from Scratch in 5 Simple Steps.pdf
How to Build Software from Scratch in 5 Simple Steps.pdfBaek Yongsun
 

Ähnlich wie Software Engineering unit 5 (20)

Software Engineering Unit 1
Software Engineering Unit 1Software Engineering Unit 1
Software Engineering Unit 1
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1
 
Agile process
Agile processAgile process
Agile process
 
Agile process
Agile processAgile process
Agile process
 
SOFTWARE REQUIREMENT CHANGE EFFORT ESTIMATION MODEL PROTOTYPE TOOL FOR SOFTWA...
SOFTWARE REQUIREMENT CHANGE EFFORT ESTIMATION MODEL PROTOTYPE TOOL FOR SOFTWA...SOFTWARE REQUIREMENT CHANGE EFFORT ESTIMATION MODEL PROTOTYPE TOOL FOR SOFTWA...
SOFTWARE REQUIREMENT CHANGE EFFORT ESTIMATION MODEL PROTOTYPE TOOL FOR SOFTWA...
 
Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineering
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
 
Software Project Planning IV
Software Project Planning IVSoftware Project Planning IV
Software Project Planning IV
 
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
APPLYING CONTINUOUS INTEGRATION FOR INCREASING THE MAINTENANCE QUALITY AND EF...
 
Spm unit1
Spm unit1Spm unit1
Spm unit1
 
Chapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfChapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdf
 
Agiel sw development
Agiel sw developmentAgiel sw development
Agiel sw development
 
Software models
Software modelsSoftware models
Software models
 
Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019
 
The Software Engineering Profession SWE311The Software Enginee.docx
The Software Engineering Profession SWE311The Software Enginee.docxThe Software Engineering Profession SWE311The Software Enginee.docx
The Software Engineering Profession SWE311The Software Enginee.docx
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineering
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models
 
How to Build Software from Scratch in 5 Simple Steps.pdf
How to Build Software from Scratch in 5 Simple Steps.pdfHow to Build Software from Scratch in 5 Simple Steps.pdf
How to Build Software from Scratch in 5 Simple Steps.pdf
 

Mehr von Abhimanyu Mishra

Mehr von Abhimanyu Mishra (19)

Cd unit i
Cd unit iCd unit i
Cd unit i
 
Presentation1(JIT gnomio)
Presentation1(JIT gnomio)Presentation1(JIT gnomio)
Presentation1(JIT gnomio)
 
Sta unit 5(abimanyu)
Sta unit 5(abimanyu)Sta unit 5(abimanyu)
Sta unit 5(abimanyu)
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
 
Sta unit 4(abimanyu)
Sta unit 4(abimanyu)Sta unit 4(abimanyu)
Sta unit 4(abimanyu)
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
 
Sta unit 2(abimanyu)
Sta unit 2(abimanyu)Sta unit 2(abimanyu)
Sta unit 2(abimanyu)
 
Unit1
Unit1Unit1
Unit1
 
Daa unit 5
Daa unit 5Daa unit 5
Daa unit 5
 
Daa unit 4
Daa unit 4Daa unit 4
Daa unit 4
 
Daa unit 3
Daa unit 3Daa unit 3
Daa unit 3
 
Daa unit 2
Daa unit 2Daa unit 2
Daa unit 2
 
Daa unit 1
Daa unit 1Daa unit 1
Daa unit 1
 
Software Engineering unit 4
Software Engineering unit 4Software Engineering unit 4
Software Engineering unit 4
 
Software Engineering unit 2
Software Engineering unit 2Software Engineering unit 2
Software Engineering unit 2
 
Theory of automata and formal languages Unit 4
Theory of automata and formal languages Unit 4Theory of automata and formal languages Unit 4
Theory of automata and formal languages Unit 4
 
Theory of Automata and formal languages Unit 3
Theory of Automata and formal languages Unit 3Theory of Automata and formal languages Unit 3
Theory of Automata and formal languages Unit 3
 
Theory of Automata and formal languages unit 2
Theory of Automata and formal languages unit 2Theory of Automata and formal languages unit 2
Theory of Automata and formal languages unit 2
 
Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1
 

Kürzlich hochgeladen

UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 

Kürzlich hochgeladen (20)

UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 

Software Engineering unit 5

  • 1. SOFTWARE ENGINEERING UNIT-5 ABHIMANYU MISHRA ASSISTANT PROF.(CSE) JETGI 24/12/16 1Abhimanyu Mishra(CSE) JETGI
  • 2.  Software Evolutionary.  Need for maintenance.  Categories of maintenance.  Cost of maintenance.  Software Re-engineering.  Reverse engineering.  Software configuration management activities.  Change control process.  Software version control.  Overview of CASE Tools.  COCOMO Model, RMA, Software Risk Analysis & Management. CONTENTS 24/12/16 2Abhimanyu Mishra(CSE) JETGI
  • 3.  The software development evolution processes vary considerably on the type of software being maintained, development process used in the organization and the people involved in the process.  System change proposal are drivers for system evolution in the organization.  These changes proposal may involve existing requirements that have not been implemented in the released system, request for new requirements and the bugs repair from stakeholders and new ideas and proposals for software improvement from system development team.  The evolution process includes fundamental activities of change analysis, release planning, system implementation and release a system to customer. The cost and impact of these changes are accessed to see how much system is affected by the change and how much it might cost to implement the change. SOFTWARE EVOLUTION : 24/12/16 3Abhimanyu Mishra(CSE) JETGI
  • 4. 24/12/16 4Abhimanyu Mishra(CSE) JETGI Change Identification process New system Change Proposal Software Evolution Process
  • 5. 24/12/16 5Abhimanyu Mishra(CSE) JETGI SOFTWARE MAINTENANCE: Software maintenance is recognize as an important part of software life cycle. It is the process of changing system after it has been delivered to the customer. “According to the standard for software maintenance 1992, software maintenance is modification of software product after delivery to correct faults, to improve performance of other attributes or to adopt the product to a modified environment”. Need for software maintenance- All hardware system needs maintenance as due to ageing the hardware wear out and need replacement, but software does not age and don’t wear out then what is the need for maintenance. The software needs maintenance due to:- i. Over a period of time, software’s original requirement may change to reflect the customer’s need. ii. Errors undetected during software development may be found during the use and require correction. iii. With time new technologies are introduced such as new hardware, o.s , etc.
  • 6. 24/12/16 6Abhimanyu Mishra(CSE) JETGI CATEGORIES OF MAINTENANCE: I. Corrective maintenance- Corrective maintenance involves changing a software application to remove errors and bugs. While in software development attention is paid to remove all errors and bugs but even some errors and bugs are left uncovered and they come in notice after a system has been operation for a long time. II. Adaptive maintenance- This type of maintenance is concerned with external changes. Even if the software is error free, it is possible that the environment in which the software works will often changes. III. Perfective maintenance- Perfective maintenance is an activity that we undertake to improve the maintainability, performance and other attributes of our application. It include all change insertion , deletions, modification, extension and enhancement made to the application to meet evolving user need.
  • 7. The cost of software maintenance is very high. More than 65% of software life cycle cost is expended in the maintenance activities. Cost of software maintenance can be control by postponing the development opportunity of software maintenance but this will cause following intangible cost:-  Customer dissatisfaction when request for repair cannot be addresses in a manner.  Reduction in overall software quality as a result of changes that introduce hidden errors in maintained software.  M=P+K(C-D) M= Total efforts expended on maintenance P= Productive software K= An empirical constant C= Measure of complexity D= Measure of degree of familiarity with the software. COST OF SOFTWARE MAINTENANCE: 24/12/16 7Abhimanyu Mishra(CSE) JETGI
  • 8. 24/12/16 8Abhimanyu Mishra(CSE) JETGI SOFTWARE RE-ENGINEERING: Software re-engineering is concerned with taking existing legacy systems and re- implementing them to make them more maintainable. “The IBM user group guide define software engineering as:- The process of modifying the internal mechanisms of a system or program or the data structures of a system or program without changing its functionality”. The following suggestions may be useful for the modification of the legacy code:  Study code well before attempting changes.  Concentrate on overall control flow and not coding.  Heavily comment internal code.  Create cross reference.  Build symbol tables.  Keep detailed maintenance document  Use modern design technique.
  • 9. 24/12/16 9Abhimanyu Mishra(CSE) JETGI BENEFITS OF RE-ENGINEERING PHASE:  Costs- Evidence from a number of US project suggest that re- engineering of an existing software system cost significantly less than new.  Lower Risk- Software re- engineering is based on incremental improvement of system, rather than radical system replacement.  Better use of existing staff  Incremental Development
  • 10. REVERSE ENGINEERING • Reverse engineering, in computer programming, is a technique used to analyze software in order to identify and understand the parts it is composed of. The usual reasons for reverse engineering a quantity of software are to recreate the program, to build something similar to it, to exploit its weaknesses or strengthen its defenses. 12/31/2016 Abhimanyu Mishra(CSE) JETGI 10
  • 11. DIAGRAM:- Reverse Engineering 12/31/2016 Abhimanyu Mishra(CSE) JETGI 11 Proposal Description Code Performance
  • 12. WHAT IS CAPABILITY MATURITY MODEL? The Software Engineering Institute (SEI) Capability Maturity Model (CMM) specifies an increasing series of levels of a software development group. The higher level, better the software development process, hence getting each level is an exclusive and inefficient process 12/31/2016 Abhimanyu Mishra(CSE) JETGI 12
  • 13. There are five levels: (i) Initial (ii) Repeatable (iii) Defined (iv) Managed (v) Optimizing 12/31/2016 Abhimanyu Mishra(CSE) JETGI 13
  • 14. Diagram: CAPABILITY MATURITY MODEL Optimizing (Process) Managed (Process measure and controlled) Defined (Categories for the Organization ) Repeatable (Its often reactive) Initial (Unpredictable and poorly controlled) 12/31/2016 Abhimanyu Mishra(CSE) JETGI 14
  • 15. CHANGE CONTROL PROCESS Change control is a methodical approach to handling all changes complete to a product or system. The purpose are to ensure that no redundant changes are made, that all changes are documented, that services are not without need disrupted and that resources are used efficiently. 12/31/2016 Abhimanyu Mishra(CSE) JETGI 15
  • 16. Diagram: (CCP) 12/31/2016 Abhimanyu Mishra(CSE) JETGI 16 Iden tify. Impl eme nt Appr ove. Acce ss. Follo w- Up
  • 17. SOFTWARE VERSION CONTROLS Version control systems are a category of software tools that help a software team manage changes to source code finished time. Version control software keeps track of every adjustment to the code in a special kind of database. If a error are made, developers could turn back the clock and compare earlier versions of the code to help fix the error while minimizing interruption to all team members. 12/31/2016 Abhimanyu Mishra(CSE) JETGI 17
  • 18. TASK A Branch Merge Development (Ver1.0) (Ver 1.1) Ver(1.2) Ver(1.3) Ver(1.4) Branch Merge TASK B 12/31/2016 Abhimanyu Mishra(CSE) JETGI 18
  • 19. CASE (COMPUTER-AIDED SOFTWARE ENGINEERING) CASE (computer-aided software engineering) is the use of a computer- assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people. Using CASE allows designers, code writers, testers, planners, and managers to share a common view of where a project stands at each stage of development. CASE helps ensure a disciplined, check-pointed process. A CASE tool may portray progress (or lack of it) graphically. It may also serve as a repository for or be linked to document and program libraries containing the project's business plans, design requirements, design specifications, detailed code specifications, the code units, test cases and results, and marketing and service plans. 12/31/2016 Abhimanyu Mishra(CSE) JETGI 19
  • 20. Diagram: CASE Upper Case Integrated Case Lower Case 12/31/2016 Abhimanyu Mishra(CSE) JETGI 20 Analysis Planning Design Implementation Testing Maintenance
  • 21. COCOMO MODEL The Constructive Cost Model (COCOMO) is an algorithmic software cost estimation model developed by Barry Boehm. The model are using a basic deterioration formula, with parameters that is resulting from antique project data and current project characteristics. 12/31/2016 Abhimanyu Mishra(CSE) JETGI 21
  • 22. Diagram: COCOMO Model 12/31/2016 Abhimanyu Mishra(CSE) JETGI 22 COCOMO Intermediate COCOMO model Complete COCOMO model Basic COCOMO model
  • 23. SOFTWARE RISK MANAGEMENT Risk is an anticipation of loss, a potential problem that not occur in the future. It is generally caused due to lack of information, control or time. A possibility of grief from loss in software development process is called a software risk. Loss can be anything, increase in production cost, development of poor quality software, not being able to complete the project on time. Software risk exists because the future is uncertain and there are many well-known and indefinite things that cannot be incorporated in the project plan. A software risk can be of two types (a) internal risks that are within the control of the project manager (b) external risks that are beyond the control of project manager. Risk management is carried out to: (i) Identify the risk (ii) Reduce the impact of risk (iii) Reduce the probability or like of risk (iv) Risk monitoring 12/31/2016 Abhimanyu Mishra(CSE) JETGI 23
  • 24. Problem? Fill the box 12/31/2016 Abhimanyu Mishra(CSE) JETGI 24 Risk Management Process