Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Updated based on RM IM discussion on 17 Feb 2020

...

SourceClassStatusCommentProposed Resolution


Changes saved

 



n/aDeferNot a Licence model issue

Introduce in ONAP wiki an update list of approved classes with reference links to detailed description (a page per Release of some part of clean IM is not a long term viable way).


No direct impact on License Model.

This should be addressed to the modeling subcommittee as a whole. 

https://docs.onap.org/en/elalto/submodules/modeling/modelspec.git/docs/index.html this is the modeling readthedocs for el alto release

allAgreedIntroduce in any model proposal, the inheritance tree diagram for any new class (e.g. what is the Licensing agreement inheritance tree ?)Yes. Will include inheritance tree diagram.
n/aReviewReviewed#1 Is the current model proposal “as built model” going to cover the licensing model only for VNF considering it refers only to VNFD ?The scope of the "as built" model is presently VNF and VNFD, but nothing prevents it from being expanded in the future.
n/aReviewNeed further discussion#3 License keys, license agreements, and contractual details such as entitlement information, are all sensitive commercial information.
  • ONAP has one single inventory database (AAI) accessible to all components in the system. It’s not clear that this sensitive information is well-protected in this kind of shared database deployment.
Presently much of this information is collected in SDC, and then distributed to other appropriate systems.    Remember – this is “as built” information model.   Security of the systems and related network is the responsibility of the service provider.   Also details of the actual licenses and entitlements are held in an asset management system (e.g., license repository) outside the present scope of ONAP.

EntitlementInstance

LicenseKeyInstance

ReviewReviewed#8 Entitlement instance / LicenseKeyInstance classes refer to “As Built in ASDC”.
  • Are (entitlement/LK) instance classes defined in ASDC considering it is derived from the “operationalEntity” class  ?
  • How entitlement instances are introduced in SDC ? SDC UI documentation refers to the EntitlementPool and LKPool but NOT to the EntitlementInstance and LK instance.
  • How Entitlement instances and License key instances should be used in SDC ? In  https://wiki.onap.org/display/DW/SDC+Deployment+Artifacts,  it is defined the vendor license artifact as xml file including entitlement pool and license key group (attributes here are simplified respect to the VLM proposed). In this file only entitlement pool and license pool seems to be defined and it seems that instances are not available.

LicenseKeyPool and EntitlementPool are generated in SDC.   LicenseKeyInstance and EntitlementInstance are not – they are in the operator’s license/asset repository.   Reference to this repository is in A&AI. 

Perhaps we keep the class preliminary

Make the LicenseKeyInstance and EntitlementInstance classes experimental, make the attributes experimental, and remove the reference stereotype.

AI: Will provide further review for the attributes of LicenseKeyInstance and EntitlementInstance. If further clarification cannot be provided, attributes will be removed.

AllReview#2 Mainly all the class definition in this proposal  refer to the concept of software/software product more than network functions but software/sw product is not defined in ONAP model.
  • What is the meaning  of software in this context ?  
  • What is the relation between software and resource or VNF?
A fair observation.   The Vnf is software, and is the product of some vendor that is then being incorporated into an operator’s resource.   Definitions should be updated and generalized - this is the original documentation.   One option is to generalize when a Pnf or some other non-software resource is added.  In addition, we can update “softwareAssetTag” to something like “licenseAssetTag”.
EntitlementPoolReview#13 Entitlement Pool definition is partially duplicated, to be reviewed.
  • In addition, it states “Controllers will request entitlements.” This is not  a “as built in” behavior, it should be removed.
The duplicate statement was removed.  Text was updated to say “Controllers may request entitlements”.
LicenseKeyPoolReview#16 The description of LicenceKeyPool refers to “Asset Inventory”, which is not part of ONAP and not described anywhere in the proposalThe Asset Inventory is presently outside of ONAP just as you say.   This is the inventory where actual keys and entitlements would be stored and managed.
AllReview"General" #2 Mainly all class relationships are defined only in the diagram by the relationship name and their cardinality. Today a class definition does not include any relationship definition. 
  • We recommend to introduce the relationship definition in the class model.
A fair observation.   The Vnf is software, and is the product of some vendor that is then being incorporated into an operator’s resource.   Definitions should be updated and generalized - this is the original documentation.   One option is to generalize when a Pnf or some other non-software resource is added.  In addition, we can update “softwareAssetTag” to something like “licenseAssetTag”.

EntitlementPool

LicenseKeyPool

Review#6 We do not have evidence of the full list of attributes defined in the ONAP as built in model in particular for EntitlementPool and LicenseKeyPool classes. Considering the attributes defined in SDC UI (https://wiki.onap.org/display/DW/Resource+Onboarding, only a subset of attributes should be defined in ONAP model.
  • Can you provide some more clear reference about SDC model ? Otherwise, should we consider only the attributes defined in  SDC UI for the as built in model.
  • In addition, some attributes are repeated in EntitlementPool/LicenseKeyPool and PoolLimit as ThresholdValue and ThresholdUnit.
  • SPPoolLimit and VendorPoolLimit in EntitlementPool/LicensekeyPool are not defined in SDC UI so they do not seem to be used.

Can provide screenshots of UIs as well as a view of the XML being distributed from SDC.   XML from SDC can be found at -

https://wiki.onap.org/display/DW/SDC+Deployment+Artifacts.

LicenseAgreementReview#11 LicenseAgreement class contains free-form text information in the attributes requirementsAndConstraints and statementOfIntent that is not usable in any automation UC and thus should instead be contained in an external documentA fair point, but that is what is built.   One could parse that constraint, and if the creator and receiver have agreed on some common semantics, then it could certainly be used via automation.
DesignEntityReview#12 The “validFor” attribute in EntitlementPool and LicenseKeyPool (inherited from DesignEntity) is mandatory. It’s not obvious whether this validity value then applies to all instances in the pool.
  • If so, it’s not possible to define licenses and entitlements that are valid for an unlimited amount of time, thus the attribute needs to be made optional.

This is analogous to a Vnfd and and VnfInstance, or a ProductSpec and a Product.  One can certainly put in an enddate of something very far in the future, allowing for an unlimited amount of time.  We could redefine the property and make it optional as well.

EntitlementPoolReview#14 Entitlement Pool class: entitlementManufactureReferenceNumber has a multiplicity 0..1 and it is defined as “identifier for the entitlement as described…”.
  • Isn´t more a entitlementPool identifier more than the entitlement (instance) identifier ?

  • For consistency with the ONAP IM classes, we should review the name of this attribute in entitlementPoolVendorReferenceNumber.

Not clear why this attribute is not required (updated from 0..1 to 1).  Name aligns with the SDC screen, and it does state that it is a Manufacturer’s Reference Number.  Updated description, using phrase reference number rather than identifier.  Updated name to licenseKeyFile to distinguish the attributes.
LicenseKeyInstanceReview#15 LicenseKey attribute (in LicenseKeyInstance) is defined twice, once as a String (with upper-case “k”) and once using the type “File” (with lower-case “k”).
  • It’s not obvious how/if either of these attributes can be used in the case of a subscription-based license.
  • The LicenseKey of type file is defined of type “future” so it should be removed as not Asbuilt in
The attribute with type of “File” was marked as Future to make it clear that this is not “as built”.  It is an item presently under development, implementation under way but not yet complete in SDC.   Suggestion was to keep this as future, it does highlight present activity.
EntitlementInstanceReview#17 Entitlement instance class, SoftwareAssetTag: swAssetTag not defined in SDC UI. What is a softwareAssetTag ? What is the relation with the ONAP classes ?Given EntitlementInstances are stored in the Asset Inventory references in question 16, it’s attributes, including swAssetTag would therefore not be found in SDC.   Per the definition, this is a operator internally generated value.  See response to question 8

EntitlementInstance

LicenseKeyInstance

Review#18 EntitlementInstance and LicenseKeyInstance classes include the mandatory attribute ssmUserId.
  • ssmUserID not defined in SDC UI. What is SSM?
  • ssmUserId is defined as The requestor of the entitlement. What is the requestor ?
Still researching.
VendorReviewReviewed#4 “Vendor” class in the top level diagram is not defined in this proposal. It was originally included in the R5 “Party” proposal which was never approved. Current modeling proposal depends on Vendor class due to  the introduction of the relation with  LicenseAgreement and the definition of an indirect relation through the vendor of the VNFD with the LicensingAgreement.
  • We recommend we agree on the Vendor class scope before we approve a Licensing model.
  • In addition, Vendor class introduces two new attributes:  status and validFor attributes and we do not agree should be part of the Vendor class but differently modelled in the context of the LVM.

At the time the root hierarchy was developed, we agreed to leave the approval of the Party related concepts until it was needed – the license
model was specifically mentioned at that time as a likely reason.   That time is now.    The Party model is well established and documented model.  Refinement suggestions to the party/partyrole/vendor classes are welcome, but keep in mind these concepts are well established and mature.  Therefore approval for this model includes approval for the concept of vendor and it’s super classes.

Will add description of Vendor Class (and superclasses) to the Licence model page proposal page.

SequenceFlowsReview#5 There are two EMPTY classes under SequenceFlows , “License::SequenceFlows::License Setup” and “SimpleOrderFlow class” – these have NO descriptions, NOT included in any diagrams, and are NOT thus possible to understand in the context of the proposal.
  • We recommend to remove these two classes from the proposal.
These Papyrus (not information model) classes are the basis of two simple sequence diagram flows.   It appears that the diagrams did not get included into the lasted WIKI post (see version 3) .   We will incorporate the diagrams on the wiki with the next update.

EntitlementPool

LicenceKeyPool

FeatureGroup

Review#7 Three related inconsistencies:
  1. The description of EntitlementPool states that “An EntitlementPool is not specific to a Feature Group. An Entitlement Pool may be related to multiple Feature Groups of a software product or even to multiple software products.” However the cardinality of the FeatureGroupHasEntitlementPool has 1 on the FeatureGroup end, meaning that EntitlementPool can only be associated with a single FeatureGroup.
  2. The description of LicenceKeyPool states that “A license key group is not specific to a feature group.  A license key group may be related to multiple feature groups of a software item or even to multiple software items.” However the cardinality of the FeatureGroupHasLicenseKeyPool has 1 on the FeatureGroup end, meaning that LicenceKeyPool can only be associated with a single FeatureGroup.
  3. The description of FeatureGroup states that “If an Entitlement Pool or License Key Group is associated with a particular Feature Group, the Feature Group becomes a "constraint" for the pool/group.” That implies that it should be possible to create an EntitlementPool or LicenceKeyPool without an association to a FeatureGroup. But in the proposal, FeatureGroupHasEntitlementPool and FeatureGroupHasLicenseKeyPool indicate that both EntitlementPool and LicenceKeyPool must each be associated with one FeatureGroup.

1) Updated to allow zero to many 

2) Updated to allow zero to many 

3) This is covered by changing the cardinality to 0..* above.

LicenseAgreementReview#9 VNFD – License Agreement relationship: There is no direct relation between the LicenseAgreement class and the VNFD class but objects are connected through the Vendor class losing the possibility to detect the VNFD/VNF type from a LicensingAgreement.  
  • Is this the real  SDC “built in” model ?  Is it a general enough model we want in ONAP  ?
Given there is a relationship between vendor and Vnfd as well as FeatureGroup and Vnfd, a direct relationship between LicenseAgreement and Vnfd is not needed.
VNFinstanceReview#10 A VNFinstance can only have a Entitlement instance and a LKinstance.
  • Is it a general enough model we want in ONAP ?
Please clarify what else you see as being needed.

LicenseAgreement

FeatureGroup

Review#19 It’s not clear why the LicenseAgreementHasFeatureGroup association has cardinality 1..* on each end.
  • Further explanation needed.
Presumably, it is reasonable that a licenseagreement can have some number of feature groups.   Similarly, a featuregroup can be related to multiple licenseagreements.   We will check and see if SDC will support this.   Michela – your perspective on this?

FeatureGroup

EntitlementPool

Review#20 It’s not clear why the FeatureGroupHasEntitlementPool association has cardinality 1..* on the EntitlementPool end.
  • Further explanation needed.
Presently, in the SDC software, the featuregroup MUST have a relationship to an entitlementpool.    There is no such requirement for licensekeypool – it is optional.   Hence the present multiplicity on the “pool” side of these relationships
















...