Се прашувате зошто кодирањето и дизајнирањето не (треба да) се работа на еден ист човек? Соодветно објаснување има во „Universal Principles of Design“ од William Lidwell, Kritina Holden и Jill Butler.
As the flexibility of a system increases, the usability of the system decreases.
The flexibility-usability tradeoff is related to the well-known maxim, jack of all trades, master of none. Flexible designs can perform more functions than specialized designs, but they perform the functions less efficiently. Flexible designs are, by definition, more complex than inflexible designs, and as a result are generally more difficult to use. For example, a Swiss Army Knife has many attached tools that increase its flexibility. These tools taken together are less usable and efficient than corresponding individual tools that are more specialized but provide a flexibility of use not available from any single tool. The flexibility-usability tradeoff exists because accommodating flexibility entails satisfying a larger set of design requirements, which invariably means more compromises and complexity in the design.
It is a common assumption that designs should always be made as flexible as possible. However, flexibility has real costs in terms of complexity, usability, time, and money; it generally pays dividends only when an audience cannot clearly anticipate its future needs. For example, personal computers are flexible devices that are difficult to use, relative to more specialized devices like video game players. However, the primary value of a personal computer is that it addresses uncertainty about how it can and will be used: word processing, tax preparation, email. People purchase video game players to play games, but they purchase personal computers to satisfy a variety of needs, many of which are unknown at the time of purchase.
The ability of an audience to anticipate future uses of a product is a key indicator of how they will value flexibility versus usability in design. When an audience can clearly anticipate its needs, more specialized designs that target those needs will be favored. When an audience cannot clearly define its needs, more flexible designs that enable people to address future contingencies will be favored. The degree to which an audience can or cannot define future needs should correspond to the degree of specialization or flexibility in the design. As an audience comes to understand the range of possible needs that can be satisfied, their needs become better defined and, consequently, the designs need to become more specialized. This shift from flexibility toward specialization over time is a general pattern observed in the evolution of all systems, and should be considered in the life cycle of products.
The flexibility-usability tradeoff has implications for weighing the relative importance of flexibility versus usability in a design. When an audience has a clear understanding of its needs, favor specialized designs that target those needs as efficiently as possible. When an audience has a poor understanding of its needs, favor flexible designs to address the broadest possible set of future applications. When designing multiple generations of products, consider the general shift toward specialization as audience needs become more defined.