SlideServe
Menu
Préférences
© SlideServe · v2026

Introduction to Software Engineering

zenaida-joyce avatar
12 diapositives · 372 Views · Nov 09, 2014

Introduction to Software Engineering. Computer Science and Engineering 470. The study of systematic and effective processes and technologies for supporting software development and maintenance activities. What is Software Engineering ???. Improve quality Reduce cost.

Introduction to Software Engineering - slide 1
01 / 12Introduction to Software Engineering
1 / 17

Télécharger la présentation

Introduction to Software Engineering
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Introduction to Software Engineering Computer Science and Engineering 470

  2. The study of systematic and effective processes and technologies for supporting software development and maintenance activities What is Software Engineering ??? • Improve quality • Reduce cost

  3. Historical Perspective • 1940s: computers invented • 1950s: assembly language, Fortran • 1960s: COBOL, ALGOL, PL/1, operating systems 1969: First conference on S/W Eng • 1970s: multi-user systems, databases, structured programming

  4. Historical Perspective (cont.) • 1980s: networking, personal computing, embedded systems, parallel architectures • 1990s: information superhighway, distributed systems, OO • 2000s: virtual reality, voice recognition, video conferencing, global computing, ...

  5. Hardware Costs vs Software Costs(% of overall costs) s/w costs h/w costs

  6. Why is software so expensive? • Hardware has made great advances • But, software has made great advances ... • Do the least understood tasks in software • When task is simple & understood, encode it in hardware • Demand more and more of software

  7. Size of programs continues to grow • Trivial: 1 month, 1 programmer, 500 LOC, Intro programming assignments • Very small: 4 months, 1 programmer, 2000 LOC Course project • Small: 2 years, 3 programmers, 50K LOC Nuclear power plant, pace maker • Medium: 3 years, 10s of programmers, 100K LOC Optimizing compiler

  8. Size of programs continues to grow • Large: 5 years, 100s of programmers, 1M LOC MS Word, Excel • Very large: 10 years, 1000s of programmers, 10M LOC Air traffic control, Telecommunications, space shuttle

  9. Goals of this Course • Expose you to some of the problems typically encountered in s/w eng • Expose you to some of the techniques that have been found to be effective • Requires more rigor • Often appears “obvious” • (but only after being learned)

  10. What’s the problem? • Software cannot be built fast enough to keep up with • H/W advances • Rising expectations • Feature explosion • Increasing need for high reliability software

  11. What’s the problem? • Software is difficult to maintain “aging software” • Difficult to estimate software costs and schedules • Too many projects fail • Arianne Missile • Denver Airport Baggage System

  12. Why is software engineering needed? • To predict time, effort, and cost • To improve software quality • To improve maintainability • To meet increasing demand • To lower software costs • To successfully build large, complex software systems