SlideShare a Scribd company logo
Chapter # 1
Maryam
 When we write a program for computer we named it as software. But software
is not just a program; many things other than the program are also included in
software.
 Some of the constituted items of software are described below.
 Program: The program or code itself is definitely included in the software.
 Data: The data on which the program operates is also considered as part of the software.
 Documentation: Another very important thing that most of us forget is documentation. All the
documents related to the software are also considered as part of the software.
 So the software is not just the code written in Cobol, Java, Fortran or C++. It also
includes the data and all the documentation related to the program.
 Software is playing a vital role in all the field of life these days. We can see
many software applications being operated around us in our daily routine.
 Some of the major areas in which software has played an important role are
identified as under.
 Business decision-making: Software systems have played a major role in businesses where
you have to analyze your data and on the basis of that analysis you have to make business
decisions. This process of data analysis and decision-making has become very accurate and
easy by the use of software.
 Embedded systems: We see many kinds of gadgets being employed in our daily used things,
like small microcontrollers used in our cars, televisions, microwave ovens etc. All these systems
are controlled through the software.
 Modern scientific investigation and engineering problem solving: Scientific investigations
and engineering problem solving require an intensive amount of calculations and data analysis.
The accuracy of these analyses is also very important in scientific applications. This process has
become very easy and accurate by the use of software. For example software systems are
becoming more involved in bioinformatics and the process of DNA decoding is only possible by
the use of software systems. Similarly many astronomical observations are being recorded and
analyzed by the software systems these days.
 Games: We see many computer games these days that interests people of all ages. All
these games are drive through software systems
 Due to its central importance and massive use in many fields it is contributing
a lot in terms of economic activity started by the software products.
 Billions and trillions of dollars are being invested in this field throughout the
world every year
 Before moving on to software engineering lets first discuss something about
engineering itself.
 If you survey some of the dictionaries then you will find the following
definition of engineering.
 “The process of productive use of scientific knowledge is called engineering.”
 What is the difference between Computer Science and Software
Engineering??
 There are many engineering fields like electrical, mechanical and civil
engineering. All these branches of engineering are based on physics.
 Physics itself is not engineering but the use of physics in making buildings,
electronic devices and machines is engineering.
 When we use physics in constructing buildings then it is civil engineering.
 When we use physics in making machines like engines or cars then it is mechanical engineering.
 when we apply the knowledge of physics in developing electronic devices then the process is
electrical engineering.
 The relation of computer science with software engineering is similar as the relation of physics
with the electrical, mechanical or civil engineering
 So in this context we can define software engineering as: ”This is the process of utilizing our
knowledge of computer science in effective production of software systems.
Computer
Science
Customer
Theories
Computer
Functions
Problem
Software
Engineers
Tools and
Techniques
to solve
problem
 Lets look at some of the non-software systems like TV, Car or an Electric Bulb.
 The car may be malfunctioned due to some problem in engine while driving.
Similarly an electric bulb may be fused while glowing and a TV could be
dysfunctional while working.
 So the major thing that distinguishes a software system from other systems is
that;
 “Software does not wear out!
 What does that mean?
 As we have seen in above example that our non-software systems could be
malfunctioned or crash while working
 That mean they have a particular life and after that they could have some
problem and may not behave and perform as expected
 But this is not the case with software. Software systems does not affect by the
phenomenon of wear and tear
 If a software has any defect then that defect will be there from the very first
day and that defect normally called bug
 this could not be the case that at a particular point in time a software is
functioning well and after some time the same software is not performing the
same task as required
 In 1960s a great amount of rapid improvement was made in
hardware
 New computer systems were far more powerful than the computers of early
fifties
 Those very complex software was very difficult to write
 So the tools and techniques that were used for less complex software became
inapplicable for the more complex software
 Lets try to understand this with the help of an example
 Let’s imagine a person in a village have constructed a hut for him to live
 He face some problems in beginning but was managed to build a hurt for him.
 Now if you ask him to construct another hut, he may be able to construct one
more easily and in a better way.
 new hut may be better than first and may construct in a relatively less time
 But if you ask him to construct concrete and iron houses then he may not be
able to handle it
 the building constructed will not have a stable structure or he may not even be able
to build one.
 In early 60s software had suffered from the similar kind of problem to which
we call Software Crisis.
 Techniques that were used to develop small software were not applicable
for large software systems
 This thing resulted in the following consequences.
 In most of the cases that software which was tried to be build using those old tools
and techniques were not complete.
 Most of the times it was delivered too late.
 Most of the projects were over-budgeted.
 And in most of the case systems build using these techniques were not reliable – meaning that
they were not be able to do what they were expected to do.
 As result a conference was held, in which the term software engineering is
introduced
 Software Engineering as defined by IEEE:
 “All aspects of software production’ Software engineering is not just concerned
with the technical processes of software development but also with activities such
as software project management and with the development of tools, methods and
theories to support software production”.
 “The application of a systematic, disciplined, quantifiable approach to the
development, operation, and maintenance of software; that is, the application of
engineering to software.”
 Software Engineering is the set of processes and tools to develop software.
 Software Engineering is the combination of all the tools, techniques, and
processes that used in software production.
 SE includes all those things that are used in software production like:
 Programming Language
 Programming Language Design
 Software Design Techniques
 Tools
 Testing
 Maintenance
 Development etc.
 In SE, we use computer knowledge to solve problems
 Sometime problems are related to computer or existing system, but sometime
the difficulties underlying the problem have nothing to do with computers
 Therefore, it is essential that we first understand the nature of the problem
 Solving Problems?
 Most of the problems are
large and tricky to
handle especially if
problem is new
 So we must begin
investigating a problem
by Analyzing it, that is
by breaking into pieces
that we can understand
and deal with
PROBLEM
P#1 P#2 P#3
 After analyzing the
problem we must
construct our solution
from components
 Synthesis is the putting
together of a large
structure from small
buildings blocks
SOLUTION
S#1 S#2 S#3
 Thus any problem solving technique must have two parts
 An analyzing the problem to determine its nature
 Synthesizing a solution based on our analysis
 Consider an example of writing a novel.
 Dictionary contain Words Sentences Paragraphs Chapters Complete Novel
 To solve problem we employ variety of methods and techniques, tools,
procedures and paradigms.
 Methods and Techniques : a formal procedure for producing some results.
 a chef prepare sauce using a sequence of steps
 Tools : an instruments or automated system for accomplishing something in a
better way. Better way means that tool makes us more accurate, efficient,
productive and enhance the quality of resulting product.
 we use a typewriter or keyboard to write document instead of handwriting
 Procedures : it is like a recipe, a combination of tools and techniques that in
result produce a particular product.
 Paradigms : is like cooking style, it represent a particular approach or
philosophy for building software
 Just as we distinguish French cooking from Chinese and OOP from procedural
 Hardware and software we
put together must interact
with users, other software
tasks, existing databases, with
other pieces of hardware and
even with other computer
system
 So it is important to provide a
framework for any project by
knowing the boundaries -
what is included in the project
and what is not.
These slides are designed to
accompany Software
Engineering: A Practitioner’s
Approach, 7/e (McGraw-Hill
21
Software Engineering
a “quality” focus
process model
methods
tools
Thank you..
Chapter # 1 End

More Related Content

What's hot (6)

Unit 1 (it workshop-web designing)
Unit 1 (it workshop-web designing)Unit 1 (it workshop-web designing)
Unit 1 (it workshop-web designing)
 
Uses of Application software.
Uses of Application software. Uses of Application software.
Uses of Application software.
 
Software aging
Software agingSoftware aging
Software aging
 
IDA Arbejdsmiljø
IDA ArbejdsmiljøIDA Arbejdsmiljø
IDA Arbejdsmiljø
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Add6
Add6Add6
Add6
 

Similar to Chapter # 1

Lecture 01
Lecture 01Lecture 01
Lecture 01
Rana Ali
 
1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx
jackiewalcutt
 
Introduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docxIntroduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docx
mariuse18nolet
 
Personal Note On Software Engineering
Personal Note On Software EngineeringPersonal Note On Software Engineering
Personal Note On Software Engineering
Heidi Maestas
 

Similar to Chapter # 1 (20)

Lecture 01
Lecture 01Lecture 01
Lecture 01
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Cs504 handouts 1_45
Cs504 handouts 1_45Cs504 handouts 1_45
Cs504 handouts 1_45
 
1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx
 
CS504 Updated Handouts.pdf
CS504 Updated Handouts.pdfCS504 Updated Handouts.pdf
CS504 Updated Handouts.pdf
 
SECh123
SECh123SECh123
SECh123
 
Ch 01 s.e introduction
Ch 01 s.e introductionCh 01 s.e introduction
Ch 01 s.e introduction
 
Unit1
Unit1Unit1
Unit1
 
Introduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docxIntroduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docx
 
Personal Note On Software Engineering
Personal Note On Software EngineeringPersonal Note On Software Engineering
Personal Note On Software Engineering
 
Software Engineering Basics.pdf
Software Engineering Basics.pdfSoftware Engineering Basics.pdf
Software Engineering Basics.pdf
 
Sepm t1
Sepm t1Sepm t1
Sepm t1
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
software engineering.docx
software engineering.docxsoftware engineering.docx
software engineering.docx
 
Software Engineering Unit-1
Software Engineering Unit-1Software Engineering Unit-1
Software Engineering Unit-1
 
se01.ppt
se01.pptse01.ppt
se01.ppt
 
Lecture 01.ppt
Lecture 01.pptLecture 01.ppt
Lecture 01.ppt
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
No silver bullet summary (paper)
No silver bullet summary (paper)No silver bullet summary (paper)
No silver bullet summary (paper)
 

More from International Islamic University Islamabad (8)

Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
SYSTEM ENGINEERING
SYSTEM ENGINEERINGSYSTEM ENGINEERING
SYSTEM ENGINEERING
 
Diode
Diode Diode
Diode
 
Digital electronics multiplexers demultiplexers
Digital electronics multiplexers demultiplexersDigital electronics multiplexers demultiplexers
Digital electronics multiplexers demultiplexers
 
Automatic Night Light With Morning Alarm
Automatic Night Light With Morning AlarmAutomatic Night Light With Morning Alarm
Automatic Night Light With Morning Alarm
 

Recently uploaded

RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical SolutionsRS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
Atif Razi
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Digital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdfDigital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdf
AbrahamGadissa
 
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdfONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
Kamal Acharya
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
Kamal Acharya
 
Fruit shop management system project report.pdf
Fruit shop management system project report.pdfFruit shop management system project report.pdf
Fruit shop management system project report.pdf
Kamal Acharya
 
Online blood donation management system project.pdf
Online blood donation management system project.pdfOnline blood donation management system project.pdf
Online blood donation management system project.pdf
Kamal Acharya
 

Recently uploaded (20)

Event Management System Vb Net Project Report.pdf
Event Management System Vb Net  Project Report.pdfEvent Management System Vb Net  Project Report.pdf
Event Management System Vb Net Project Report.pdf
 
Construction method of steel structure space frame .pptx
Construction method of steel structure space frame .pptxConstruction method of steel structure space frame .pptx
Construction method of steel structure space frame .pptx
 
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical SolutionsRS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
 
Top 13 Famous Civil Engineering Scientist
Top 13 Famous Civil Engineering ScientistTop 13 Famous Civil Engineering Scientist
Top 13 Famous Civil Engineering Scientist
 
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data StreamKIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
 
Peek implant persentation - Copy (1).pdf
Peek implant persentation - Copy (1).pdfPeek implant persentation - Copy (1).pdf
Peek implant persentation - Copy (1).pdf
 
İTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering WorkshopİTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering Workshop
 
BRAKING SYSTEM IN INDIAN RAILWAY AutoCAD DRAWING
BRAKING SYSTEM IN INDIAN RAILWAY AutoCAD DRAWINGBRAKING SYSTEM IN INDIAN RAILWAY AutoCAD DRAWING
BRAKING SYSTEM IN INDIAN RAILWAY AutoCAD DRAWING
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
Digital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdfDigital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdf
 
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdfONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
 
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical EngineeringIntroduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
 
ENERGY STORAGE DEVICES INTRODUCTION UNIT-I
ENERGY STORAGE DEVICES  INTRODUCTION UNIT-IENERGY STORAGE DEVICES  INTRODUCTION UNIT-I
ENERGY STORAGE DEVICES INTRODUCTION UNIT-I
 
Cloud-Computing_CSE311_Computer-Networking CSE GUB BD - Shahidul.pptx
Cloud-Computing_CSE311_Computer-Networking CSE GUB BD - Shahidul.pptxCloud-Computing_CSE311_Computer-Networking CSE GUB BD - Shahidul.pptx
Cloud-Computing_CSE311_Computer-Networking CSE GUB BD - Shahidul.pptx
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
 
Fruit shop management system project report.pdf
Fruit shop management system project report.pdfFruit shop management system project report.pdf
Fruit shop management system project report.pdf
 
Democratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek AryaDemocratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek Arya
 
Online resume builder management system project report.pdf
Online resume builder management system project report.pdfOnline resume builder management system project report.pdf
Online resume builder management system project report.pdf
 
Online blood donation management system project.pdf
Online blood donation management system project.pdfOnline blood donation management system project.pdf
Online blood donation management system project.pdf
 

Chapter # 1

  • 2.  When we write a program for computer we named it as software. But software is not just a program; many things other than the program are also included in software.  Some of the constituted items of software are described below.  Program: The program or code itself is definitely included in the software.  Data: The data on which the program operates is also considered as part of the software.  Documentation: Another very important thing that most of us forget is documentation. All the documents related to the software are also considered as part of the software.  So the software is not just the code written in Cobol, Java, Fortran or C++. It also includes the data and all the documentation related to the program.
  • 3.  Software is playing a vital role in all the field of life these days. We can see many software applications being operated around us in our daily routine.  Some of the major areas in which software has played an important role are identified as under.  Business decision-making: Software systems have played a major role in businesses where you have to analyze your data and on the basis of that analysis you have to make business decisions. This process of data analysis and decision-making has become very accurate and easy by the use of software.  Embedded systems: We see many kinds of gadgets being employed in our daily used things, like small microcontrollers used in our cars, televisions, microwave ovens etc. All these systems are controlled through the software.
  • 4.  Modern scientific investigation and engineering problem solving: Scientific investigations and engineering problem solving require an intensive amount of calculations and data analysis. The accuracy of these analyses is also very important in scientific applications. This process has become very easy and accurate by the use of software. For example software systems are becoming more involved in bioinformatics and the process of DNA decoding is only possible by the use of software systems. Similarly many astronomical observations are being recorded and analyzed by the software systems these days.  Games: We see many computer games these days that interests people of all ages. All these games are drive through software systems  Due to its central importance and massive use in many fields it is contributing a lot in terms of economic activity started by the software products.  Billions and trillions of dollars are being invested in this field throughout the world every year
  • 5.  Before moving on to software engineering lets first discuss something about engineering itself.  If you survey some of the dictionaries then you will find the following definition of engineering.  “The process of productive use of scientific knowledge is called engineering.”  What is the difference between Computer Science and Software Engineering??
  • 6.  There are many engineering fields like electrical, mechanical and civil engineering. All these branches of engineering are based on physics.  Physics itself is not engineering but the use of physics in making buildings, electronic devices and machines is engineering.  When we use physics in constructing buildings then it is civil engineering.  When we use physics in making machines like engines or cars then it is mechanical engineering.  when we apply the knowledge of physics in developing electronic devices then the process is electrical engineering.  The relation of computer science with software engineering is similar as the relation of physics with the electrical, mechanical or civil engineering  So in this context we can define software engineering as: ”This is the process of utilizing our knowledge of computer science in effective production of software systems.
  • 8.  Lets look at some of the non-software systems like TV, Car or an Electric Bulb.  The car may be malfunctioned due to some problem in engine while driving. Similarly an electric bulb may be fused while glowing and a TV could be dysfunctional while working.  So the major thing that distinguishes a software system from other systems is that;  “Software does not wear out!  What does that mean?
  • 9.  As we have seen in above example that our non-software systems could be malfunctioned or crash while working  That mean they have a particular life and after that they could have some problem and may not behave and perform as expected  But this is not the case with software. Software systems does not affect by the phenomenon of wear and tear  If a software has any defect then that defect will be there from the very first day and that defect normally called bug  this could not be the case that at a particular point in time a software is functioning well and after some time the same software is not performing the same task as required
  • 10.  In 1960s a great amount of rapid improvement was made in hardware  New computer systems were far more powerful than the computers of early fifties  Those very complex software was very difficult to write  So the tools and techniques that were used for less complex software became inapplicable for the more complex software  Lets try to understand this with the help of an example
  • 11.  Let’s imagine a person in a village have constructed a hut for him to live  He face some problems in beginning but was managed to build a hurt for him.  Now if you ask him to construct another hut, he may be able to construct one more easily and in a better way.  new hut may be better than first and may construct in a relatively less time  But if you ask him to construct concrete and iron houses then he may not be able to handle it  the building constructed will not have a stable structure or he may not even be able to build one.
  • 12.  In early 60s software had suffered from the similar kind of problem to which we call Software Crisis.  Techniques that were used to develop small software were not applicable for large software systems  This thing resulted in the following consequences.  In most of the cases that software which was tried to be build using those old tools and techniques were not complete.  Most of the times it was delivered too late.  Most of the projects were over-budgeted.  And in most of the case systems build using these techniques were not reliable – meaning that they were not be able to do what they were expected to do.  As result a conference was held, in which the term software engineering is introduced
  • 13.  Software Engineering as defined by IEEE:  “All aspects of software production’ Software engineering is not just concerned with the technical processes of software development but also with activities such as software project management and with the development of tools, methods and theories to support software production”.  “The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software.”
  • 14.  Software Engineering is the set of processes and tools to develop software.  Software Engineering is the combination of all the tools, techniques, and processes that used in software production.  SE includes all those things that are used in software production like:  Programming Language  Programming Language Design  Software Design Techniques  Tools  Testing  Maintenance  Development etc.
  • 15.  In SE, we use computer knowledge to solve problems  Sometime problems are related to computer or existing system, but sometime the difficulties underlying the problem have nothing to do with computers  Therefore, it is essential that we first understand the nature of the problem  Solving Problems?
  • 16.  Most of the problems are large and tricky to handle especially if problem is new  So we must begin investigating a problem by Analyzing it, that is by breaking into pieces that we can understand and deal with PROBLEM P#1 P#2 P#3
  • 17.  After analyzing the problem we must construct our solution from components  Synthesis is the putting together of a large structure from small buildings blocks SOLUTION S#1 S#2 S#3
  • 18.  Thus any problem solving technique must have two parts  An analyzing the problem to determine its nature  Synthesizing a solution based on our analysis  Consider an example of writing a novel.  Dictionary contain Words Sentences Paragraphs Chapters Complete Novel  To solve problem we employ variety of methods and techniques, tools, procedures and paradigms.
  • 19.  Methods and Techniques : a formal procedure for producing some results.  a chef prepare sauce using a sequence of steps  Tools : an instruments or automated system for accomplishing something in a better way. Better way means that tool makes us more accurate, efficient, productive and enhance the quality of resulting product.  we use a typewriter or keyboard to write document instead of handwriting  Procedures : it is like a recipe, a combination of tools and techniques that in result produce a particular product.  Paradigms : is like cooking style, it represent a particular approach or philosophy for building software  Just as we distinguish French cooking from Chinese and OOP from procedural
  • 20.  Hardware and software we put together must interact with users, other software tasks, existing databases, with other pieces of hardware and even with other computer system  So it is important to provide a framework for any project by knowing the boundaries - what is included in the project and what is not.
  • 21. These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 21 Software Engineering a “quality” focus process model methods tools

Editor's Notes

  1. Software engineering is an interesting subject. In order to understand this subject we will need to look at a number of examples and case studies. And we will need to see how we can develop good software and how it could be improved in different scenarios? Before we move on to software engineering we need to understand what software actually is.
  2. We have just talked about software defects which we call bugs. If a part of a car became wear out you just need to get a new one from market and replace the damages one with the new one. And the car will start working properly as it was working previously. Similarly if an electric bulb got fused then you just need to get a new one and put into the socket in place of the fused one and your room will again be illuminated. But the case of software is somewhat different. If a software has a bug then the same process of replacing faulty part with the new one may not work. You cannot remove the bug by just replacing the faulty part of software with the new one. Or it will not be as simple that, you go to the concerned company, get a new CD of that software and it will start working properly. If the software has a bug and that bug was present in the older CD then that will remain in the new one. This is a fundamental difference between software and other systems.
  3. Examples: Methods: Tools: Procedure: