Arcade Game Maker Memo 04-01
|To:||For the record|
|From:||Vice President for Product Development|
|CC:||Vice President for Product Planning|
|Date:||March 3, 2004|
Strategy development is not an exact science. To ensure clear communication, this memo captures the rationale behind our product production strategy.
The strategy is derived by considering the goals of the product line and its identified qualities and available technologies. One of the inputs to this process is Porter's Five Forces Model, shown in the figure. This model allowed us to structure our reasoning about strategy.
Porter's Five Forces Model
Each box in the graphic represents a force on the production strategy that a company must resolve at a strategic level. Each force may vary across products or within a product across production increments.
Goals shown in the second figure were identified in the product line business case. They were listed in the corporate strategic plan and identified by considering the Industry Competitors, Substitutes, and Possible Entrants forces.
Quality attributes shown in this figure are influenced primarily by game buyers. Cell phone companies purchasing the second iteration of products require low resource consumption. Qualities were identified by considering the Industry Competitors and Potential Entrants forces. To stay competitive, we must be able to update our products quickly.
Technologies used to produce the products are influenced by what is available from suppliers. For example, several game engines (essentially platforms upon which games can be built) are available. Suppliers provide tools like code generators (e.g., Eclipse Foundation's Java Emitter Templates [JET]) that allow products to be generated from models. For wireless devices, buyers drive the technology choice because our products will be integrated into their devices.
The production strategy is the high-level notion of how products will be developed. It determines some core asset features. The strategy is formed by considering each element in the above figure and ensuring that the columns are mutually supportive and consistent.
Tradeoffs were made to reach a consistent state. For example, the use of game engines is not consistent with low resource consumption, so the game engines choice is deleted from the technologies list. The resulting lists, shown in the above figure, form the basis for the strategy.
We considered the fit among table elements, especially the technologies. Generative programming requires a basic set of components from which products can be composed. The use of a traditional programming environment to produce software assets that then became the set of components shows a reasonable fit between traditional development and generative programming.
Our final production strategy can be summarized as follows:
We will position ourselves as the leading provider of rapidly customized, high-performance, low-cost games by producing products that are easily modified, have better performance than our competitors' products, are sufficiently low cost to deter potential entrants from entering the market, and require sufficiently few resources to allow their use on any embedded computer. We will produce the initial products using a traditional iterative, incremental development process and a standard programming language, IDE, and available libraries. We will create domain-based assets (including a product line architecture and software components) for the initial products in a manner that will support a migration to automatic generation of second and third increment products.