Transcript Slide 1

LECTURE-2
Software Is a Product
• Designed by software engineers.
• Consists of :
– Programs - that execute within a computer and
provides desired functions.
– Documents- describe the operation and use of the
program
– Data - which can be numerical, textual, pictorial,
video etc.
Information
Software
Vehicle to deliver the
product
Operating System
Network Software
Case tools
In
today’s lecture we will learn about the product that is to be
engineered. And the process (Next class) that provides a framework
for the engineering technology
The following questions will addressed in today’s lecture.
•What is computer software ?
•Why do we struggle to build high-quality computer-based systems?
•How can we categorize application domains for computer software ?
•What myths about software still exist?
•Software characteristics.
•Failure curve for hardware
•The crisis of software.
Overview
•Computer software is the product that designed and built by
software engineers.
•Software is used by virtually everyone in society.
•Software engineers have a moral obligation to build reliable
software that does no harm to other people.
•Software engineers view computer software, as being made
up of the programs, documents, and data required to design
and build the system.
•Software users are only concerned with whether or not
software products meet their expectations and make their
tasks easier to complete.
HOW SHOULD WE DEFINE SOFTWARE ?
A textbook description of software might take the
following form: Software is
(1) instructions (computer programs) that when
executed provide desired function and
performance,
(2) data structures that enable the programs to
adequately manipulate information, and
(3)documents that describe the operation and
use of the programs.
There is no question that other, more complete
definitions could be offered. But we need more than
a formal definition.
SOFTWARE CHARACTERISTICS
Software
•Software is both a product and a vehicle
for developing a product.
•Software is engineered not
manufactured.
•Software does not wear out, but it does
deteriorate.
•Currently, most software is still custombuilt.
Figure2.1:- Failure curve for hardware
FAILURE RATE
“Wear out”
“Infant
mortality”
TIME
FAILURE RATE
Figure2.2:- Idealized and actual failure
curves for software
Increased failure rate
due to side effects
Actual
curve
Change
Idealized curve
TIME
Software application
System Software
Real time software
Scientific
area, spreadsheets
are moving away
from
Word
processing
,
computer
Business
software
Compilers,
Expert
systems
editors,
, Knowledge
and
file management
based
systems
utilities
,
Software
Keypad
Payroll
that
,control
accounts
monitors/analyzes/controls
for
receivable/payable
microwave
oven
, Digital
real,
conventional
numerical
algorithms
. ,ComputerHTML,Perl,
or
Java
and
data
hypertext
and
a
graphics
,
multimedia
,
entertainment
database
pattern
,operating
recognition
system
(image
components
and
voice),artificial
,
drivers
,
world
functions
inventory,MIS
events
in an
as, automobile
they
, Point
occur
of sale
issuch
called
transaction
as, real
fuel
time
control
,
aided
design
system
simulation
and
other
variety
of
visual
andproving
audio
formats
Engineering
and
scientific
software
management
,
personal
and
bussiness
financial
neural
networks,
telecommunications
theorem
processors
, and
game
dashboard
displays,
processing
and
braking
systems
interactive
applications
have
begun
to
take
on
applications ,playing.
external network.
real time and even system software
Embedded
software
characteristic.
Personal computer software
Web-based software
Artificial intelligence software.
Types of Software
• System software
– it services other programs
– heavy interaction with hardware,
• Real-time software
– data gathering component
– analysis component
– monitoring component
• Business software
– largest single software area
– MIS important component
• Engineering and scientific software
– number crunching numerical algorithms
Types of Software
• Embedded software
– resides in read-only memory of any appliances
– controls products and system for consumers
• PC software
– several hundreds of applications available as
software packages
• Web-based software
– unlimited software resource
• AI software
– makes use of non-numerical algorithms
– expert systems, pattern recognition, games
Software Crisis
•Software failures receive a lot more publicity
than software engineering success stories.
•The software crisis predicted thirty years ago
has never materialized and software
engineering successes outnumber the failures.
•The problems that afflict software development
are associated more with how to develop and
support software properly, than with simply
building software that functions correctly.
Software Myths
Management myths.
Customer myths.
Practitioner’s myths.
Myth?
Reality?
Evolving Role of Software
• Software is both a product, and the means
for delivering a product or service
• The most important product of our time:
information
• Advances in hardware performance result
in ever more complex software
applications
Important Questions
• Why does it take so long to finish a
software project?
• Why does it cost so much to develop
software?
• Why do we deliver software with
significant bugs still present?
• Why is it so hard to measure progress
during development?
KEY POINTS OF TODAY’S LECTURE
1.Software is both a product and a vehicle for
delivering a product.
2. Software is engineered, not manufactured.
3.Software doesn’t wear out , but it does
deteriorate.
4.Most software continues to be custom built.