When I think about "making" software, the first activities that come to mind are design and construction. But there's so much more, including customer and market research, release planning, feature description and specification, construction oversight, alpha and beta testing, implementer and support training, market rollout, and early adopter support.

All those activities can be harmonized and improved by choosing the right goal. Here are a few examples:

Making Products for the User's Entire Experience

I've observed increases in product adoption and satisfaction when makers orchestrate the user's entire experience, and design products to succeed in each phase of the experience. Here's an example of a successful experience:

 Select  →  Acquire  →  Implement  →  Use  →  Improve  →  Upgrade 

Orchestration goals include eliminating surprises and delays in each phase, and reducing the effort needed to move from one phase to the next. This requires coordination of practitioners throughout the maker's organization (including product managers, functional and user interface designers, usability engineers, software architects and engineers, license and contract managers, marketers, sales representatives, provisioning managers, implementers, and support engineers).

Design goals depend on phase - for example:

Enterprise Products Have Different Needs

Most of us have daily experience with single-user products, like email and web clients, word processors and spreadsheets. But how many spend a similar amount of time using enterprise products? The differences are pronounced; here are just a few:

Even enterprise product makers usually spend much more time using single-user products than enterprise ones. There's a constant danger of making decisions based on what's most familiar, so teams need to reacquaint themselves frequently with the needs of enterprise products.