SE Intro L 1
SE Intro L 1
SE
Profession
A Physician, a Civil Engineer and a Computer Scientist were arguing about what was
the oldest profession in the world.
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 3
Outline
Software
Technology Pattern
Key Terms
Challenges
Crisis
Program vs Product
Emergence
• Early Programming
• HLL
• Control Flow based design
• Data Structure based design
• Data flow based
• OO based design
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 4
5
What is Software?
System
Documentation
Document
ation
User
Documentation
Technology Development Pattern
Engineering
Esoteric Past
Experience
Technology
Unorganized Use of
Art Past Experience
Time
What is Wrong with the Exploratory
Style?
• Can successfully be used for very small
programs only.
Software
Exploratory Engineering
Effort, time,
Machine
cost
Program Size
Emergence
• Early Programming(50s)
• HLL(60s)
• Control Flow based design(70s)
• Data Structure based design(80s)
• Data flow based(80s)
• OO based design(90s)
8
Data Flow Model of a Car Assembly
Unit
Partly
Chassis with Assembled
Engine Car
Fit Fit Fit Paint and Car
Engine Doors Wheels Assembled Test
Car