Solving Product Management Challenges via a Knowledge Graph that manifests as a Semantic Web of Linked Data

At OpenLink Software, our sophisticated portfolio of platform-agnostic products has increasingly required the virtues of a Knowledge Graph, manifested as a decentralized Semantic Web of Linked Data, to deliver the kind of agility demanded by our own business operations.

Our Challenge

Increase agility across Product Development, Description, Packaging, Merchandising, Sales, and Delivery.

Our Solution

Use RDF and Linked Data principles to progressively construct an Enterprise Knowledge Graph that manifests as a Semantic Web comprised of unambiguous identifiers for Software Applications, Software Licenses, Operating Systems, Processors, Offers, Installer Archives, Virtual Machines & Containers, etc.

How We Do It

At the end of each product release cycle, whether for a new or existing product, we take the following steps, ensuring that hyperlinks (specifically, HTTP URIs) identify everything (i.e., Entities, Entity Types, and Entity Relationship Types). This enables insightful lookups and follow-your-nose exploration triggered by hyperlink clicks, whenever needed by whomever, across the enterprise, subject to data access policies described by Attribute-based Access Controls (ACLs).

  1. Build a Product (i.e., Software Application) or Service Release

  2. Understand the Features and Benefits of the Release

  3. Determine how its value is to be packaged for sale (e.g., Licenses for Linux, macOS, Windows)

  4. Provide FREE Evaluation Licenses (e.g., for Linux, macOS, Windows) via multi-purpose License Generation Service

  5. Provide Web-accessible options for installation (e.g., Downloadable Installer Archives for Linux, macOS, and Windows, or Cloud-based Virtual Machines or Docker Containers)

  6. Describe Installer Archives from their Depots (e.g., for Linux, macOS, Windows, Java Virtual Machines)

  7. Describe & Publish Product Offers via a basic HTML Page (e.g., Licenses for Linux, macOS, Windows) and/or Google Spreadsheet

  8. Merchandise Offers (e.g., via Summary Page, Listing Filters, or a publicly accessible Google Spreadsheet populated via a SPARQL Query that returns data via HTML or CSV docs)

  9. Provide Offer Quotations and/or Checkout Service (e.g., for Linux, macOS, Windows)

  10. Provide Payment Processing Service, that’s loosely-bound to Payment Service Providers (e.g., Stripe)

  11. Generate purchased License and deliver to customer (via email, file repository, or other means) via multi-purpose License Generation Service (as in #4 above)

  12. Use OpenAPI or RDF to describe Web Services APIs that provide access points for REST-ful interaction with specific Actions – easing integration with external systems used by our customers and partners

Net Result

In classic two-fer fashion, completing this challenging effort has enabled us both to reach our desired enterprise agility levels and to significantly enhance the hands-on expertise of every employee in the process. Best of all, we can share this level of agility with our customers through improved services while simultaneously making the virtues of our product portfolio easier for those same customers to understand and exploit.

Related