Understanding Software Develepment

Algorithms

An Algorithm is a well defined set of instructions which are deterministic.

Heuristics

A Heuristic is a mental shortcut or “rule of thumb” that gives some guidance on how to do a task, but it does not guarantee solutions consistently.

Metaphors

A Metaphor describes the software development process and act as heuristics.

Writing As A Metaphor For Software Development

Farming As A Metaphor For Software Development

Accretion (Oysters) As A Metaphor For Software Development

Accretion: a growth or increase in size by a gradual external addition or inclusion.

Construction As A Metaphor For Software Development