Course Code: 331
Lecture 01

A simple program

“Write a program to get a list of students’ test marks,
calculate the grades and print a report of the ...
Typical Approaches

 Go to the computer and immediately write the
program
 Find an old program and modify it
 Discuss ...
Understanding the Problem


Understanding the Problem (2)


 Software Maintenance:
 20% error correction
 20% adaptation
 60% enhancements

 Bel...
What is Software
Engineering
 Software



 programs that provide function & performance
 data structures for informati...
Definition of Software
Engineering



IEEE Definition:
The application of a systematic, disciplined,
quantifiable approac...
Another Definition of
Software Engineering



The practical application of scientific knowledge in
the design and constru...
Objectives of Software
Engineering



To improve quality of software products
To increase customer satisfaction
To inc...
Software Characteristics

 Software is developed or engineered, not
manufactured in the classical sense
 Software doesn...
What Is A Good
Software?

 Software is intangible
 Good software is subjective
 Some qualities that are used to assess...
What Is A Good
Software continue?


 Efficiency: amount of computing resources required.
 Maintainability: effort requi...
Software Applications

 System Software
 Real-time Software
 Business Software
 Engineering & Scientific Software
 E...
Challenges

 Why does it take so long to get software finished?
 Why are the development costs so high?
 Why can’t we ...
Upcoming SlideShare
Loading in...5
×

Software Engineering - Lecture 01

168

Published on

Software Engineering. Lecture No. 02. For computer Science & Engineering Syllabus. Its very useful for class study.

Published in: Education, Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
168
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Software Engineering - Lecture 01

  1. 1. Course Code: 331 Lecture 01
  2. 2.
  3. 3. A simple program  “Write a program to get a list of students’ test marks, calculate the grades and print a report of the results”
  4. 4. Typical Approaches   Go to the computer and immediately write the program  Find an old program and modify it  Discuss with friends on how to do it  Ask the lecturer for more information about the program
  5. 5. Understanding the Problem 
  6. 6. Understanding the Problem (2)   Software Maintenance:  20% error correction  20% adaptation  60% enhancements  Belady and Lehman’s Laws:  Software will continually change.  Software will become increasingly unstructured as it is changed.
  7. 7. What is Software Engineering  Software   programs that provide function & performance  data structures for information manipulation  documents that describe the operations and use of the programs  Engineering  A discipline that applies scientific and technical methods in the design and production of a product
  8. 8. Definition of Software Engineering  IEEE Definition: The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software
  9. 9. Another Definition of Software Engineering  The practical application of scientific knowledge in the design and construction of computer programs and the associated documentation required to develop, operate, and maintain them. (Boehm).
  10. 10. Objectives of Software Engineering  To improve quality of software products To increase customer satisfaction To increase productivity To increase job satisfaction Software engineering is not programming. Programming is an important part of software engineering. “This is not a programming course”
  11. 11. Software Characteristics   Software is developed or engineered, not manufactured in the classical sense  Software doesn’t “wear out”  Most software is custom-built, rather than being assembled from existing components 11
  12. 12. What Is A Good Software?   Software is intangible  Good software is subjective  Some qualities that are used to assess software:  Correctness: a program satisfies its specifications.  Reliability: a program satisfies its intended functions.  Usability: the effort required to learn, operate, prepare input, and interpret the output.  Integrity: Control of access to unauthorized persons.
  13. 13. What Is A Good Software continue?   Efficiency: amount of computing resources required.  Maintainability: effort required to locate and fix errors in an operational programs.  Portability: required effort to transfer a program from one hardware/software environment to another.  Testability: required effort to test a program to ensure its performing its intended functions.  Interoperability: effort required to couple programs.  Reusability: reuse of programs in other applications.
  14. 14. Software Applications   System Software  Real-time Software  Business Software  Engineering & Scientific Software  Embedded Software  Personal Computer Software  Artificial Intelligence Software
  15. 15. Challenges   Why does it take so long to get software finished?  Why are the development costs so high?  Why can’t we find all errors?  Why do we spend so much time and effort maintaining existing programs?  Why is it difficult to measure progress?
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×