Knowledge

A comprehensive guide for effective software product management

ISPMA® provides a framework and essential resources needed to advance software product management practices in organizations

Introducing the Body of Knowledge

Software Product Management is the discipline of governing a software from its inception to the market until it is closed down. The Software Product Management Body of Knowledge is an evolving collection of knowledge and best practices of software product management built upon a reference architecture framework.

The most comprehensive ISPMA-Compliant Study Guide and Handbook for Software Product Managers. by Hans-Bernd Kittlaus

Learn more

Framework

The ISPMA Framework provides a holistic view on the activities of software product management and can be used as a model to establish and improveSPM practices in organizations.

You can interact with the Framework items below

Please scroll left or right to see the whole table

Paticipation

Strategic Management

Strategic Management is an activity within an organization with the content to define, plan, agree, implement and evaluate the organization’s strategy. It is part of the responsibility of executive management, who can delegate preparatory work to other functions. Software product managers are typically not responsible for any of these activities, but they either participate in them, e.g., portfolio management, provide inputs, or make use of their outputs, e.g., product analysis.

Corporate Strategy

The strategy on the corporate level typically considers a time frame of up to five years, or longer, depending upon the domain. It consists of vision, mission, values, and goals, corporate positioning, business model, and financial plan, product portfolio and its evolution, resource and competency evolution, technology trends and innovation strategy, market trends and competitive strategy, policies and governance. Software product managers will have to provide input whenever the corporate strategy is revisited and ensure that product strategies stay consistent with the corporate strategy.

Portfolio Management

Portfolio Management is an approach to define the investment strategy with regard to the products the company intends to offer to relevant market and customer segments in the strategic time frame. Software product managers are typically asked to participate in the update cycles of the product portfolio by representing their products and providing input such as roadmaps, forecasts, and investment requirements. The results of such an update cycle can have significant consequences on the product strategy of individual products.

Innovation Management

Innovation management is an activity on the corporate level that is intended to create a flow of innovations into the company’s product portfolio. This includes cooperation with internal and external research. Innovation management needs to be aligned with the corresponding elements of the corporate strategy on a continuous basis. Alignment can be required in both directions. When innovation management leads to significant results, they need to be incorporated into the corporate strategy and impacted product strategies in order to transform them into a competitive advantage. On the other hand, changes in the corporate strategy need to be reflected in innovation management in order to shift resources according to the strategic directions. Software product managers need to monitor and – if feasible – engage with, innovation initiatives to help build sustainable differentiation of their products.

Resource Management

On the corporate level, resource management needs to ensure that resources are available in the required quantities and qualities and at the required points in time so that the company is enabled to implement the corporate strategy and the aligned product strategies. This applies in particular to human resources, both in terms of numbers and skills. A software product manager needs to ensure that the resource requirements that result from the product strategy and plan can be fulfilled, i.e. are aligned with corporate resource management.

Compliance Management

Compliance means the act of obeying an order, rule, or request (Oxford Dictionary) in more detail:

  • On the legal side: implementing any relevant legal or regulatory requirements
  • On the non-legal side: acting following any relevant external or internal standards and guidelines

Compliance management means managing the decision process, including which legal and regulatory requirements are relevant and which non-legal standards and guidelines the organization wants to comply with. It may include participation in and/or influencing of defining external and internal rules, standards and guidelines. It also includes a governance approach that ensures that the defined compliance requirements are consistently implemented and audited in the organization.

Company guidelines from compliance management have to be considered in software product definition and may lead to additional product requirements. The alignment of company guidelines and the software product is the responsibility of the software product manager.

Market Analysis

It is of utmost importance for a corporation to have deep insight into trends and developments in the markets it wants to play in, and into the competitive landscape, including competitors’ strategies. The same holds true on the product level, where the product manager needs reliable information. Larger corporations often have specialized market research departments that act as internal service units for product managers. They conduct their own research and/or collect and evaluate information from market research agencies. In smaller companies, the product manager may be required to do this.

Product Analysis

A product manager needs, at any time, to be able to know where his/her product stands in order to take action if needed. This is usually done based on measures that are defined as relevant indicators of the business performance of the product (see section 2.9). In some companies, these numbers are provided by central corporate units, e.g. in Finance; in other companies, this is the product manager’s task. In any case, the product manager needs to ensure that reliable numbers are available on a frequent basis. Some companies make a set of well-defined measures mandatory for all products in the portfolio in order to achieve comparability.

Core

Product Strategy

Software product managers are responsible for defining the strategy for their product (or platform or family) and for supporting and updating it over time. Normally, a strategy covers a time span of about one to five years, however, this varies in relation to the domain. The product strategy describes how the product is supposed to evolve over this strategic time frame.

Product Strategy includes a number of elements related to software product management listed below in the Framework.All of these elements are highly interdependent. If, for example, business planning results in a budget smaller than originally assumed, it will only be possible to evolve the product to a lesser extent or at a slower pace. If new segments are to be added to the target market within the strategic time frame, the product scope may have to be expanded. Dependency upon other products can also have considerable consequences, e.g., if certain functionalities or enabling code must be available in several products at the same time. In bigger companies that have one or several product portfolios, an individual product strategy needs to be aligned with the corporate strategy and portfolio. It should be observed that interdependencies can exist on different levels of abstraction, ranging from portfolio to product, feature, function, and component but also cover management and business decisions included in the strategic concerns described above.

Positioning & Product Definition

Product positioning includes

  • Value Proposition: value definition from a customer perspective for the target market segments
  • Focus with regard to the target market and segments, the company product portfolio, and the product life cycle phase (e.g. revitalization)
  • Channel options
  • Partnerships and alliances

The product definition needs to define:

  • Functional scope
  • Quality scope
  • Intended use and users
  • User experience (UX) design scope
  • Offering architecture
  • Business architecture (for application software)

The offering architecture defines separately priced components of the product offering and tailorability options in line with the tailorability strategy. The business architecture is relevant for application software and is domain-specific, i.e. covers logical data model, process model, business object model, etc. This is the responsibility of a business architect. For any architecture considerations, tight cooperation between the product manager and architects is required.

When working on the product definition, the product manager has to take the company’s compliance guidelines into account. The product manager might need to address product-specific compliance issues that are not covered by the company’s guidelines, in particular, the areas of sustainability and ethics. It is good practice to document the complete set of components that determine the offering, although that will typically be separate from the product strategy document.

Delivery Model & Service Strategy

Based on the product definition, the delivery model needs to address the following items:

  • Licensed product vs. service offering (e.g. Software-as-a-Service, SaaS)
  • Degree of tailorability, including tailorability strategy
  • Mode of delivery (online access, online download, combination with services, etc.)

Tailorability means the enablement of the product for customer- or market-specific adaptations by providing properties that can be changed after system development. The categories of tailorability are:

  • Configuration: setting or changing parameters
  • Composition: adding or arranging components
  • Customization: adding or changing program or descriptive code

The tailorability architecture defines these options in more technical detail as part of architecture management. The service strategy needs to define the services that are part of the total offering and who is supposed to provide these services. If external partners are to provide services this needs to be aligned with the tailorability strategy and ecosystem management.

Ecosystem Management

A software ecosystem is defined as a set of businesses functioning as a unit and interacting with a shared market for software and services while maintaining beneficial relationships. These relationships are frequently underpinned by a common technological platform and operate through the exchange of information, resources, and artifacts.

Organizations can take on different roles in ecosystems, such as:

  • Keystone: controlling the ecosystem from the strategic position of platform owner, but leaving space for other actors
  • Dominator: controlling the ecosystem from the strategic position of platform owner, striving for complete control
  • Niche player: not the platform owner, but benefitting from the ecosystem through specialization and avoiding conflict with keystones or dominators

Product managers are greatly influenced by the role their respective organizations wish to play in a software ecosystem, and the extended network of the organization is of increasing importance for the daily work of the product manager. It is not typically part of the responsibilities of a software product manager to decide upon the strategy and role that his/her company aims to play in an ecosystem, as these decisions are usually made by executive management. However, once these decisions are finalized, they have a significant impact on the work of the product manager.

Sourcing

Sourcing needs to address the following topics

  • Sourcing options for human resources. There are a number of motivations for working with external human resources, such as:
    – Need for specialized skills not available internally
    – Need for more capacity, e.g. developers, than available internally
    – Cost savings due to lower labor cost in nearshore or offshore locations.
  • Make or buy decisions for software components. There are a number of motivations for not developing a piece of software internally, such as:
    – Focus on time to market
    – High quality and low cost of an externally available software product
    – Restrictions with regard to internal capacity, technology, and skills

The dependency on an external software provider resulting from a buy decision needs to be managed thoroughly from a business perspective.

Pricing

Pricing needs to address the following items:

  • The importance of price with regard to business success and customer value
  • Market- and value-based pricing
  • Problems of cost-based pricing for software offerings
  • Strategic Pricing Pyramid (price strategy, policy, level)
  • Typical pricing models for software, including freemium

A product manager may have different roles with regard to pricing:

  • Be the pricing manager, or
  • Cooperate tightly with the pricing manager and define requirements regarding price structures and price policies
  • Guide Sales regarding price structures, price policies and price levels for the product
  • Support marketing regarding price and value communication for the product
Financial Management

The primary objective of software product management is to achieve sustainable success over the life cycle of the product (or platform or family). This generally refers to economic success, which is ultimately reflected by the profits generated. Since profits lag behind investments, i.e., an investment phase involving losses will be followed by an extended profitable phase, a longer-term perspective is appropriate. Therefore, the product manager has to plan and track financial aspects both from a short- and long-term perspective. This is called financial management and is tightly linked to pricing. It includes the representation of the product on the corporate level.

There are a number of concepts and models relevant to the financial evaluation and product investment decisions:

  • Investment evaluation models – such as NPV, ROI, Pay Back Time
  • The concept of Opportunity Cost and the necessity of identifying the alternative to an investment
  • The concept of Cost of Delay and how time affects the business case for a proposed investment
  • Different financial management objectives during different Product Life Cycle Stages (PLC)
Legal & IPR Management

Software product managers need to consider several legal aspects specifically related to software products. Details are typically handled by legal experts (e.g. counsels), but product managers need to have an overview of the legal risks they bear in their role responsible for the sustainable success of the product. First, there are contractual issues between the software vendor and the customer. Then, there is the protection of intellectual property. Third, there are specific risks such as governance, finance, supply chain, delivery commitments, product liability, data protection (especially for SaaS, in Europe, in particular, the General Data Protection Regulation (GDPR)), open source license conditions, laws on general terms and conditions, blacklisting of countries for specific software components, etc. which are increasingly relevant (see, for instance, the growing impact of governance rules and transparency laws).

The contract by which software is “acquired”, maybe individually negotiated or, particularly in the mass market, based on so-called “terms and conditions,” which are subject to regulations, in particular, if the customer is a consumer. Be it in a contract or in standard terms and conditions, the required legal terms, include:

  • Scope of the license or service
  • Guarantee and Warranty / SLA
  • Transferability
  • Type of charges
  • Liability
  • Maintenance provisions (a separate maintenance agreement may be concluded)
  • Miscellaneous legal provisions (e.g. set-off, default, dispute resolution, governing law, severability clause)
Performance & Risk Management

Performance management involves continuous tracking and analysis of selected relevant measures and taking timely action if needed.
Relevant measures can cover different functions, such as development, support, etc. Especially important from a product management point of view is business measures. Product managers need to establish clarity over which business measures are really important: Which measures are actually used by important stakeholders to determine the success of the software product? These measures are ultimately used to assess the performance of the product manager. Here are the candidates:

  • Financial performance:
    • Revenue metrics such as monthly recurring revenue (MRR), average revenue per user (ARPU), and customer lifetime value (CLTV)
    • Profit and loss (P&L) metrics such as gross margin and EBIT
  • Market performance:
    • Market share, the share of (market) growth, the share of (customer) wallet
    • Customer acquisition costs (CAC), the share of market spend
  • Customer performance:
    • Customer satisfaction score (CSAT) and net promoter score(NPS)
    • Customerretentionrateandchurnrate
  • Organizational performance:
    • Speedmetricssuchastime-to-market,time-to-revenue, customer time-to-value(TTV)
    • Cost metrics such as cost of quality (COQ) and customer onboarding cost

Risk management requires continuous tracking and analysis of risks identified in connection with the development, sales, distribution, delivery, and customer use of the software product, and taking timely action if needed.

Product Planning

Product planning is the combination of processes used for converting the product strategy and external insights into an executable plan that is the basis of the product team’s work. The Software Product Management Framework describes product planning as a core software product manager activity.

Most of the tasks of product planning require the product manager to cooperate tightly with Development. Development organizations use a variety of methodologies. The chosen methodology on the development side impacts the work of the software product manager and the interface between SPM and Development – in particular, how requirements are handed over for implementation and how acceptance of deliverables are managed. In reality, most companies use a mix of methodologies, be it agile, iterative, or stage-gate often called “waterfall.”

Customer Insight

Creating and evolving products that meet the ever-changing needs of customers requires an excellent understanding of the problems and the environment in which customers operate. Product managers must therefore work towards such an understanding. In this context, the term “customer” is used for all types of customer-side stakeholders, like users, buyers, IT managers, owners, operators, etc.

Two complementary approaches for gathering accurate customer data are available: Direct contact with customers and indirect through the use of data analytics methods.
Typical direct contact activities are:

  • Customer visits
  • Meeting customers at conferences, workshops, and events
  • Organizing customer round tables (focus groups)
  • Design sprints with customer participation
  • Supporting selected pre-sales activities
  • Participating in support escalations
  • Participating in online forums

Regular participation and engagement help to keep abreast of issues and trends facing existing customers. Direct contact with customers not only supports an analytical understanding of their problems but may also create empathy. Collecting relevant customer data is only the first step to creating insights. Software product managers need to feed this data into discussions with stakeholders and use it for requirements analysis, as well as business modeling.

Product Life Cycle Management

Product management is responsible for a product along its entire life cycle. Each life cycle phase has its individual characteristics and focus areas. In the first three phases, investments are necessary to develop the product. During the maturity and decline phases, the product serves as a cash cow, i.e. it generates significant revenue with rather little investment. The resulting profit can be used to finance other products in the portfolio.

Product management must have a solid understanding of the various phases in order to develop strategies and activities that optimally support a product in a specific phase. This requires tight cooperation with the involved functional units within the company. The life cycle responsibility encompasses product-related knowledge management, i.e. the product manager needs to ensure that the knowledge required for the viability of the product continues to be accessible and available to the company during the product life cycle.

Continuous measurement of a product’s performance is a prerequisite to drive corrective actions if needed. Therefore, a product manager must monitor and analyze how well the product is performing. This includes product profitability, actual versus planned revenue, customer satisfaction, and market share.

Roadmapping

Product roadmapping translates the long-term product strategy into a series of releases that satisfy the business goals of the company and cover the strategic time frame, i.e. between one and five years. A product roadmap usually contains the following basic elements:

  • Timescale
  • Releases and versions
  • Release themes and main features
  • Target markets
  • Product dependencies
  • Technology impacts

Product roadmaps are constructed for internal and external audiences. Internal roadmaps set the scope for specific product releases. They provide the basis for forecasting, budgeting, and the instantiation of projects for the development of specific product releases. They also help with the alignment of product strategies within a company’s portfolio. External roadmaps are used for communication with customers, market research analysts, or investors. They are a means to communicate strategy, receive feedback on it, and build trust in the commitment of the company to long-term continuous investment in the product. High-level release themes from the roadmap are key elements in guiding the release planning process.

Release Planning

Release planning is concerned with defining the detailed contents of a forthcoming product release in order to maximize the value of the release in relation to the product’s success over its life cycle. It needs to be tightly linked to the product requirements engineering process.

The release planning decisions balance opposing forces. On the one hand, the selected product requirements need to satisfy business objectives and real customer needs, while leading to a recognizable advantage over competition. There needs to be a balance between technology push and market pull, i.e., innovative features and customer requirements. On the other hand, the selected requirements need to account for the capabilities and capacity of the product organization, while being compliant with time and budget constraints and architectural considerations. Other influencing factors can be customer commitments and sales and marketing activities such as fairs. Release planning involves negotiations and setting priorities to resolve conflicts between stakeholders about release contents and interests that are pursued with the evolving product. The release planning decisions ought to be based on strategic guidelines, e.g. to what degree the company is reactive to its markets by giving priority to customer needs or pursuing a proactive innovation strategy by pushing new technologies to the markets. Results are documented in a release plan that all stakeholders finally have to agree to. Typically, this is an iterative decision-making process involving the stakeholders in requirements engineering and release planning. The software development approach can also have an impact since agile development requires the software product manager’s ongoing involvement in decisions about release contents and synchronization with release planning.

Product Requirements Engineering

Requirements engineering in a software product management context covers typical requirements engineering activities such as elicitation, analysis, specification, validation, and management, adapted to a market-driven situation with many customers, competitors, and suppliers. Three requirement types can be distinguished and must be managed separately: functional requirements, quality requirements, and constraints.

Requirements can be raised from different sources:

  • Stakeholders e.g. customers, users, user groups, business experts, executive management, partners
  • Data sources e.g. literature, social media, market analysis, product strategy, company guidelines, analytics, standards, and regulations
  • Systems in operation e.g. other existing software products, competitive analysis

A product organization needs a dedicated process to deal with requirements in a systematic way.
Traceability is used to understand the origins and implications of requirements. It allows following the path from the original requirement to the software implementation and back. Traceability is sometimes required for legal reasons.

As requirements evolve throughout their life cycle, they are often specified in standardized documents or in the form of sorted lists called “backlog”. For each requirement, standard attributes are used. To minimize misunderstandings, language templates can be used to specify functional requirements in natural language. To further increase the precision of a specification, the semi-formal graphical specification can be employed, e.g. use case diagrams to summarize the services of a system provided to its direct context. Quality requirements can be specified qualitatively, by example, operationally, or quantitatively.

Orchestration

Development

Development is responsible for all technical software aspects, including the implementation of changes and extensions to the software. The development function exercises a strong influence on the product’s functional capabilities and qualities, as well as the user experience.

Product Architecture Management

The product architecture is designed, maintained, and managed under the leadership of the chief architect of a software product, sometimes supported by a team of architects. Product Architecture has a significant impact on a software product with regard to evolution and flexibility.

Product architecture management consists of a number of dimensions like offering architecture, business architecture, technical architecture, tailorability architecture, and architectural governance.

The management of these dimensions needs tight cooperation between product manager and architect.

Development Environment Management

Development Environment Management addresses development aspects that are relevant across and above development projects. This includes the governance of development processes and tools, IT infrastructure, configuration management, knowledge management, resource and skills management, development sourcing, and estimations.

Development Execution

Development Execution addresses the execution of the actual software development work. How this is done depends on the chosen development methodology, which in particular, has an impact on the way SPM and Development cooperate. Development may work based on a project structure, or in a continuous mode.

User Experience Design

User Experience (UX) design addresses every aspect of the users’ interactions with a software product or component with the purpose of shaping the user’s behaviors, attitudes, and emotions about that product or component.

Detailed Requirements Engineering

Detailed Requirements Engineering is part of Development responsibility and follows a process similar to the product requirements engineering process. Once the contents of a release are defined, the corresponding product requirements are transferred to Development and further refined.

Quality Management

Quality Management addresses the technical quality of software. It includes test concepts and infrastructure, technical support concepts and structure (together with Support), a historical quality database, quality forecasting, and the execution of tests.

Marketing

Marketing is responsible for all aspects of preparation and support of the product sales activities of a company, including the creation of product awareness and communication of the positioning of the product in the market. The actual split of responsibilities between Marketing and Sales may differ from company to company. In some companies, SPM and Marketing are organizationally combined.

Marketing Planning

Marketing planning addresses the development and negotiation of plans for all marketing-related activities during a given time frame, often a year, including respective budgets.

Value Communication

Value communication is the process of connecting defined customer values with identified target markets for the product.

Product Launches

Product launches mean the introduction of a new product, version or release to the market.

Opportunity Management

Opportunity management means the continuous pursuit of identified business opportunities with the objective to turn those opportunities into concrete product success. This may include the formulation of product requirements, development and implementation of new product marketing and communication approaches, and tight cooperation with Sales.

Channel Preparation

Channel preparation means that the selected channels are enabled in time to sell a new product, version or release.

Operational Marketing

Operational marketing means the execution of the marketing plan, tracking of the relevant measures, and correcting and optimizing the marketing plan and channel mix according to measurements tracking or when new insights or opportunities arise.

Sales & Fulfilment

Companies establish a company-wide sales strategy within which individual product sales activities are planned and executed. Sales is responsible for all sales activities at a company. The actual split of responsibilities between Marketing and Sales may differ from company to company. Fulfillment means making the product available to the customer for use. This can include online downloads, making Software-as-a-Service available to the customer, delivery of software on physical storage media or the distribution of packaged software products to retail outlets. Fulfillment can fall under the responsibility of Sales, or a central fulfillment unit.

Sales Planning

Sales planning addresses the development and negotiation of plans for all sales-related activities during a given time frame, often a year, including target values and incentives.

Customer Relationship Management

Customer relationship management means the systematic management of a company’s interactions with customers and sales prospects. This includes customer communication, knowledge management, and customer requirements engineering.

Operational Sales

Operational sales means the execution of the sales plan, tracking of the relevant measurements, and taking corrective actions when measurements deviate from the plan. This includes offers and the negotiation of contracts, and the management of offers and contracts.

Operational Fulfillment

Operational fulfillment means ensuring smooth order and distribution processes, stable and easy online orders and distribution, and smooth and correct billing/payment.

Delivery Services & Support

Delivery Services mean all customer-specific services provided to customers to help them become productive with the initial software product or when a new version is installed. This includes installation and tailoring services. Tailoring based on the product’s tailorability options is a customer-specific service that can mean a large project for configuration and customization. Support refers to all product-related services provided to existing customers, such as maintenance, training, operations, user help desk. Support provides technical support to customers, usually covered by maintenance or SaaS contracts.

Service Planning & Preparation

Service planning and preparation address the development and negotiation of plans for all product service-related activities during a given time frame, often a year, including target values and incentives.

Service Execution

Service Execution means the execution of the service plan, tracking of the relevant measurements, and taking corrective actions when measurements deviate from plan.

Technical Support

Technical support refers to the fulfillment of contractual obligations, i.e. maintenance contracts with license products or of service-related elements of SaaS contracts.

Operations

Operations is a key element in all products offered with the delivery model of SaaS (Software as a Service) or as a customer-specific managed service. In these cases, the vendor assumes the responsibility of operating the software at an internal or external data center, also known as a hosting service, and giving access to the customer. The quality requirements of this hosting service are defined in a service level agreement that is part of the contract with the customer. The vendor’s approach may include DevOps.

Activities: - under SPM responsibility - under other function's responsibility

Syllabi

ISPMA training and certification is based on the ISPMA syllabi that describe the learning objectives and the scope of the competencies for managing a software product. The syllabi are fully aligned with the framework.

Student edition Trainer edition
SPM Excellence in Product Strategy Download Email us
SPM Excellence in Product Planning Download Email us
SPM Excellence in Strategic Management Download Email us
SPM – The Foundation Download Email us
SPM Excellence in Orchestration Download Email us
SPM for Startups Download Email us