É um conceito simples, mas que não raro é ignorado quando o assunto é desenvolvimento de software.
Vamos a um exemplo simples: você compra um Mac, por exemplo, devido a uma série de justificativas:
Este é um exemplo simples e absolutamente hipotético, mas é o suficiente para que possamos tratar agora do nosso contexto: desenvolvimento de software.