Two surveys were realized, aiming to gain preliminary insight about the differentiation of software companies according to their development practices. The first survey was designed and implemented using the guidelines proposed by Forza [17]. The content of the questionnaire was based on the “ISO/IEC 12207 - Software Life Cycle Description” [12], incorporating questions about strategic priorities, commercial practices, and software development activities.
Among the proposed questions, respondents were asked about their commercial practices, including number of active projects and number of active customers at their business units. Software management deals with the concepts, methods, and techniques for managing a software project and its development activities [18]. In this context, each software project can be considered a “unit of analysis” for a software company, since a complete “software life cycle”, which include software management activities and software development activities, will be performed each time a software project is executed.
Each software project generates only one final system, and the number of customers that can benefit from this project output (final system) generates a perspective of scale for the result of a software project. If a project output has thousands of potential customers, corporate strategy should be based for mass-selling; on the other extreme, if the number of customers that can benefit from this project output is the initial customer only, the development company should focus on selling more software projects for this specific customer.
As a consequence, the relationship between total number of customers and total number of projects in a software company reveals the company’s specialization towards customized or mass development. Therefore, an analysis of the obtained data using the relationship between number of active customers and number of active projects to segment software companies revealed three relevant categories:
. • Customer Oriented: companies with less than one customer per project, usually developing several software projects for few specific customers. The main objective is to develop software on demand for their customers; as a consequence, the stronger the customer, the bigger the opportunities for the software company.
. • Service Oriented: companies with few customers per project. They usually work with few software systems and provide services related with these systems for their customers, including software customization, implementation, user training and software operation (outsourcing).
. • Product Oriented: companies with several customers per project, usually working in the development of standard software solutions, which are commercialized with several other companies.