October 2017
Beginner
360 pages
7h 58m
English
In a rational world, we’d fully define the problem before designing a perfect architecture to solve it. Too bad we don’t live in a perfect, rational world. In The Sciences of the Artificial [Sim96], Herbert Simon coined the term bounded rationality to describe the theoretical barrier created by limits in time, money, skills, and knowledge that make rational design challenging for complex problems such as software architecture.
Instead of rationally seeking an optimal design, our goal is to find an architecture that satisfices. A satisficing design is both satisfactory and sufficient—good enough—for our needs.
Instead of thinking of software architecture as a design optimization problem, we’ll look for a satisficing ...