Since I’ve become attuned to Product Patterns (buckets of software functionality that appear in product after product), I’ve noticed dozens of them. Some are big, top-level patterns. And some are really sub-patterns, that exist in the context of a larger pattern.
I’m going to start with a few of the high-level Product Patterns that I see again and again in enterprise software.
- The Content Manager – manages some kind of content: secures it, organizes it, makes the content searchable, lets users share it
- The Content Viewer – renders content for viewing by humans. It lets users view and navigate through the content, not edit it. For the ability to both view and edit content, see the Content Authoring Tool Pattern. (Many software platforms don’t have a Viewer because they simply use the web browser to view content, or because they use a Content Authoring Tool to both view and edit.)
- The Content Generator – takes one type of content and generates a new kind of content from it. (like generating a populated dashboard from a chart design).
- User Manager – manages logins, user accounts & profiles, etc.
- The Workflow Manager – automates a business process by routing content,approvals, tasks, and the like to users.
- E-Commerce Manager – self-evident, but when built into a software product it’s often to let the user buy more or renew more licenses to run itself.
- The Content Authoring Tool – lets users create content. Often this content is then deployed to a server with Content Manager capabilities, and then managed by it.
Each of these high-level Product Patterns breaks down into several sub-patterns that I’ll hopefully cover in more detail some other time.
Most software “platforms” or “server” products — whether they are installed servers or software-as-a-service offerings — are implementations of at least one or two of these patterns, and sometimes all seven.
Product Pattern Examples
Microsoft Office tools (Word, Excel, Powerpoint) – These are “Content Authoring Tools.” The content: documents, spreadsheets, and presentations.
Wikipedia / MediaWiki & other wiki platforms – Most Wikis are a combination of a Content Viewer, Content Manager, Content Authoring Tool, and User Manager. Most users just view pages (via the Content Viewer). Other users (authors and editors) log in using the User Manager and create and edit Wiki pages. And the Content Manager gives all users the ability to search content, to categorize content, and track revisions to the content.
Craigslist is a Content Manager, User Manager, and a Content Authoring Tool. The content is primarily user-written advertisements. Viewing
Kickstarter is a Content Manager, User Manager, Content Authoring Tool, plus E-Commerce. The content is mainly user-written project descriptions/advertisements.
A Business Intelligence platform like Microstrategy is a Content Manager of report and dashboard designs, plus a Content Generator that runs the designs and populates them with current data, a Content Viewer to render the reports, and a User Manager. The content is reports, analytic data cubes, and visualizations.
Salesforce.com’s Sales Cloud is a combination of six Macro Product Patterns:
- A Content Authoring Tool to let users create content like new leads, opportunities. customer profiles, and other related info,
- A Content Manager to secure and manage access to , Content Generator, Workflow Manager (to move
- A Workflow Manager to route leads from one stage to the next and collect approvals
- An E-Commerce Manager to let Sales Cloud customers convert from a trial license to a paid-for license, and to purchase extra seats.
- A Content Generator that generate sales forecasts, reports, and dashboards from user-entered data.
- A User Manager to manage user logins and accounts.
Facebook is primarily a User Manager plus a subset of the Content Manager (search, routing of status updates to other users).