Software systems are being developed to perform very different applications, varying from word processors that are sold to hundreds of millions of users until very specific systems developed to support military applications. However, because software development follows a repeatable pattern of activities, most of the theories currently recognized as sets of best practices for software development consider all development activities as equally important for all software projects. This observation reinforces the arguments presented by Boehm [14], who claims that value considerations must be incorporated to analyze and prioritize the most important activities during the software development process.
Specifically concerning the relationship between software users and suppliers, only the ISO/IEC 12207 proposes a set of common activities that should be performed by the companies involved in the acquisition and supply processes.
Therefore, this norm was used as the basis for the development of frameworks to categorize software users and developers and to analyze the relationship between these different companies, emphasizing the competences and skills required to obtain the most effective results from a software project.