Software = a temporary solution to an evolving problem
nWe must design a system that adequately models the problem as currently perceived, yet implement the system in such a way as to minimize dependency on the particularities of the problem at hand.