FinOps-Open-Cost-and-Usage-Spec / FOCUS_Spec

The Unifying Specification for Cloud Billing Data
https://focus.finops.org
Other
184 stars 39 forks source link

[Work_Item] Document and add initial support for SaaS-centric concepts #616

Open shawnalpay opened 1 month ago

shawnalpay commented 1 month ago

1. Problem Statement *

Describe the problem, issue, use case, or opportunity that this work item addresses. Include practitioner quotes illustrating real examples a) of questions being asked by practitioners and b) value unlocked by answering these questions, if available.

  • What is the problem?: Explain the context and why it needs resolution.
  • Impact: Describe how the problem affects users, systems, or the project.

The FOCUS specification, so far, has chiefly been engineered to support cost and usage data as it is generated by cloud service providers (CSP) such as AWS, Azure, GCP, and OCI. There is a rich landscape of software-as-a-service (SaaS) providers in the FinOps landscape whose billing models differ in various ways from CSPs -- and as currently constructed, FOCUS does not yet provide an onramp for those SaaS providers (unless they presumably create a host of custom columns to support their concepts).

2. Objective *

State the objective of this work item. What outcome is expected?

  • Success Criteria: Define how success will be measured (e.g. metrics and KPIs).

Analyze a set of major SaaS providers and determine the common SaaS-centric concepts that could be implemented in a future version of the spec. Time permitting, we would then attempt to augment the specification to establish an MVP of those concepts within that release, with further support added in future releases.

3. Supporting Documentation *

Include links to supporting documents such as:

  • Data Examples: [Link to data or relevant files; DO NOT share proprietary information]
  • Related Use Cases or Discussion Documents: [Link to discussion]
  • PRs or Other References: [Link to relevant references]

Related issue: #337

Documentation TBD

4. Proposed Solution / Approach

Outline any proposed solutions, approaches, or potential paths forward. Do not submit detailed solutions; please keep suggestions high-level.

  • Initial Ideas: Describe potential solution paths, tools, or technologies.
  • Considerations: Include any constraints, dependencies, or risks.
  • Feasibility: Include any information that helps quantify feasibility, such as perceived level of effort to augment the spec, or existing fields in current data generator exports.
  • Benchmarks: Are there established best practices for solving this problem available to practitioners today (e.g. mappings from existing CSP exports that are widely used)?

We propose performing a time-boxed analysis of SaaS concepts that will generate a set of recommendations of SaaS-centric concepts to be implemented in a future release. If there is time, we would then initiate that work and establish an MVP of SaaS-centric concepts in that release, to be fleshed out further in future releases (similar to how FOCUS 0.5 established an MVP for CSP-centric concepts).

5. Epic or Theme Association

This section will be completed by the Maintainers.

  • Epic: [Epic Name]
  • Theme: [Theme Name, if applicable]

TBD

6. Stakeholders *

List the main stakeholders for this issue.

  • Primary Stakeholder: [Name/Role]
  • Other Involved Parties: [Names/Roles]

TBD

mike-finopsorg commented 1 month ago

APJ FOCUS User Group call 23/October attendees raised this as highly desired.

shawnalpay commented 4 weeks ago

Thanks everyone for participating in today’s SaaS ideation discussion! I did my best to capture the live discussion in this doc.

Some topics for consideration before we meet again:

We agreed to the following action items:

Please put your hand up if you can own any of these! I can only help keep this topic on rails; I am not someone who possesses core competency here. :slightly_smiling_face:

The last thing I’ll say is: at this stage, let’s stay focused on concepts, not execution. This is a big topic with lots of potential rabbit holes, so let’s try to stay high-level and avoid the “how” until we’re aligned on the “what”.

I will sync with the team to determine which TF will absorb this topic and let you all know ASAP. In the meantime, let me know if you have any questions or feedback. Thanks!

image

jpradocueva commented 3 weeks ago

Documents

jpradocueva commented 3 weeks ago

Action Items from TF-2 call on Oct 23:

Action Items from TF-2 call on Oct 30:

jpradocueva commented 2 weeks ago

Action Items from Members' call on Oct 31:

jpradocueva commented 2 weeks ago

Notes from the Maintainers' call on November 4:

Context: The task expands the specification to include SaaS services, a growing area in FinOps. SaaS billing and usage data have unique characteristics that require tailored support in the spec. Level of Effort Required: Very High — Supporting SaaS in the spec involves substantial adjustments to account for varied billing and usage models, which differ significantly from IaaS and PaaS.

jpradocueva commented 2 weeks ago

Comments extracted from the TF-2 minutes on November 6:

List of Commitment Attributes

Commitment Model

Commitment Interval

Commitment Reconciliation

Purchasing/Acquisition Attributes

Purchasing Model

Commitment/Discount Accessibility

Commitment Renewal Mechanism

Non-currency Commitment Support (e.g., Tokens)

Pricing Attributes

Pricing Model

Tiered Pricing Support

Free-tier Support

Invoicing Attributes

Invoicing Models

Other

Billing Dataset Granularity

jpradocueva commented 2 weeks ago

Action Items from the TF-2 call on November 6:

jpradocueva commented 2 weeks ago

Comments from the Members' call on November 7:

#616: Task Force 2 concentrated on SaaS-related concepts, focusing on pricing and purchasing models. The work includes defining attributes and values for SaaS items to improve data alignment in FOCUS. Billing Model Provider Matrix (· Spreadsheet: 24.10.23 Billing Model Provider Matrix): This spreadsheet outlines various attributes, such as price models, purchasing models, and commitment structures for SaaS billing. TF-2 discussed further detailing these attributes and prioritizing specific properties for an MVP (Minimum Viable Product) scope in v1.2. They agreed to finalize a subset of attributes for the initial release and carry over the remaining elements.

Action Items:

[#616] Irena and TF-2 Members: Refine and prioritize the billing model attributes and confirm an MVP subset for SaaS concepts.

jpradocueva commented 1 day ago

Action Items from the TF-2 call on November 20:

jpradocueva commented 6 hours ago

Action Items from the Members' call on November 21: