Notes:
This article discusses the need for doing software design "up front" in a project. Wirfs-Brock argues that there are times when doing some design up front is beneficial to the project. Typically this occurs when the team is entering "uncharted waters". In other words, when the risk of not doing it is too high. Whilst Wirfs-Brock argues that it can be beneficial, she is
NOT arguing that it be applied to every project, nor for that matter is she arguing that the whole design be done first. She is arguing that it should be considered and applied judiciously to help the project succeed.
Up front design is not for all teams or situations; however to blindly label it as unnecessary is unwise. There are valid reasons for and against up front design. Sound engineering judgment is required to decide whether to use the technique. Up front design can be a risk mitigation strategy and worth considering.