This page is used for the ONAP R2+ Service IM drafting and discussion


Current Service Information Model UML Documentation: ONAP Service Archive 2017-11-08.docx

20171114 Meeting Minutes:

Service class chararacteristic diagram will be tentatively droped due to no commitment from SDC and AAI


the comparision table among ECOMP IM, SDC IM, ETSI NFV IFA, A&AI as below:

SDC

(Service)

AAI
(service)
ECOMP IM
(ServiceCatalogItem)
CommentsConfirmedDescription
invariantUUID


serviceInvariantUUIDConstant identifier of the service model
UUIDservice-idServiceUUID 
serviceUUID

Versioned identifier of the service model (this uuid is changed for every major version of the service)

name
ServiceDisplayName 
serviceName 

The name of the service

descriptionservice-descriptionServiceDescription 
serviceDescription

The description of the service

Visible when the user hovers over this service in the design studio UI.


type

ServiceCatalogItem-Q1: what‘s the difference of type and serviceType or category?’
Category - A predefined list which identifies the construct's category. There is a predefined list of service categories and resource categories.

Type - A predefined list which identifies the construct (i.e., service, VF, VFC, CP, VL, etc.).

serviceType - An optional string field defining a generic type (like category) of the service. E.g. this field can be used for defining the service as “TRANSPORT”.

@David Shadmi From Chesla Wechsler's comments, Service-type is deprecated. Please confirm it.


A predefined list which identifies the construct (i.e., service, VF, VFC, CP, VL, etc.).
Category
Category  

A predefined list which identifies the construct's category. There is a predefined list of service categories and resource categories.

Designer cannot define new Category. Process required to add/change/delete

serviceTypeserviceType

An optional string field defining a generic type (like category) of the service. E.g. this field can be used for defining the service as “TRANSPORT”.
serviceRoleserviceRole

ServiceCatalogItem-Q2: What's the ServiceRole used for in the use cases and how does it effect the run-time components?

serviceRole - An optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.


An optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.
serviceEcompNaming

ServiceCatalogItem-Q3: What's the naming used for in the use cases and how does it effect the run-time components?

The naming fields are used to define if the service instance name is auto-generated by the runtime components (SO and SDNC).

Need to refer to the use case owners to understand if and how these fields are used.



ecompGeneratedNaming



namingPolicy



service_naming




service-versionVersion 
serviceVersionThe service version in SDC catalog

resource-version

@ James Forsyth: ServiceCatalogItem-Q4: The version of resource are related to the resource. One service may is composed of many resources, which may have different versions. Which version of the resources are set in the service?


resource-version for concurrency


AT&TContact 

@Andy Mayer : ServiceCatalogItem-Q5: Is it the service designer? If consider multi-designers, the attributes should be array type.


This is the technology owner. ATT UID. Future click on UID and launch mail client. Multiple contacts should be supported.



Capacity 

@Andy Mayer : ServiceCatalogItem-Q6:

Please clarify what it is. How is it effects the design time and run-time?

From Chesla Wechsler's comments, it is deprecated. Please confirm it.



Obtain from vendor if available; tester can add additional information



Constraints

@Andy Mayer : ServiceCatalogItem-Q7:

The constraints is not an independent attribute, and is a constraint within the attribute definition. right?


From the TOSCA model. Multiple fields. Could include thresholds and policies. Vendor upgrade requirements should also be included here.



Cost

@ Andy Mayer : ServiceCatalogItem-Q8: Please clarify what it is. How is it effects the design time and run-time?


2015: will be blank and not mandatory. 2016 may be accessed by role (TBD) and will be a mandatory field.



D2RequirementsChecklist 

@Andy Mayer ServiceCatalogItem-Q9: What's the Cost used for in the use cases and how does it effect the run-time components?


Spreadsheet with input constraints, entries will be searchable



EntitlementID 

@Andy Mayer ServiceCatalogItem-Q10: In the latest document there is no entitlement. is it obsoleted?



Composite ID of contract and entitlement number from myprocurement



EntitlementUnitNumber 
From contract/entitlement


EntitlementUnitType 

From contract/entitlement



FaultRequirements 

@Andy Mayer ServiceCatalogItem-Q11: It is an document from vendor. Should it be managed in the ONAP?


Obtain from vendor



Features 

@Andy Mayer ServiceCatalogItem-Q11: It is an document from vendor. Should it be managed in the ONAP?


Obtain from vendor



History 

@Andy Mayer ServiceCatalogItem-Q13: the type is only char. It is not enough to support the function as described.


Keeping all major events, i.e., creation date, any modification, check in and check out with ATT UID.



Icon 
icon

The icon path of the service

Process required to add new icon. 



LicensingModel 

@Andy Mayer ServiceCatalogItem-Q14: Do the Service support license? Could you give some details about it?


Multiple fields. Categories of licenses planned; type, unit.



Performance 

@Andy Mayer ServiceCatalogItem-Q11: It is an document from vendor. Should it be managed in the ONAP?


Obtain from vendor if available; tester can add additional information



Requirements 

@Andy Mayer ServiceCatalogItem-Q11: It is an document from vendor. Should it be managed in the ONAP?


Multiple fields. Includes connectivity



ServiceSystemName 

@Andy Mayer It is not like an service attribute. Please clarify why displayed in the design studio.


This field will be used in URLs and not exposed in create service UI; will be displayed in design studio.

Meaningful service name used in API. The system name is used in the distribution studio (distribution notification and distribution API).

- Max length of 25 characters

- Allowed characters: alphanumeric, underscore, dash, dot.

- Autocreated based upon the Service Display Name: spaces are trimmed, each word starts with a capital letter, on the first letter of abbreviation and acronyms are capitalized.

- If the Service Display name changes, the Service System name will automatically be updated.

- Service System name is not editable by the designer.

- Name must be unique and is searchable.



Subcategory 

Flat list in 1507. In 1510, UI will be separated to different field from Category.



Tags/Keywords 

Must accept multiple keywords



Template 

@Andy Mayer is it the service Templates?


Need to define a list of templates. Tied to Category. Designer cannot create new template (must be created by development team). Process required to add/change/delete. Could consider designer ability to create / modify template in 1602.



TestScripts 






VendorTestResults 

@Andy Mayer It is an document from vendor. Should it be managed in the ONAP?





VF-SpecificPolicies 

@Andy Mayer should be those VF related attributes moved to VNF, not in the service?


Part of the lifecycle management of the artifact.



VFArtifacts 

Artifact name stored in Swift. Artifacts are searchable / indexable.



VFConfigParameters 

Scripts are an artifact, this may be redundant



VFImage 

URL to file stored in Glance or Swift, depending upon image vs. binary



AAI
(ServiceInstance)
ECOMP IM
(service-instance)
CommentsConfirmedDescription
service-Instance-Id

serviceInstanceIdUniquely identifies this instance of a service
service-instance-name

serviceInstanceNameThe name assigned to the service-instance
service-type

same with the ServiceCatalogItem-Q1

same with the ServiceCatalogItem-Q2



An optional string field defining a generic type (like category) of the service. E.g. this field can be used for defining the service as “TRANSPORT”.
service-role

An optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.
environment-Context

@James Forsyth ServiceInstance-Q1 Please clarify it's format and how to use it


This field will store the environment context assigned to the service-instance
workload-Context

@James Forsyth ServiceInstance-Q2 Please clarify it's format and how to use it


This field will store the workload context assigned to the service-instance.
model-invariant-id

serviceInvariantUUIDConstant identifier of the service model
model-version-id

@James Forsyth ServiceInstance-Q3 what's the difference between them? Which one is same with Service UUID of SDC?

ServiceUUIDVersioned identifier of the service model (this uuid is changed for every major version of the service)
persona-Model-Version
ServiceVersionThe service version in SDC catalog
widget-Model-Id

@James Forsyth ServiceInstance-Q4 Please clarify it and how to use it


the ASDC data dictionary widget model. This maps directly to the A&AI widget.
widget-Model-Version

the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
bandwidth-total

@James Forsyth ServiceInstance-Q5 If the service is an general service, why only define these bandwidth attributes?






Indicates the total bandwidth to be used for this service.
bandwidth-up-wan1

indicates the upstream bandwidth this service will use on the WAN1 port of the physical device.
bandwidth-down-wan1

indicates the downstream bandwidth this service will use on the WAN1 port of the physical device.
bandwidth-up-wan2

indicates the upstream bandwidth this service will use on the WAN2 port of the physical device.
bandwidth-down-wan2

indicates the downstream bandwidth this service will use on the WAN2 port of the physical device.
vhn-portal-url

@James Forsyth What's "vhn-portal-url"?


URL customers will use to access the vHN Portal.
service-instance-location-id

@James Forsyth Where the locationId is got? and How to use it?


An identifier that customers assign to the location where this service is being used.
resource-version

@James Forsyth Same with ServiceCatalogItem-Q4


Used for optimistic concurrency. Must be empty on create, valid on update and delete.
selflink

selfLinkURL to endpoint where more details can be gotten
orchestration-status

statusOrchestration status of the service instance


SDC
(Service)
AAI
(service)
ECOMP IM

ETSI IFA014
(NetworkService)
CommentsConfirmedDescription
invariantUUID

nsdInvariantId
invariantUUID
Constant identifier of the Service Component model
UUIDservice-id
nsdIdentifier
UUIDVersioned identifier of the Service Component model (this uuid is changed for every major version of the service component)
name

nsdName
nameThe name of the service component
descriptionservice-description


descriptionThe description of service component
type


same with the ServiceCatalogItem-Q1

same with the ServiceCatalogItem-Q2


A predefined list which identifies the construct (i.e., service, VF, VFC, CP, VL, etc.).
Category



A predefined list which identifies the construct's category. There is a predefined list of service categories and resource categories.

Designer cannot define new Category. Process required to add/change/delete

serviceTypeserviceType


An optional string field defining a generic type (like category) of the service. E.g. this field can be used for defining the service as “TRANSPORT”.
serviceRoleserviceRole


An optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.
serviceEcompNaming


same with the ServiceCatalogItem-Q3



ecompGeneratedNaming




namingPolicy




service_naming





service-version
version
versionThe version of service component

resource-version

same with the ServiceCatalogItem-Q4


resource-version for concurrency



designer
designerThe designer of service component


ETSI IFA014
(NetworkService)
Confirmed AttributesDescription
vnfdidvnfdid

References the VNFD of a constituent VNF.

pnfdIdpnfdId

References the PNFD of a constituent PNF.

virtualLinkDescvirtualLinkDescProvides the constituent VLDs.
nestedNsdId
References the NSD of a constituent nested NS.
sapd
Provides the descriptor of a service access point of the network service.
vnffgd
Provides the descriptors of the applicable forwarding graphs.
monitoredInfo
Identifies either a virtualised resourcerelated performance metric or a VNF Indicator.
autoScalingRule
Specifies a rule to trigger a scaling action on a NS instantiated according to the NSD.
lifeCycleManagementScript
Provides a life cycle management script written in a Domain Specific Language (DSL).
nsDf
Identifies a DF within the scope of an NSD.
security
Provides a signature to prevent tampering.


      TBD



AAI
(ServiceInstance)

ECOMP IM

(service component)

ETSI IFA013

(NS)

CommentsConfirmedDescripion
service-Instance-Id
nsInstanceId
componentInstanceIdUniquely identifies this instance of a service component
service-instance-name
nsName
componentInstanceName
The name assigned to the service component instance
service-type

same with the ServiceCatalogItem-Q1

same with the ServiceCatalogItem-Q2


An optional string field defining a generic type (like category) of the service. E.g. this field can be used for defining the service as “TRANSPORT”.
service-role


An optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.
environment-Context

same with the ServiceInstance-Q1


This field will store the environment context assigned to the service-instance
workload-Context

same with the ServiceInstance-Q2


This field will store the workload context assigned to the service-instance.
model-invariant-id
nsdId
invariantUUIDConstant identifier of the service component model
model-version-id

same with the ServiceInstance-Q3



Versioned identifier of the service component model (this uuid is changed for every major version of the service component)
persona-Model-Version


The service version in SDC catalog
widget-Model-Id

same with the ServiceInstance-Q4




the ASDC data dictionary widget model. This maps directly to the A&AI widget.
widget-Model-Version


the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
bandwidth-total

same with the ServiceInstance-Q5








Indicates the total bandwidth to be used for this service.
bandwidth-up-wan1


indicates the upstream bandwidth this service will use on the WAN1 port of the physical device.
bandwidth-down-wan1


indicates the downstream bandwidth this service will use on the WAN1 port of the physical device.
bandwidth-up-wan2


indicates the upstream bandwidth this service will use on the WAN2 port of the physical device.
bandwidth-down-wan2


indicates the downstream bandwidth this service will use on the WAN2 port of the physical device.
vhn-portal-url


URL customers will use to access the vHN Portal.
service-instance-location-id



An identifier that customers assign to the location where this service is being used.
resource-version



resource-version for concurrenc
selflink


selfLinkURL to endpoint where more details can be gotten
orchestration-status
nsState
statusOrchestration status of the service component instance


description
descriptionThe description of service component instance


Inherit from ServiceComponentInstance


ETSI IFA013

(NS)

ConfirmedDescripion
vnfInfoIdvnfInfoIdReference to information on constituent VNFs of this NS.
pnfInfopnfInfo

Information on the PNF(s) that are part of this NS.

virtualLinkInfovirtualLinkInfo

Information on the VLs of thisNS.

flavourId
Reference to the flavour of the NSD used to instantiate this NS.
vnffgInfo
Information on the VNFFGs of this NS.
sapInfo
Information on the SAPs of this NS.
nestedNsInfoId
Reference to information on nested NSs of this NS.
nsScaleStatus
Represents for each NS scaling aspect declared in the applicable DF, how "big" the NS instance has been scaled w.r.t. that aspect.
additionalAffinityOrAntiAffinityRule
Information on the additional affinity or anti-affinity rule from NS instantiation operation. Shall not conflict with rules already specified in the NSD.


TBD