SlideShare a Scribd company logo
1 of 33
Software Engineering
Mrs. R.K.Santhia /Assistant Professor-CSE
Agenda
What is Software?
Component of Software
Types of Software
What is Good Software?
Attributes of Software
Role of Software
What is Software Engineering?
What is Software?
Component of Software:
Essential Components of Software
• Instructions
- Functionality
- Performance
• Data Structure
-Essential
components
-Maintains the data
-Program logic
-Design
• Documents
-User manual
-Design manual
What is Software?
“Software is a set of instructions to acquire inputs and to
manipulate them to produce the desired output in terms
of functions and performance as determined by the
user of the software. It also include a set of documents,
such as the software manual , meant for users to
understand the software system.”
Types of Software
Types of Software
System Software
Real-time Software
Business Software
Scientific and Engineering Software
Embedded Software
Artificial Intelligence (AI) Software
Personal computer Software
Internet Software
Based on the Function Domain
System Software
• A collection of programs written
to service other
programs at system level.
• Provide interface to the other
application
For example : compiler,
operating systems.
• Programs that monitor/analyze/
control real world events as they occur.
Input data
Analyze the data
Take appropriate action
For example :Air traffic control system, Flood
control system, Network management system.
Real-time Software
Business Software
• Software use is most prevalent in this
application
• Programs that access, analyze and
process
business information.
For example : Payroll system, Sales
analysis system etc.,
Scientific and Engineering Software
• Scientific nature of the
Computation they perform
• Software using different science
and applications. System
Simulation, Computer-Aided
Design.
• For example : Auto CAD,MAT Lab
etc.,
• Embedded software resides in read-only memory and
is used to control products and systems for the
consumer and industrial markets.
• It has very limited and esoteric functions and control
capability.
Embedded Software
Embedded Software
• Resides in Read only
memory
• It gives products an
intelligent look
• For example: ATMs, Cell
phones, Printers,
Calculators, etc.,
Artificial Intelligence (AI) Software
• Programs make use of AI techniques and methods to
solve complex
• problems. Active areas are expert systems, pattern
recognition, games
For example : Manufacturing
robots, Smart assistants,
Social media monitoring
Internet Software
• Programs that support
internet accesses and
applications.
For example : search
engine, browser, e-
commerce software,
authoring tools.
Classes of Application Software
Application is a program or group of programs designed
for end users
For example : of an application include a word processor,
a spreadsheet, an accounting application, a web browser,
an email client, a media player, a file viewer, simulators,
a console game or a photo editor.
Software is classified into two classes
Generic Software
Customized Software
Generic Software is designed for broad customer market
whose requirements are very common, fairly stable and well
understood by the software engineer.
Customized Software is developed for a customer where
domain , environment and requirements are being unique to
that customer and cannot be satisfied by generic products.
Classes of Application Software
What is Good Software?
“Software has number of attributes which decide whether
it is a good or bad . The definition of a good software
changes with the person who evaluates it. The software is
required by the customer , used by the end users of an
organization and developed by software engineer .
Each one will evaluate the different attributes differently
in order to decide whether the software is good."
What are the attributes of good
software?
• The software should deliver the required functionality and
performance to the user and should
Maintainability
Correctness
Reusability
Reliability
Portability
Efficiency
Maintainability
• Allows organizations to
identify improvement areas
as well as determine the
value supplied by current
applications or during
development changes.
Correctness
 The degree with which
software adheres to its
specified requirements
Reusability
• The ease with which software can
be reused in developing other
software
• The use of existing asset in some
from within the software product
development process
• Assets are products and by-
products of the software
development life cycle and
include code, software
components, test suites, deigns
and documentation.
Reliability
• The frequency and criticality of
software failure, when failure
is an unacceptable effect or
behavior occurring under
permissible operating
conditions.
• The probability of failure free
software operation for a
specified period of time in a
specified environment.
Portability
• Measure of how easily an
application can be
transferred from one
computer environment to
another.
Efficiency
• Ability to avoid wasting materials,
energy, efforts, money, and time in
doing something or in producing a
desired results.
• In a more general sense, it is the
ability to do things well,
successfully, and without waste.
Why we need of Software ?
•
Each device needs at least one corresponding device
drive, because a computer typically has at minimum
at least one input device and at least one output
device, a computer typically needs more than one
device driver
What is Engineering?
• Engineering is the application of scientific and
practical knowledge in order to invent, design, build,
maintain and improve systems, processes, etc.,
Software engineering methods provide the technical
“how to” for building software.
Methods --> how to encompass a broad array of
tasks:- requirements analysis, design, coding, testing,
and maintenance
Software engineering methods rely on a set of basic
principles.
What is Software Engineering?
What is Software Engineering?
• A systematic collection of good program development
practices and techniques.
• The essence of all past programming experiences and
innovations for writing good quality programs in cost-
effective and efficient ways have been systematically
organized into a body of knowledge.
• This knowledge forms the foundation of the software
engineering principles.
To increase software productivity and quality.
- To effectively control software schedule and planning.
- To reduce the cost of software development.
- To meet the customers’ needs and requirements.
- To enhance the conduction of software engineering process.
- To improve the current software engineering practice.
- To support the engineers’ activities in a systematic and efficient
manner.
Major Role Software Engineering?
Introduction to Software Engineering

More Related Content

What's hot

Open source operating systems
Open source operating systemsOpen source operating systems
Open source operating systemsTushar B Kute
 
Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminariesMoutasm Tamimi
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
Evolution of operating system
Evolution of operating systemEvolution of operating system
Evolution of operating systemArshad khan
 
Risk management(software engineering)
Risk management(software engineering)Risk management(software engineering)
Risk management(software engineering)Priya Tomar
 
Software engineering model
Software engineering modelSoftware engineering model
Software engineering modelManish Chaurasia
 
Windows programming ppt
Windows programming pptWindows programming ppt
Windows programming pptSAMIR CHANDRA
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation TechniquesSanthi thi
 
Software Engineering - Ch1
Software Engineering - Ch1Software Engineering - Ch1
Software Engineering - Ch1Siddharth Ayer
 
Introduction to Operating System
Introduction to Operating SystemIntroduction to Operating System
Introduction to Operating Systempriya_sinha02
 
A presentation on system software
A presentation on system software A presentation on system software
A presentation on system software Ankit Sangwan
 
Software Engineering - Basics
Software Engineering - BasicsSoftware Engineering - Basics
Software Engineering - BasicsPurvik Rana
 

What's hot (20)

software engineering
software engineeringsoftware engineering
software engineering
 
Open source operating systems
Open source operating systemsOpen source operating systems
Open source operating systems
 
Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminaries
 
Software design
Software designSoftware design
Software design
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
Algorithmic Software Cost Modeling
Algorithmic Software Cost ModelingAlgorithmic Software Cost Modeling
Algorithmic Software Cost Modeling
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Evolution of operating system
Evolution of operating systemEvolution of operating system
Evolution of operating system
 
Software quality
Software qualitySoftware quality
Software quality
 
File system structure
File system structureFile system structure
File system structure
 
Device Drivers
Device DriversDevice Drivers
Device Drivers
 
Risk management(software engineering)
Risk management(software engineering)Risk management(software engineering)
Risk management(software engineering)
 
Software engineering model
Software engineering modelSoftware engineering model
Software engineering model
 
Windows programming ppt
Windows programming pptWindows programming ppt
Windows programming ppt
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 
Software Engineering - Ch1
Software Engineering - Ch1Software Engineering - Ch1
Software Engineering - Ch1
 
Introduction to Operating System
Introduction to Operating SystemIntroduction to Operating System
Introduction to Operating System
 
Computer Virus
Computer VirusComputer Virus
Computer Virus
 
A presentation on system software
A presentation on system software A presentation on system software
A presentation on system software
 
Software Engineering - Basics
Software Engineering - BasicsSoftware Engineering - Basics
Software Engineering - Basics
 

Similar to Introduction to Software Engineering

Software Engineering _ Introduction
Software Engineering _ IntroductionSoftware Engineering _ Introduction
Software Engineering _ IntroductionThenmozhiK5
 
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
 
unit 1.pptx regasts sthatbabs shshsbsvsbsh
unit 1.pptx regasts sthatbabs shshsbsvsbshunit 1.pptx regasts sthatbabs shshsbsvsbsh
unit 1.pptx regasts sthatbabs shshsbsvsbshsagarjsicg
 
Lecture1 (SE Introduction)
Lecture1 (SE Introduction)Lecture1 (SE Introduction)
Lecture1 (SE Introduction)Education Front
 
Software Engineering
Software EngineeringSoftware Engineering
Software EngineeringMohamed Essam
 
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
 
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptxUNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptxLeahRachael
 
Java learn from basic part chapter_01 short notes to understand the java quic...
Java learn from basic part chapter_01 short notes to understand the java quic...Java learn from basic part chapter_01 short notes to understand the java quic...
Java learn from basic part chapter_01 short notes to understand the java quic...GaytriMate
 
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
 
BSC Software & Software engineering-UNIT-IV
BSC Software & Software engineering-UNIT-IVBSC Software & Software engineering-UNIT-IV
BSC Software & Software engineering-UNIT-IVYamunaP6
 
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
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineeringtanni821216
 
SWE-610-Lec-1-Software-Intro duction(1).pptx
SWE-610-Lec-1-Software-Intro duction(1).pptxSWE-610-Lec-1-Software-Intro duction(1).pptx
SWE-610-Lec-1-Software-Intro duction(1).pptxnohaaalrajhi
 

Similar to Introduction to Software Engineering (20)

Software Engineering _ Introduction
Software Engineering _ IntroductionSoftware Engineering _ Introduction
Software Engineering _ Introduction
 
SE UNIT-1.pptx
SE UNIT-1.pptxSE UNIT-1.pptx
SE UNIT-1.pptx
 
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
 
unit 1.pptx regasts sthatbabs shshsbsvsbsh
unit 1.pptx regasts sthatbabs shshsbsvsbshunit 1.pptx regasts sthatbabs shshsbsvsbsh
unit 1.pptx regasts sthatbabs shshsbsvsbsh
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Lecture1 (SE Introduction)
Lecture1 (SE Introduction)Lecture1 (SE Introduction)
Lecture1 (SE Introduction)
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
lect1.pdf
lect1.pdflect1.pdf
lect1.pdf
 
Kelis king - introduction to s.e.
Kelis king -  introduction to s.e.Kelis king -  introduction to s.e.
Kelis king - introduction to s.e.
 
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptxUNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
 
Java learn from basic part chapter_01 short notes to understand the java quic...
Java learn from basic part chapter_01 short notes to understand the java quic...Java learn from basic part chapter_01 short notes to understand the java quic...
Java learn from basic part chapter_01 short notes to understand the java quic...
 
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
 
BSC Software & Software engineering-UNIT-IV
BSC Software & Software engineering-UNIT-IVBSC Software & Software engineering-UNIT-IV
BSC Software & Software engineering-UNIT-IV
 
SE
SESE
SE
 
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
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
SWE-610-Lec-1-Software-Intro duction(1).pptx
SWE-610-Lec-1-Software-Intro duction(1).pptxSWE-610-Lec-1-Software-Intro duction(1).pptx
SWE-610-Lec-1-Software-Intro duction(1).pptx
 
SE-Unit I.pptx
SE-Unit I.pptxSE-Unit I.pptx
SE-Unit I.pptx
 
An introduction to software
An introduction to softwareAn introduction to software
An introduction to software
 

Recently uploaded

How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Planning a health career 4th Quarter.pptx
Planning a health career 4th Quarter.pptxPlanning a health career 4th Quarter.pptx
Planning a health career 4th Quarter.pptxLigayaBacuel1
 
Romantic Opera MUSIC FOR GRADE NINE pptx
Romantic Opera MUSIC FOR GRADE NINE pptxRomantic Opera MUSIC FOR GRADE NINE pptx
Romantic Opera MUSIC FOR GRADE NINE pptxsqpmdrvczh
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptxSherlyMaeNeri
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
Atmosphere science 7 quarter 4 .........
Atmosphere science 7 quarter 4 .........Atmosphere science 7 quarter 4 .........
Atmosphere science 7 quarter 4 .........LeaCamillePacle
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 

Recently uploaded (20)

How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Planning a health career 4th Quarter.pptx
Planning a health career 4th Quarter.pptxPlanning a health career 4th Quarter.pptx
Planning a health career 4th Quarter.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Romantic Opera MUSIC FOR GRADE NINE pptx
Romantic Opera MUSIC FOR GRADE NINE pptxRomantic Opera MUSIC FOR GRADE NINE pptx
Romantic Opera MUSIC FOR GRADE NINE pptx
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Atmosphere science 7 quarter 4 .........
Atmosphere science 7 quarter 4 .........Atmosphere science 7 quarter 4 .........
Atmosphere science 7 quarter 4 .........
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 

Introduction to Software Engineering

  • 1. Software Engineering Mrs. R.K.Santhia /Assistant Professor-CSE
  • 2. Agenda What is Software? Component of Software Types of Software What is Good Software? Attributes of Software Role of Software What is Software Engineering?
  • 5. Essential Components of Software • Instructions - Functionality - Performance • Data Structure -Essential components -Maintains the data -Program logic -Design • Documents -User manual -Design manual
  • 6. What is Software? “Software is a set of instructions to acquire inputs and to manipulate them to produce the desired output in terms of functions and performance as determined by the user of the software. It also include a set of documents, such as the software manual , meant for users to understand the software system.”
  • 9. System Software Real-time Software Business Software Scientific and Engineering Software Embedded Software Artificial Intelligence (AI) Software Personal computer Software Internet Software Based on the Function Domain
  • 10. System Software • A collection of programs written to service other programs at system level. • Provide interface to the other application For example : compiler, operating systems.
  • 11. • Programs that monitor/analyze/ control real world events as they occur. Input data Analyze the data Take appropriate action For example :Air traffic control system, Flood control system, Network management system. Real-time Software
  • 12. Business Software • Software use is most prevalent in this application • Programs that access, analyze and process business information. For example : Payroll system, Sales analysis system etc.,
  • 13. Scientific and Engineering Software • Scientific nature of the Computation they perform • Software using different science and applications. System Simulation, Computer-Aided Design. • For example : Auto CAD,MAT Lab etc.,
  • 14. • Embedded software resides in read-only memory and is used to control products and systems for the consumer and industrial markets. • It has very limited and esoteric functions and control capability. Embedded Software
  • 15. Embedded Software • Resides in Read only memory • It gives products an intelligent look • For example: ATMs, Cell phones, Printers, Calculators, etc.,
  • 16. Artificial Intelligence (AI) Software • Programs make use of AI techniques and methods to solve complex • problems. Active areas are expert systems, pattern recognition, games For example : Manufacturing robots, Smart assistants, Social media monitoring
  • 17. Internet Software • Programs that support internet accesses and applications. For example : search engine, browser, e- commerce software, authoring tools.
  • 18. Classes of Application Software Application is a program or group of programs designed for end users For example : of an application include a word processor, a spreadsheet, an accounting application, a web browser, an email client, a media player, a file viewer, simulators, a console game or a photo editor. Software is classified into two classes Generic Software Customized Software
  • 19. Generic Software is designed for broad customer market whose requirements are very common, fairly stable and well understood by the software engineer. Customized Software is developed for a customer where domain , environment and requirements are being unique to that customer and cannot be satisfied by generic products. Classes of Application Software
  • 20. What is Good Software? “Software has number of attributes which decide whether it is a good or bad . The definition of a good software changes with the person who evaluates it. The software is required by the customer , used by the end users of an organization and developed by software engineer . Each one will evaluate the different attributes differently in order to decide whether the software is good."
  • 21. What are the attributes of good software? • The software should deliver the required functionality and performance to the user and should Maintainability Correctness Reusability Reliability Portability Efficiency
  • 22. Maintainability • Allows organizations to identify improvement areas as well as determine the value supplied by current applications or during development changes.
  • 23. Correctness  The degree with which software adheres to its specified requirements
  • 24. Reusability • The ease with which software can be reused in developing other software • The use of existing asset in some from within the software product development process • Assets are products and by- products of the software development life cycle and include code, software components, test suites, deigns and documentation.
  • 25. Reliability • The frequency and criticality of software failure, when failure is an unacceptable effect or behavior occurring under permissible operating conditions. • The probability of failure free software operation for a specified period of time in a specified environment.
  • 26. Portability • Measure of how easily an application can be transferred from one computer environment to another.
  • 27. Efficiency • Ability to avoid wasting materials, energy, efforts, money, and time in doing something or in producing a desired results. • In a more general sense, it is the ability to do things well, successfully, and without waste.
  • 28. Why we need of Software ? • Each device needs at least one corresponding device drive, because a computer typically has at minimum at least one input device and at least one output device, a computer typically needs more than one device driver
  • 29. What is Engineering? • Engineering is the application of scientific and practical knowledge in order to invent, design, build, maintain and improve systems, processes, etc.,
  • 30. Software engineering methods provide the technical “how to” for building software. Methods --> how to encompass a broad array of tasks:- requirements analysis, design, coding, testing, and maintenance Software engineering methods rely on a set of basic principles. What is Software Engineering?
  • 31. What is Software Engineering? • A systematic collection of good program development practices and techniques. • The essence of all past programming experiences and innovations for writing good quality programs in cost- effective and efficient ways have been systematically organized into a body of knowledge. • This knowledge forms the foundation of the software engineering principles.
  • 32. To increase software productivity and quality. - To effectively control software schedule and planning. - To reduce the cost of software development. - To meet the customers’ needs and requirements. - To enhance the conduction of software engineering process. - To improve the current software engineering practice. - To support the engineers’ activities in a systematic and efficient manner. Major Role Software Engineering?