diff --git a/ipr.md b/ipr.md new file mode 100644 index 000000000..7fedd0646 --- /dev/null +++ b/ipr.md @@ -0,0 +1,36 @@ +# FOCUS Specification (Open Cloud Bill Specification) Working Group - IPR + +## Licensing Commitments + +Participants in this group have made certain licensing commitments by joining the group. + +## Member Organizations + +See: [Contributors List](https://github.com/FinOps-Open-Cost-and-Usage-Spec/FOCUS_Spec/blob/working_draft/specification/contributors.md) + +## Specifications published by the Group + +The following is the list of specifications produced by the Open Cloud Bill Specification Working Group that have associated disclosure obligations, and possible licensing obligations under the W3C Patent Policy. +​ +| Document under the W3C Patent Policy | Patent Disclosure | Patent Exclusion | +|:-------------------------------------|:------------------|:-----------------| +| FOCUS Specification | [disclose](mailto:focus@finops.org) | [Exclude](mailto:focus@finops.org) | +​ +## Patent Disclosures and Claim Exclusions + +This section summarizes patent disclosures by participants in Open Cloud Bill Specification Working Group as required by the W3C Patent Policy. + +### Known Disclosures + +No patent disclosures have been made for any specifications of this group. + +## How to Make a Patent Disclosure + +### Disclosures + +Disclosures from the general public should email [focus@finops.org](mailto:focus@finops.org). +FOCUS Members agree to develop under the W3C Patent Policy, all parties have committed to the W3C Royalty-Free Licensing Terms and are not required to disclose patents. + +### Claim Exclusions + +Only Open Cloud Bill Specification Working Group participants may exclude patent claims concerning specifications developed under the W3C Patent Policy. To make an exclusion, participants should email [focus@finops.org](mailto:focus@finops.org), but only after first disclosing the patent. diff --git a/specification/contributors.md b/specification/contributors.md index 5707a5f53..99162b56e 100644 --- a/specification/contributors.md +++ b/specification/contributors.md @@ -5,7 +5,7 @@ Thanks to the following FOCUS members for their contributions to this work. * Amit Wadhwa (Google) * Chandra Deverajan (CloudTrakr) * Christopher Harris (Datadog) -* Elene Rundle (Google) +* Eleni Rundle (Google) * Erik Peterson (CloudZero) * Graham Murphy (Australian Retirement Trust) * Irena Jurica (Neos) @@ -27,7 +27,7 @@ Thanks to the following FOCUS members for their contributions to this work. * Rupa Patel (Google) * Sanjna Srivatsa (VMWare) * Tatiana Dubovchenko (Flexera) -* Tery Morgan (Microsoft) +* Trey Morgan (Microsoft) * Tim O'Brien (Walmart) * Trig Ghosh (Accenture) * Udam Dewaraja (FinOps Foundation) diff --git a/specification/dimensions/billingperiodend.md b/specification/dimensions/billingperiodend.md index 54b7c09b0..c3a9e0377 100644 --- a/specification/dimensions/billingperiodend.md +++ b/specification/dimensions/billingperiodend.md @@ -4,7 +4,7 @@ Billing period represents the time window for which an organization has or will Billing Period End represents the end date and time of the billing period. -The BillingPeriodEnd column MUST be present in the billing data. This column MUST be of type Date/Time and MUST NOT contain null values. BillingPeriodEnd column MUST conform to [FOCUS Date/Time Format](#date/timeformat). The sum of the Billed Cost metric for line items in a given billing period MUST match the total cost of the invoices received for that billing period. +The BillingPeriodEnd column MUST be present in the billing data. This column MUST be of type Date/Time and MUST NOT contain null values. BillingPeriodEnd column MUST conform to [FOCUS Date/Time Format](#date/timeformat). The sum of the Billed Cost metric for line items in a given billing period MUST match the sum of the invoices received for that billing period for a billing account. ## Column ID diff --git a/specification/dimensions/billingperiodstart.md b/specification/dimensions/billingperiodstart.md index 81d9210fa..c33c43b08 100644 --- a/specification/dimensions/billingperiodstart.md +++ b/specification/dimensions/billingperiodstart.md @@ -4,7 +4,7 @@ Billing period represents the time window for which an organization has or will Billing Period Start represents the start date and time of the billing period. -The BillingPeriodStart column MUST be present in the billing data. This column MUST be of type Date/Time and MUST NOT contain null values. BillingPeriodStart column MUST conform to [FOCUS Date/Time Format](#date/timeformat). The sum of the Billed Cost metric for line items in a given billing period MUST match the total cost of the invoices received for that billing period. +The BillingPeriodStart column MUST be present in the billing data. This column MUST be of type Date/Time and MUST NOT contain null values. BillingPeriodStart column MUST conform to [FOCUS Date/Time Format](#date/timeformat). The sum of the Billed Cost metric for line items in a given billing period MUST match the sum of the invoices received for that billing period for a billing account. ## Column ID diff --git a/specification/dimensions/dimensions.mdpp b/specification/dimensions/dimensions.mdpp index fe3f40b07..3da27a1c0 100644 --- a/specification/dimensions/dimensions.mdpp +++ b/specification/dimensions/dimensions.mdpp @@ -2,7 +2,7 @@ The FOCUS specification defines a group of columns that provide qualitative values (such as dates, resource, and provider information). These columns are categorized to as 'dimensions' within the dataset and are needed to serve many [FinOps capabilities][FODOFC]. You can use -dimensions to categorize, filter, and reveal details in your data when grouped with 'metrics', which are the quantitative (numeric) values. +dimensions to categorize, filter, and reveal details in your data when grouped with 'metrics', which are the quantitative (numeric) values. The Dimensions are presented in Alphabetical order. !INCLUDE "availabilityzone.md",1 !INCLUDE "billingaccountid.md",1 diff --git a/specification/overview.md b/specification/overview.md index 8a8a58d5e..1371fb196 100644 --- a/specification/overview.md +++ b/specification/overview.md @@ -2,21 +2,22 @@ *This section is non-normative.* -FOCUS aims to establish a community-driven specification for consumption-based billing data. Due to the lack of a broadly adopted specification, infrastructure and services providers have resorted to proprietary billing schemas and terminologies that they feel best serve their customers needs. However, the lack of conformance amongst the billing data generators has forced FinOps practitioners to employ disparate, best-effort schemes for each provider in order to perform essential FinOps capabilities such as chargeback, cost allocation, budgeting and forecasting. +FOCUS aims to establish a community-driven specification for consumption-based billing data. Due to the lack of a broadly adopted specification, infrastructure and services providers have resorted to proprietary billing schemas and terminology. However, the lack of conformance amongst the billing data generators has forced FinOps practitioners to employ disparate, best-effort schemes which each practitioner must develop individually for each provider in order to perform essential FinOps capabilities such as chargeback, cost allocation, budgeting and forecasting. -The FOCUS specification's schema definition and FinOps aligned terminology provide a clear guideline for producing FinOps-serviceable billing datasets. Datasets conforming to FOCUS enable FinOps practitioners to perform common FinOps capabilities, like the ones mentioned above, using a generic set of instructions, regardless of the origin of the dataset. +The FOCUS specification's schema definition and FinOps aligned terminology provide a clear guide for producing FinOps-serviceable billing datasets. Datasets conforming to FOCUS enable FinOps practitioners to perform common FinOps capabilities, like the ones mentioned above, using a generic set of instructions, regardless of the origin of the dataset. ## Background and History -This project is sponsored and maintained by the [FinOps Foundation][FODO]. This work initially started under the Open Billing working group under the FinOps Foundation. The decision was made in Jan 2023 to begin to migrate the work to a newly formed project under the Linux Foundation called the FinOps Open Cost and Usage Specification (FOCUS) to better support the creation of a specification. +This project is sponsored by the [FinOps Foundation][FODO]. This work initially started under the Open Billing working group under the FinOps Foundation. The decision was made in Jan 2023 to begin to migrate the work to a newly formed project under the Linux Foundation called the FinOps Open Cost and Usage Specification (FOCUS) to better support the creation of a specification. ## Intended Audience This specification is designed to be used by three major groups: -* Billing data generators: Infrastructure and services providers that generate costs data, such as (but not limited to): +* Billing data generators: Infrastructure and services providers that bill based on consumption, such as (but not limited to): * Cloud Service Providers (CSPs) * Software as a Service (SaaS) platforms + * Managed Service Providers (MSPs) * Internal infrastructure and service platforms * FinOps tool providers: Organizations that provide tools to assist with FinOps * FinOps practitioners: Organizations and individuals consuming billing data for doing FinOps @@ -27,15 +28,15 @@ The FOCUS working group will develop an open-source specification for billing da ## Design Notes -The following principals were considered while building the specification. +The following principles were considered while building the specification. -### Provider Neutral Approach by Default +### Provider-Neutral Approach by Default -While the schema, naming, terminology and attributes of many providers were reviewed during development, this specification aims to be provider neutral. In some cases, the approach may closely resemble one or more providers implementation, while in other cases, the approach might be new. In all cases, the FOCUS group (community composed of FinOps practitioners, Cloud and SaaS providers and FinOps vendors) will attempt to prioritize alignment with the FinOps [Framework][FODOF] and [Capabilities][FODOFC]. +While the schema, naming, terminology and attributes of many providers were reviewed during development, this specification aims to be provider-neutral. In some cases, the approach may closely resemble one or more provider's implementation, while in other cases, the approach might be new. In all cases, the FOCUS group (community composed of FinOps practitioners, Cloud and SaaS providers and FinOps vendors) will attempt to prioritize alignment with the FinOps [Framework][FODOF] and [Capabilities][FODOFC]. ### Working Backwards -The FOCUS group working on the specification aims to work backwards from essential FinOps capabilities that practitioners need to perform to prioritize the dimensions, metrics and the attributes of the billing data that should be defined in the specification. The enabled capabilities will be documented within the FOCUS specification. +The FOCUS group working on the specification aims to work backwards from essential FinOps capabilities that practitioners need to perform to prioritize the dimensions, metrics and the attributes of the billing data that should be defined in the specification to fulfill that capability. Some of the enabled capabilities will be documented in the [Appendix: FinOps Capabilities Enabled by FOCUS (TODO)](#finopscapabilitiesenabledbyfocus). ### Extensibility diff --git a/specification/versions/candidate_release.md b/specification/versions/candidate_release.md index d8fb9f5f5..b1509f25c 100644 --- a/specification/versions/candidate_release.md +++ b/specification/versions/candidate_release.md @@ -20,6 +20,6 @@ Publication as a Candidate Release does not imply endorsement by the FOCUS Proje This document should be considered a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress. -This document was produced by a group operating under the W3C Patent Policy. FOCUS maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy. +This document was produced by a group operating under the W3C Patent Policy. FOCUS maintains a public list of any patent disclosures made in connection with the deliverables of the group; [that page](https://github.com/FinOps-Open-Cost-and-Usage-Spec/FOCUS_Spec/blob/working_draft/ipr.md) also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy. This document is governed by the [5 February 2004 W3C Patent Policy](https://www.w3.org/Consortium/Patent-Policy-20040205/). diff --git a/specification/versions/main.md b/specification/versions/main.md index afe897a9c..41bbb7aba 100644 --- a/specification/versions/main.md +++ b/specification/versions/main.md @@ -10,6 +10,6 @@ This section describes the status of this document at the time of its publicatio This is a published release of the FinOps Open Cost and Usage Specification. -This document was produced by a group operating under the W3C Patent Policy. FOCUS maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy. +This document was produced by a group operating under the W3C Patent Policy. FOCUS maintains a public list of any patent disclosures made in connection with the deliverables of the group; [that page](https://github.com/FinOps-Open-Cost-and-Usage-Spec/FOCUS_Spec/blob/working_draft/ipr.md) also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy. This document is governed by the [5 February 2004 W3C Patent Policy](https://www.w3.org/Consortium/Patent-Policy-20040205/). diff --git a/specification/versions/working_draft.md b/specification/versions/working_draft.md index 765cdf594..57f64d791 100644 --- a/specification/versions/working_draft.md +++ b/specification/versions/working_draft.md @@ -20,6 +20,6 @@ Publication as a working draft does not imply endorsement by the FOCUS Project a This document should be considered a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress. -This document was produced by a group operating under the W3C Patent Policy. FOCUS maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy. +This document was produced by a group operating under the W3C Patent Policy. FOCUS maintains a public list of any patent disclosures made in connection with the deliverables of the group; [that page](https://github.com/FinOps-Open-Cost-and-Usage-Spec/FOCUS_Spec/blob/working_draft/ipr.md) also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy. This document is governed by the [5 February 2004 W3C Patent Policy](https://www.w3.org/Consortium/Patent-Policy-20040205/).