To understand better some pricing strategies for software products, a good starting point is to look at a product life cycle and understand what are the sources of costs and revenues for a software system. This is shown in Figure 6.1, where we distinguish four different phases:

1. Inception (or feasibility) is the phase during which an organization analyzes the opportunities and risks related to the development of a new software system and authorizes its development. In some cases, the process is initiated internally. This is the case of products that will be sold or deployed internally to improve the organization’s efficiency or capabilities. In other cases, the process is initiated externally. This happens, for instance, if a prospective customer asks for the development of a one-off software system or specific services related to a product of the performing organization. The activity is organized as one or more projects, using the project selection techniques we have seen in Section 3.1.