Presentation is loading. Please wait.

Presentation is loading. Please wait.

 Software Software  Program vs Software Products Program vs Software Products  Software Characteristics Software Characteristics  Software Crisis.

Similar presentations


Presentation on theme: " Software Software  Program vs Software Products Program vs Software Products  Software Characteristics Software Characteristics  Software Crisis."— Presentation transcript:

1

2  Software Software  Program vs Software Products Program vs Software Products  Software Characteristics Software Characteristics  Software Crisis Software Crisis  Software engineering Software engineering

3 Software: Software means a collection of programs to acquire inputs and manipulate them to produce the desired outputs in terms of functions and performance as determined by the user of the software. According to IEEE Software is the collection of computer programs, procedures rules and associated documentation and data. Software=Program + Documentation + Operating Procedures

4 Program vs Software Products: Program= Source Code + Object Code Software Product=Program + Documentation + Operating Procedure Documentation Object Code Programs Source Code Operating Procedures

5 Difference between program and software product ProgramSoftware Product 1.A program is developed by individual for personal use. 2.Small in size. 3.Single user. 4.Single developer. 5.Lacks proper documentation. 6.Lack of user interface. 7.Have limited functionality. 1.A software product is developed by team of engineers. 2.Large in size. 3.Large number of users. 4.Team of developers. 5.Good documentation support. 6.Good user interface. 7.More functionality.

6 Software Characteristics: 1. Software is developed or engineered; it is not manufactured in the classical sense: Hardware is always manufactured because a manufactured product has particular shape and size. Software is developed. Software grows with the passage of time. Manufacturing same hardware increases cost but developing same copies of software does not increase cost. 2. Software doesn’t wear out: There is a well known “bath-tub curve” which depicts the phases of life of a hardware product

7 The three phases are:  Burn-in: Failure intensity is high.  Useful life phase: Failure intensity is constant.  Wear out phase: Failure intensity is again high due to wearing out of components.

8 Bath-tub curve Time Failure Intensity Useful Life Phase Burn - in Phase Wear out phase

9 Software doesn’t have wear-out phase because software does not wear out but becomes reliable over time. It becomes obsolete or may be retired only if its environment changes. Software curve Time Failure Intensity

10 3. Most Software is custom-built, rather than being assembled from existing components: Most software continues to be custom built, but developments now tend to be component based which enable software engineer to develop new applications from reusable parts. e.g. GUI is built using reusable component like pull down menus, graphic windows etc. 4. Software is not replaceable: If a part of hardware wears out it can be replaced by a spare part. But no such spare part exists for software.

11 5. Software is flexible: A program can be developed to do almost anything. It may help to accommodate any kind of change. Reuse of components from the libraries help in reduction of developing effort which helps in making software flexible.

12 Software Crisis: During development of software many problems are raised up that set of problem is known as software crisis. Many software products are either not finished or are delivered with major errors. The software crisis has been around since 1970s. Reasons for software crisis:  Schedule and cost estimates are often inaccurate. i.e. software is not delivered in time or cost of software increases.  The quality of software is sometimes less than adequate. i.e software does not do what it is supposed to do.

13  Communication between customer and developer is often poor.  Increase in complexity of the problem area.  Project management problem due to increase in personnel requirement per project.  The software maintenance task increases the cost of software. Cost of maintenance is approximately 30% to 40% of the development cost. To discuss the software crisis software engineering was introduced.

14 Software engineering: Few Important Definitions: According to IEEE: Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software, i.e. the application of engineering to software.

15 According to Barry Boehm: Software Engineering is the application of science and mathematics by which the capabilities of computer equipment are made useful to man via computer programs, procedures and associated documentation. According to Stephen Schach: Software Engineering is a discipline whose aim is the production of fault free software that satisfies the user’s needs and that is delivered on time and within budget. According to Somerville: Software Engineering is concerned with the theories, methods and tools that are neede to develop the software products in a cost effective way.

16 According to Somerville: Software Engineering is concerned with the theories, methods and tools that are needed to develop the software products in a cost effective way.

17 Thanks!!


Download ppt " Software Software  Program vs Software Products Program vs Software Products  Software Characteristics Software Characteristics  Software Crisis."

Similar presentations


Ads by Google