SlideShare a Scribd company logo
1 of 62
Download to read offline
Introduction to Software Engineering
Asst. Prof. Tracy Almeida e Aguiar
Introductory Concepts
Software is a program or set of programs containing instructions which provide
desired functionality.
Engineering is the processes of designing and building something that serves a
particular purpose and find a cost effective solution to problems.
Software Engineering is a systematic approach to the design, development,
operation, and maintenance of a software system.
• Software engineering is defined as a process of analyzing user
requirements and then designing, building, and testing software
application which will satisfy those requirements.
Let's look at the various definitions of Software Engineering:
• IEEE, in its standard 610.12-1990, defines software engineering as the
application of a systematic, disciplined, which is a computable approach
for the development, operation, and maintenance of software.
• Fritz Bauer defined it as 'the establishment and used standard engineering
principles. It helps you to obtain, economically, software which is reliable
and works efficiently on the real machines'.
• Boehm defines software engineering, which involves, 'the practical
application of scientific knowledge to the creative design and building of
computer programs. It also includes associated documentation needed for
developing, operating, and maintaining them.'
Need of Software Engineering
Why Software Engineering? Software Crisis & its Solution:
What was the Software Crisis?
• It was in the late 1960s when many software projects failed.
• Many software became over budget. Output was an unreliable software which is
expensive to maintain.
• Larger software was difficult and quite expensive to maintain.
• Lots of software not able to satisfy the growing requirements of the customer.
• Complexities of software projects increased whenever its hardware capability
increased.
• Demand for new software increased faster compared with the ability to generate
new software.
All the above issues lead to 'Software Crisis.'
The Solution
Transforming unorganized coding effort into a software
engineering discipline. These engineering models helped
companies to streamline operations and deliver
software meeting customer requirements.
•The late 1970s saw the widespread uses of software
engineering principles.
•In the 1980s saw the automation of software
engineering process and growth of (CASE) Computer-
Aided Software Engineering.
•The 1990s have seen an increased emphasis on the
'management' aspects of projects standard of quality
and processes just like ISO 9001
Why Software Engineering is Popular?
•Large software – In our real life, it is quite more comfortable to build a wall
than a house or building. In the same manner, as the size of the software
becomes large, software engineering helps you to build software.
•Scalability- If the software development process were based on scientific
and engineering concepts, it is easier to re-create new software to scale an
existing one.
•Adaptability: Whenever the software process was based on scientific and
engineering, it is easy to re-create new software with the help of software
engineering.
•Cost- Hardware industry has shown its skills and huge manufacturing has
lower the cost of the computer and electronic hardware.
•Dynamic Nature- Always growing and adapting nature of the software. It
depends on the environment in which the user works.
•Quality Management: Offers better method of software development to
provide quality software products.
Dual Role of Software:
1. As a product –
•It delivers the computing potential across network of
Hardware.
•It enables the Hardware to deliver the expected functionality.
•It acts as information transformer because it produces,
manages, acquires, modifies, displays, or transmits
information.
2. As a vehicle for delivering a product –
•It provides system functionality (e.g., payroll system)
•It controls other software (e.g., an operating system)
•It helps build other software (e.g., software tools)
Objectives of Software Engineering:
Maintainability – It should be feasible for the software to evolve to meet changing
requirements.
Correctness – A software product is correct, if the different requirements as
specified in the SRS document have been correctly implemented.
Reusability – A software product has good reusability, if the different modules of
the product can easily be reused to develop new products.
Testability – Here software facilitates both the establishment of test criteria and
the evaluation of the software with respect to those criteria.
Reliability – It is an attribute of software quality. The extent to which a program
can be expected to perform its desired function, over an arbitrary time period.
Portability – In this case, software can be transferred from one computer system
or environment to another.
Adaptability – In this case, software allows differing system constraints and user
needs to be satisfied by making changes to the software.
Program vs Software Product:
1. A program is a set of instructions which is given to a computer in
order to achieve a specific task whereas a software is when a program
is made available for commercial business and is properly documented
along with its licensing. Software=Program+documentation+licensing.
2. A program is one of the stages involved in the development of the
software, whereas a software development usually follows a life cycle,
which involves the feasibility study of the project, requirement
gathering, development of a prototype, system design, coding and
testing.
Challenges of Software Engineering:
Here are some critical challenges faced by software
engineers:
•In safety-critical areas such as space, aviation, nuclear
power plants, etc. the cost of software failure can be
massive because lives are at risk.
•Increased market demands for fast turnaround time.
•Dealing with the increased complexity of software need for
new applications.
•The diversity of software systems should be
communicating with each other.
Attributes for Software Products
SDLC Models
1.Water fall Model
2. Prototyping
Steps of Software Reverse Engineering
Thank U

More Related Content

What's hot

Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineeringHitesh Mohapatra
 
Lecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringLecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringAchmad Solichin
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIvano Malavolta
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringZahoor Khan
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineeringRupesh Vaishnav
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycleGurban Daniel
 
Xp exterme-programming-model
Xp exterme-programming-modelXp exterme-programming-model
Xp exterme-programming-modelAli MasudianPour
 
Software process Models
Software process ModelsSoftware process Models
Software process ModelsSADEED AMEEN
 
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
 
Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)ShudipPal
 
Software myths | Software Engineering Notes
Software myths | Software Engineering NotesSoftware myths | Software Engineering Notes
Software myths | Software Engineering NotesNavjyotsinh Jadeja
 
Software architecture model
Software architecture modelSoftware architecture model
Software architecture modelEmmanuel Fuchs
 
Software Engineering - Basics
Software Engineering - BasicsSoftware Engineering - Basics
Software Engineering - BasicsPurvik Rana
 
Quality of software
Quality of softwareQuality of software
Quality of softwarePalak Pandoh
 
Software Engineering (Software Process: A Generic View)
Software Engineering (Software Process: A Generic View)Software Engineering (Software Process: A Generic View)
Software Engineering (Software Process: A Generic View)ShudipPal
 
Global Software Development powered by Perforce
Global Software Development powered by PerforceGlobal Software Development powered by Perforce
Global Software Development powered by PerforcePerforce
 
Software Engineering (Risk Management)
Software Engineering (Risk Management)Software Engineering (Risk Management)
Software Engineering (Risk Management)ShudipPal
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringMajane Padua
 

What's hot (20)

Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
Lecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringLecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software Engineering
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineering
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
Xp exterme-programming-model
Xp exterme-programming-modelXp exterme-programming-model
Xp exterme-programming-model
 
Software process Models
Software process ModelsSoftware process Models
Software process Models
 
Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)
 
Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)
 
Software myths | Software Engineering Notes
Software myths | Software Engineering NotesSoftware myths | Software Engineering Notes
Software myths | Software Engineering Notes
 
Software architecture model
Software architecture modelSoftware architecture model
Software architecture model
 
Software Development Process
Software Development ProcessSoftware Development Process
Software Development Process
 
Software Engineering - Basics
Software Engineering - BasicsSoftware Engineering - Basics
Software Engineering - Basics
 
Quality of software
Quality of softwareQuality of software
Quality of software
 
Software Engineering (Software Process: A Generic View)
Software Engineering (Software Process: A Generic View)Software Engineering (Software Process: A Generic View)
Software Engineering (Software Process: A Generic View)
 
Global Software Development powered by Perforce
Global Software Development powered by PerforceGlobal Software Development powered by Perforce
Global Software Development powered by Perforce
 
Software Engineering (Risk Management)
Software Engineering (Risk Management)Software Engineering (Risk Management)
Software Engineering (Risk Management)
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
3. ch 2-process model
3. ch 2-process model3. ch 2-process model
3. ch 2-process model
 

Similar to Software Engineering pdf

Unit 1 importance ofsoftengg_b.tech iii year
Unit 1  importance ofsoftengg_b.tech iii yearUnit 1  importance ofsoftengg_b.tech iii year
Unit 1 importance ofsoftengg_b.tech iii yearPreeti Mishra
 
Unit 1 introduction tosoftengg_mba tech ii year
Unit 1  introduction tosoftengg_mba tech ii yearUnit 1  introduction tosoftengg_mba tech ii year
Unit 1 introduction tosoftengg_mba tech ii yearPreeti Mishra
 
Kelis king - introduction to s.e.
Kelis king -  introduction to s.e.Kelis king -  introduction to s.e.
Kelis king - introduction to s.e.KelisKing
 
Chapter 01
Chapter 01Chapter 01
Chapter 01ryan aja
 
Week_01-Intro to Software Engineering-1.ppt
Week_01-Intro to Software Engineering-1.pptWeek_01-Intro to Software Engineering-1.ppt
Week_01-Intro to Software Engineering-1.ppt23017156038
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1Rupesh Vaishnav
 
SE chp1 update and learning management .pptx
SE chp1 update and learning management .pptxSE chp1 update and learning management .pptx
SE chp1 update and learning management .pptxssuserdee5bb1
 
Introduction to Software Engineering & Information Technology
Introduction to Software Engineering & Information TechnologyIntroduction to Software Engineering & Information Technology
Introduction to Software Engineering & Information TechnologyGaditek
 
Unit_1(Software and Software Engineering).pptx
Unit_1(Software and Software Engineering).pptxUnit_1(Software and Software Engineering).pptx
Unit_1(Software and Software Engineering).pptxtaxegap762
 
Software Engineering _ Introduction
Software Engineering _ IntroductionSoftware Engineering _ Introduction
Software Engineering _ IntroductionThenmozhiK5
 
Software Engineering
Software EngineeringSoftware Engineering
Software EngineeringMohamed Essam
 

Similar to Software Engineering pdf (20)

SE UNIT-1.pptx
SE UNIT-1.pptxSE UNIT-1.pptx
SE UNIT-1.pptx
 
SE Lecture 1.ppt
SE Lecture 1.pptSE Lecture 1.ppt
SE Lecture 1.ppt
 
SE Lecture 1.ppt
SE Lecture 1.pptSE Lecture 1.ppt
SE Lecture 1.ppt
 
Unit 1 importance ofsoftengg_b.tech iii year
Unit 1  importance ofsoftengg_b.tech iii yearUnit 1  importance ofsoftengg_b.tech iii year
Unit 1 importance ofsoftengg_b.tech iii year
 
Unit 1 introduction tosoftengg_mba tech ii year
Unit 1  introduction tosoftengg_mba tech ii yearUnit 1  introduction tosoftengg_mba tech ii year
Unit 1 introduction tosoftengg_mba tech ii year
 
Kelis king - introduction to s.e.
Kelis king -  introduction to s.e.Kelis king -  introduction to s.e.
Kelis king - introduction to s.e.
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
SE
SESE
SE
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Week_01-Intro to Software Engineering-1.ppt
Week_01-Intro to Software Engineering-1.pptWeek_01-Intro to Software Engineering-1.ppt
Week_01-Intro to Software Engineering-1.ppt
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1
 
SE chp1 update and learning management .pptx
SE chp1 update and learning management .pptxSE chp1 update and learning management .pptx
SE chp1 update and learning management .pptx
 
Software engineering unit 1
Software engineering unit 1Software engineering unit 1
Software engineering unit 1
 
Introduction to Software Engineering & Information Technology
Introduction to Software Engineering & Information TechnologyIntroduction to Software Engineering & Information Technology
Introduction to Software Engineering & Information Technology
 
Unit_1(Software and Software Engineering).pptx
Unit_1(Software and Software Engineering).pptxUnit_1(Software and Software Engineering).pptx
Unit_1(Software and Software Engineering).pptx
 
Software Engineering _ Introduction
Software Engineering _ IntroductionSoftware Engineering _ Introduction
Software Engineering _ Introduction
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
SE-Unit I.pptx
SE-Unit I.pptxSE-Unit I.pptx
SE-Unit I.pptx
 

Recently uploaded

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 

Recently uploaded (20)

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 

Software Engineering pdf

  • 1. Introduction to Software Engineering Asst. Prof. Tracy Almeida e Aguiar
  • 2. Introductory Concepts Software is a program or set of programs containing instructions which provide desired functionality. Engineering is the processes of designing and building something that serves a particular purpose and find a cost effective solution to problems. Software Engineering is a systematic approach to the design, development, operation, and maintenance of a software system. • Software engineering is defined as a process of analyzing user requirements and then designing, building, and testing software application which will satisfy those requirements.
  • 3. Let's look at the various definitions of Software Engineering: • IEEE, in its standard 610.12-1990, defines software engineering as the application of a systematic, disciplined, which is a computable approach for the development, operation, and maintenance of software. • Fritz Bauer defined it as 'the establishment and used standard engineering principles. It helps you to obtain, economically, software which is reliable and works efficiently on the real machines'. • Boehm defines software engineering, which involves, 'the practical application of scientific knowledge to the creative design and building of computer programs. It also includes associated documentation needed for developing, operating, and maintaining them.'
  • 4. Need of Software Engineering Why Software Engineering? Software Crisis & its Solution: What was the Software Crisis? • It was in the late 1960s when many software projects failed. • Many software became over budget. Output was an unreliable software which is expensive to maintain. • Larger software was difficult and quite expensive to maintain. • Lots of software not able to satisfy the growing requirements of the customer. • Complexities of software projects increased whenever its hardware capability increased. • Demand for new software increased faster compared with the ability to generate new software. All the above issues lead to 'Software Crisis.'
  • 5. The Solution Transforming unorganized coding effort into a software engineering discipline. These engineering models helped companies to streamline operations and deliver software meeting customer requirements. •The late 1970s saw the widespread uses of software engineering principles. •In the 1980s saw the automation of software engineering process and growth of (CASE) Computer- Aided Software Engineering. •The 1990s have seen an increased emphasis on the 'management' aspects of projects standard of quality and processes just like ISO 9001
  • 6. Why Software Engineering is Popular? •Large software – In our real life, it is quite more comfortable to build a wall than a house or building. In the same manner, as the size of the software becomes large, software engineering helps you to build software. •Scalability- If the software development process were based on scientific and engineering concepts, it is easier to re-create new software to scale an existing one. •Adaptability: Whenever the software process was based on scientific and engineering, it is easy to re-create new software with the help of software engineering. •Cost- Hardware industry has shown its skills and huge manufacturing has lower the cost of the computer and electronic hardware. •Dynamic Nature- Always growing and adapting nature of the software. It depends on the environment in which the user works. •Quality Management: Offers better method of software development to provide quality software products.
  • 7. Dual Role of Software: 1. As a product – •It delivers the computing potential across network of Hardware. •It enables the Hardware to deliver the expected functionality. •It acts as information transformer because it produces, manages, acquires, modifies, displays, or transmits information. 2. As a vehicle for delivering a product – •It provides system functionality (e.g., payroll system) •It controls other software (e.g., an operating system) •It helps build other software (e.g., software tools)
  • 8. Objectives of Software Engineering: Maintainability – It should be feasible for the software to evolve to meet changing requirements. Correctness – A software product is correct, if the different requirements as specified in the SRS document have been correctly implemented. Reusability – A software product has good reusability, if the different modules of the product can easily be reused to develop new products. Testability – Here software facilitates both the establishment of test criteria and the evaluation of the software with respect to those criteria. Reliability – It is an attribute of software quality. The extent to which a program can be expected to perform its desired function, over an arbitrary time period. Portability – In this case, software can be transferred from one computer system or environment to another. Adaptability – In this case, software allows differing system constraints and user needs to be satisfied by making changes to the software.
  • 9. Program vs Software Product: 1. A program is a set of instructions which is given to a computer in order to achieve a specific task whereas a software is when a program is made available for commercial business and is properly documented along with its licensing. Software=Program+documentation+licensing. 2. A program is one of the stages involved in the development of the software, whereas a software development usually follows a life cycle, which involves the feasibility study of the project, requirement gathering, development of a prototype, system design, coding and testing.
  • 10. Challenges of Software Engineering: Here are some critical challenges faced by software engineers: •In safety-critical areas such as space, aviation, nuclear power plants, etc. the cost of software failure can be massive because lives are at risk. •Increased market demands for fast turnaround time. •Dealing with the increased complexity of software need for new applications. •The diversity of software systems should be communicating with each other.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58. Steps of Software Reverse Engineering
  • 59.
  • 60.
  • 61.