Table of Contents
CSE584: Software EngineeringLecture 1: Introduction & Overview
Outline
Introductions
But I do want some basics
Interaction
Your undergraduate experience?
Intent of course
Lots of differences among you
My metric for success
Another key intent
Possible impediments
Other possible impediments?
Tichy’s main impediment
Software is increasing critical to society
Absolute sizes
How I spend my time
Delivered source lines per person
Inherent & accidental complexity
“The Software Crisis”
Some classic “crisis” issues
Notkin’s view—“mostly hogwash”
Software engineering is a“wicked problem”
Other problems
Law XXIII, Norman Augustine [Wulf]
Dominant discipline
Notkin’s Top 10 Observations
1. Don’t assume similarity among software systems
2. Intellectual tools dominate software tools in importance
3. Analogies to “real” engineering are fun but risky
Aside: should software engineers be licensed?
4. Estimating benefits is easier than estimating costs
5. Programming languages ensure properties distant from the ones we want
6. The total software lifecyle cost will always be 100%
7. Software engineering is engineering
8. Tradeoffs are key, but we’re not very good at them
9. It’s good to (re)read anything by Brooks, Jackson & Parnas
10. Researcher ? Practitioner
Overview—five topics
What’s omitted? Lots
Requirements & specification (2 lectures)
Design (2 lectures)
Evolution (2 lectures)
Analyses and Tools (2 lectures)
Quality assurance (1 lecture)
Anything else?
Overview of course work
Grading: Let’s make a deal
Goodnight
|