Page 14 - DCAP405_SOFTWARE_ENGINEERING
P. 14

Unit 1: The Evolving Role of Software




               Personal computer software: These software programs have grown rapidly over the past  Notes
               few decades. These include the like of database management, entertainment, computer
               graphics, multimedia, etc.
               Web-based software: The web-pages displayed by a browser are programs that include
               executable instructions (e.g. CGI, Perl, Java), hypertext and audio-visual formats.

               Artificial intelligence software: AI software uses algorithms to solve problems that are
               not open to simple computing and analysis. For example, Pattern matching (voice or
               image), game playing, robotics, expert systems, etc.
               Engineering software: The software is characterized by number-crunching algorithms
               ranging from molecular biology, automated manufacturing to space shuttle orbit
               management, etc.

          Self Assessment

          Fill in the blanks:
          1.   Software transforms personal data so that the data can be more useful in a…………………..

          2.   The initial failure rate is …………………….. because of undiscovered defects.
          3.   The analyzer component that transforms …………………….. as required by the application.
          4.   The sequence and ………………….. of the information being used.
          5.   A program is a part of software and can be called software only if documentation and
               ………………………… procedures are added to it.
          6.   Once these defects are fixed, the …………………….. flattens at a later stage.

          1.3 Software Myths

               Myth 1: Computers are more reliable than the devices they have replaced.

               Considering the reusability of the software, it can undoubtedly be said that the software
               does not fail. However, certain areas which have been mechanized have now become
               prone to software errors as they were prone to human errors while they were manually
               performed. For example, Accounts in the business houses.

               Myth 2: Software is easy to change.
               Yes, changes are easy to make - but hard to make without introducing errors. With every
               change the entire system must be re-verified.

               Myth 3: If software development gets behind scheduled, adding more programmers will
               put the development back on track.
               Software development is not a mechanistic process like manufacturing. In the words of
               Brooks: “adding people to a late software project makes it later”.
               Myth 4: Testing software removes all the errors.
               Testing ensures presence of errors and not absence. Our objective is to design test cases
               such that maximum number of errors is reported.
               Myth 5: Software with more features is better software.
               This is exactly the opposite of the truth. The best programs are those that do one kind of
               work.



                                           LOVELY PROFESSIONAL UNIVERSITY                                    7
   9   10   11   12   13   14   15   16   17   18   19