Professional Documents
Culture Documents
Engineering
Construction Analogy.
Engineering Practice
Neither Science nor Art
Technology Development
Pattern
Technology
Engineering
EsotericPast
Experience
Craft
Art
SystematicUseofPast
ExperienceandScientificBasis
UnorganizedUseof
PastExperience
Time
Exploratory
Software
Engineering
Machine
Program Size
Implication in Program
Development
Implication in Program
Development
10
Abstraction
No one in his right mind would meet all the citizens of the
country, visit every house, and examine every tree of the country,
etc.
Decomposition
12
Decomposition
The
14
Higher Productivity
16
Software Crisis
Software products:
Fail
Software Crisis
(cont.)
Hw cost
Sw cost
1960
Year
2008
Larger problems,
Lack of adequate training in software
engineering,
19
Large
Large number of users
Team of developers
Well-designed
interface
Well documented &
user-manual prepared
Systematic
development
Ad hoc development.
20
Software products
Outsourced projects
21
Evolution of Design
Techniques
Object-Oriented
Data flow-based
Data structurebased
Control flowbased
Ad hoc
22
Emergence of Software
Engineering
Programs
23
High-Level Language
Programming (Early 60s)
reduced software
development efforts greatly.
24
High-Level Language
Programming (Early 60s)
25
Programmers found:
Very
Programmers found:
programs
28
29
30
It was found:
GO
GO
The
Programmers
considered use of GO TO
statements unavoidable.
32
33
34
35
Everyone accepted:
It
This
36
Structured Programming
sequence,
selection,
iteration
37
Structured Programs
38
Structured Programs
to practical considerations
such as:
39
Structured programs
Easier
to maintain,
Require
40
Structured Programming
errors:
41
43
Structured
Programming(JSP) methodology
44
JSP technique:
45
In JSP methodology:
A
Then
e.g., Warnier-Orr
Methodology.
47
(Late 70s)
Processing
processing stations
(functions) in a system.
The
49
Fit
Engine
Door
Chassis with
Engine
Chassis Store
Fit
Doors
Store
Partly
Assembled
Car
Fit
Wheels Assembled
Paint and
Test
Car
Car
Wheel Store
51
Object-oriented technique:
An
Natural
52
entity.
53
possibilities
Lower
More
Easy
robust code
maintenance
54
cycle models,
specification techniques,
project management techniques,
testing techniques,
debugging techniques,
quality assurance techniques,
software measurement techniques,
CASE tools, etc.
56
design,
coding,
testing,
etc.
57
58
In exploratory style,
errors
Now,
In exploratory style,
coding
is synonymous with
program development.
Now,
coding
specification.
61
62
63
64
estimation,
scheduling,
monitoring mechanisms.
65
Feasibility study
Design,
Coding,
Testing
maintenance.
66
67
(CONT.)
68
A written description:
70
(CONT.)
71
(CONT.)
72
(CONT.)
73
(CONT.)
74
(CONT.)
phase.
A phase is considered to be complete:
75
(CONT.)
76
(CONT.)
77
(CONT.)
(CONT.)
79
(CONT.)
Iterative waterfall,
Evolutionary,
Prototyping, and
Spiral model
80