Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Overview

Project NameEnter the name of the project
Target Release NameLondon
Project Lifecycle StateIncubation
Participating Companies Deutsche Telecom (Tech Mahindra) , Ericsson, Fujitsu, Wipro

Scope

What is this release trying to address?

  1. Upgradability (CPS, NCMP)
    1.  Version strategy to  control Continuous Delivery (CPS and NCMP)
      1. Technical debt of NCMP data be handled by Liquibase in CPS
    2. Yang Module Upgrade
      1. backward compatible
      2. backward incompatible
        1. Data Transformation/Migration
        2. Drop (and resync) 
  2. Service Maturity CPS
    1. Delivery Pipelines 
    2. Helm best practices (design rules)
    3. FOSS audit
  3. Service Maturity NCMP (TBC)
  4. Performance (CPS, NCMP)
    1. CPS Data read 
    2. CPS Model-based query
    3. Registration algorithm change (using schemaSet hash)
  5. CM Handle Connectivity State
  6. Notification Configuration
    1. Model based
    2. Instance based
  7. Query Propagation
    1. Amalgamate responses
    2. Capability Exchange (during registration/updates) 

Stretch Goals

  1. Forwarding non-passtrough 
    1. data request
    2. notifications
  2. Cache Configuration
    1. Model based
    2. Instance based, container, leaf
  3. AAI integration
  4. Extend Read(query) access to cached data (datastore ncmp-datastores:operational)
    1. cpsPath support in NCMP
    2. field' and 'depth' RestConf-Like support in CPS (and NCMP)
  5. Extend CPS-Path (query) capabilities
  6. CPS Target Based Access Control (TBAC)
    1. Ownership of dataspaces using OAuth2 
  7. NCMP Access Control
  8. Multiple Identifiers for Anchors (CM Handles)

Minimum Viable Product

N/A

Requirements

Priority legend
PreliminaryPlanned for current ONAP ReleaseIn ProgressPausedCompletedDe-scoped

ONAP Best Practices (Global Requirements) and similar

ONAP RequirementNotesCPS- Jira(s)

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-443

Aiming for gold!
  1. Need to complete Survey
  2. Dependency on ONAP Infrastructure Tickets

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1140

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-439




ONAP script might help us with common quality issues and save reviewing time

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1324

CPS-temporal Requirements (TBC)

CPS-CORE / CPS-NCMP Requirements

See CPS-391 page for details about supported operations and combinations.
Sourabh Sourabh 1002

REQ1316REQ140514341411CPS1412CPS1413key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution

PriorityLondon
Requirement Jira
Component(s)DescriptionNotesTeam & 
Work-Item Owner
Jira(s)
1

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1405

CPS-NCMPRegistration Performance

NCMP shall register new cmhandles (to READY state) at a rate of 11 cmhandles/second (assumes no dmi-plugin delays, assumes 180 modules per cmhandle with 95% module overlap between cmhandles, assumes cache disabled).

Treat this as a black box requirement.  May mean underlying requirement to have multiple instances, memory requirement etc.  Focus right now is 23.Q1 timeframe.

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1172
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1275
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1267
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1400

2

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1405

CPS-NCMP
CPS-Core
Data Write/Read Performance

NCMP (read) Requirements

  1. It shall be possible get all cmhandles (anchors) (question) for a given module name at a rate of 1000 cmhandles / second (assuming 20k cmhandles are registered)
  2. It shall be possible to get all cmhandles (anchors) (question) with a given public property at a rate of 500/second  (assuming 20k cmhandles are registered) Depensds on 
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1348

kieran mccarthy For this step we can focus on just returning just the cmhandlesIds.  Anything further can be covered by another step.

Note. This now overlaps with work be done with Wipro/Fujitsu, see CPS Performance Testing

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1171
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1326
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1344

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1443

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1445

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1475

3

Jira Legacy
REQ-1316
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1509

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-

NCMP
Support ncmp-datastores:operational for querying data (single CM handle, synchronous only)

1516
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-1494
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-

1519

4
  • DMI audit support for NCMP: Get cm handles with property details (CPS-1236)
  • It shall be possible to get all anchors with a given public property on CPS-E-02  (CPS-1348)
    *Note Double check the intention of this with kieran mccarthy 
    [ ekiemcc ] DMI Plugin may use public property to carry our some audit functionality

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyREQ-1405

    CPS-Core
    CPS-NCMP

    DMI Audit

    CPS-1525
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1536

    3

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyREQ-1316

    CPS-NCMPSupport ncmp-datastores:operational for querying data (single CM handle, synchronous only)See CPS-391 page for details about supported operations and combinations.

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1002

    4

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyREQ-1405

    CPS-Core
    CPS-NCMP

    DMI Audit

    1. DMI audit support for NCMP: Get cm handles with property details (CPS-1236)
    2. It shall be possible to get all anchors with a given public property on CPS-E-02  (CPS-1348)
      *Note Double check the intention of this with kieran mccarthy 
      [ ekiemcc ] DMI Plugin may use public property to carry our some audit functionality.  For example it could contain some public attribute like regionId  that is useful info for rApps but may also be used by the DMI plugin to periodically query on certain regions and take some action based on a policy for that region.  Yes, it is possible to duplicate the attribute in the private properties but this is not ideal to have to maintain two attributes (one public and one private) representing the same thing !

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1236

    5

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyREQ-1405

    CPS-NCMP[investigation/spec] CM data notifications from NCMP to applications including subscriptionsIncludes definition of notification and payload formatkieran mccarthy 

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1065
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1259
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1362

    6

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyREQ-1405

    CPS-NCMPImplementation of CM data notifications forwarded by NCMP from DMI to applicationImplementing Data Notifications & Subscription Notifications on a US by US basis
    Jira Legacy
    serverSystem Jira

    Notifications

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1385
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1386

    Subscriptions

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1431
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1392
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1393
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1394

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1492
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1496
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1497

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1498
    7

    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    key

    CPS-

    1561
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    key

    CPS-

    CPS-NCMPSupport update of cached data through a message driven solution.
    Respond to  VES Events from Devices in ONAP
    Receive VES Event and transform it into a 'standard DMI→NCMP events (schema owned by NCMP)
    Jira Legacy
    serverSystem Jira

    1573
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-

    1599

    Jira Legacy
    serverSystem Jira

    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-

    1565

    7

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    key

    REQ-

    1316

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    key

    REQ-

    1405

    8CPS-NCMP(CPS-Core)Deletion Performance
    / Delete CM Handles on criterion (TBC)
    NCMP shall delete/remove cmhandles (to DELETING state) at a rate of 50 cmhandles/second with cache disabled (assumes no dmi-plugin delays, assumes 180 modules per cmhandle with 95% module overlap between cmhandles)
    Note: check with Gergely on priority as DELETING state will prevent user to act on cmhandle
    Note 2. This might need to be split into 'Delete on criterion ie. public/private property' and delete for 'internal/test use' performance

    Team 1

    Sourabh Sourabh Support update of cached data through a message driven solution.
    Respond to  VES Events from Devices in ONAP
    Receive VES Event and transform it into a 'standard DMI→NCMP events (schema owned by NCMP)

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1434
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1411
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1412
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1413

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1559

    8
    CPS-NCMP
    (CPS-Core)
    Deletion Performance
    / Delete CM Handles on criterion (TBC)
    NCMP shall delete/remove cmhandles (to DELETING state) at a rate of 50 cmhandles/second with cache disabled (assumes no dmi-plugin delays, assumes 180 modules per cmhandle with 95% module overlap between cmhandles)
    Note: check with Gergely on priority as DELETING state will prevent user to act on cmhandle
    Note 2. This might need to be split into 'Delete on criterion ie. public/private property' and delete for 'internal/test use' performance

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1173
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1422
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1426
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1424

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1423
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1438
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1437
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1439
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-
    1173
    1464

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1471

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-14221523

    9
    CPS-NCMPBulk Operations (Get, Query)Allow bulk operations for NCMP (and/or) CPS REST Interfaces

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-14261515

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1550

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-14241553

    Jira Legacy
    serverSystem Jira

    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columns
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1555

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-

    1423

    1556

    Jira Legacy
    serverSystem Jira

    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolutioncolumnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution

    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-

    1438

    1557

    Jira Legacy
    serverSystem Jira

    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolutioncolumnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution

    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1558

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-

    1437

    1560

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-

    1439 Jira LegacyserverSystem JiraserverId4733707d-2057-3a0f-ae5e-4fd8aff50176keyCPS-1464

    1583

    Team 1
    Sourabh Sourabh 

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1471

    9CPS-NCMPBulk Operations (Get, Query)

    -ae5e-4fd8aff50176
    keyCPS-1614

    10
    CPS-NCMPCM Handle Connectivity Freshness/Staleness

    Need to model what staleness is (current CPS only has concept of model-sync state, nothing about connectivity)
    kieran mccarthy to spec this


    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1415

    11

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1128

    Deutsche Telekom
    (TechMahindra)

    CPS-Core /
    CPS-NCMPSupport for list as top level data node

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-491
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-765
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-766
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-767

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1586

    12

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1128

    Deutsche Telekom
    (TechMahindra)

    CPS-Core /
    CPS-NCMPSupport for multiple top-elements from different modules in one CM handle/anchor


    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1051
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-341

    13

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyREQ-1405

    NCMP-CPSSupport NCMP-CPS upgrade

    Currently only custom upgrade is supported. (upon request)

    Requirement: It shall be possible to upgrade NCMP-CPS from release N-1 to N (without requiring manual intervention/workarounds). N is defined as any release requested by ESH

    • Note. Need to agree version strategy: use current ONAP x.y.z. numbering. Ericsson to communicate when a version is to be 'delivered' and 'y' increased

    Technical Debt to be addressed: Liquibase is used in CPS to manage data(upgrades) in CPS

    Study: Resolve technical debt (mixed data). NCMP Data upgrade. CPS Core need to support model upgrade so that NCMP can use it,


    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1345

    14

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyREQ-1405

    CPS-Core
    NCMP-CPSSupport multiple identifiers (alternatives for CM Handle ID)




    15

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyREQ-1316


    Support for 'Instance Identifier'Should be possible to identify a cmhandle using multiple instance identifiers

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1180

    16


    CPS-NCMPInvoke YANG modelled action

    Always on operational datastore.  Supported for nmcp:passthrough-operational and if executed against ncmp:operational then it is always forwarded to dmi plugin.  Is there another story for forwarding to be included as a dependency? Always run as async request.  Is this dependent on CPS-1127  - see spin-off user stories table below this on.

    KMC : Can we deprioritize - this can be run against passthrough-operational for now.  Just have to agree on the API / URL for the action to progress at this stage so that the passthrough-operational form is aligned with final operational form.



    17
    CPS-NCMPEnhanced query support

    Currently the passthrough has an 'fields' parameter to do a scoped query.  Propose to support this in non-passthrough so it is promoted to a fully supported option, e.g. {ncmp-root}/ncmp/v1/ch/335ff/data/ds/ncmp-datastore:passthrough-operational?
                  resourceIdentifier=/&options=(fields=ericsson-enm-comtop:ManagedElement/ericsson-enm-
                  gnbcucp:GNBCUCPFunction
    /EndpointResource/LocalSctpEndpoint/attributes(sctpEndpointRef),
                  scope=ericsson-enm-comtop:ManagedElement/ericsson-enm-gnbcucp:GNBCUCPFunction/
                   EndpointResource/LocalSctpEndpoint/attributes(interfaceUsed==X2))

    KMC : Do we support restconf like queries or xpath only?



    18Move above 8CPS_Core / CPS-NCMPUpdate YANG schema-set for CM handle without removing and adding it

    Cached data is not in scope. Need to specify orphan handling of YANG modules.

    Needed for node upgrade scenario.



    19


    CPS-NCMPRetrieve single module resource/v1/ch/{cm-handle}/modules/definitions/{moduleName}

    20
    CPS-Core / CPS-NCMPExisting CPS-path based queries across all CM handles for cached data

    Look to define the interface specification for this only.

    (but best way is to implement for operational/cached data to determine any output formatting issues)



    21
    CPS-Core /
    CPS-NCMPAccess control for public interfaces (NCMP, CPS-Core, DMI?)KMC : What level of access control is there today - both on CPS and NCMP interfaces?

    22
    CPS-NCMPFine-grained cache configuration


    23
    CPS-NCMPSend notification for updated CM handle metadata (public CM handle properties or YANG modules)


    24
    CPS-Core /
    CPS-NCMP

    Support for HTTPS and authentication

    • Use Service-Mesh? Both ONAP and Ericsson (applied ISTIO using Envoy Proxy side-car) are working towards this. Check with Gareth Roper 


    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-703

    25

    TBC

    CPS-NCMPSupport ncmp-datastores:running for reading data (single CM handle, synchronous only)See CPS-391 page for details about supported operations and combinations. Note: There can be some overlap between work items for #5, #6, #11 and #12.

    26TBCCPS-Core /
    CPS-NCMPSupport ncmp-datastores:running for writing data (single CM handle, synchronous only)


    27TBCCPS-CoreSend notifications on write operation in ncmp-datastores:running for (single CM handle, synchronous only)


    28
    CPS-Core /
    CPS-NCMPschema-set update for CM handle with cached data presentNeed to address case with incompatible model changes.

    29(ONAP) E2E Slicing Use-Case

    Support dynamic inventory changes (ONAP DMI Plugin)

    React to events from AAI sent over DMaaP, in turn using Inventory API for updates.
    Strimzi-Kafka Bridge might be an alternative, check with Fiachra Corcoran  on the latest for this when implementing this (

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyDMAAP-1681
    )

    Possible in a generic way or it can also listen to similar events sent by SDN-R  (as suggested by Ahila P)


    Jira Legacy
    serverSystem Jira
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-392
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-393

    30
    CPS-NCMPAutomatic (optional) Data Sync Metadata (per cmHandle) controls whether this will happen or not

    31
    CPS-NCMPInvoke YANG modelled RPC


    Spin-off user stories, yet to be prioritized

     JiraComponent(s)Related Work ItemDescriptionNotes

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1103

    CPS-NCMP


    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1127

    CPS-NCMP


    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1132

    CPS-NCMP


    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1174

    CPS-NCMP


    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1183

    CPS-NCMP
    Investigation on the use of Liquibase to install NCMP artifacts

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1139

    CPS-NCMP


    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1301

    CPS7 (performance)Add prefix for containers in different Modules in a PERFORMANT way

    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-1348

    CPS4

    Functionalities

    User Stories

    Expand
    titleOpen User Stories REQ-1410 (CPS Enhancements)

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    maximumIssues20
    jqlQuery"Epic Link" in (CPS-1410) AND status = Open ORDER BY fixVersion ASC, priority DESC
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176


    Expand
    titleImprovements & Technical Debt (any release)

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    maximumIssues20
    jqlQueryfilter=12620
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176


    Expand
    titleClosed Stories

    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    maximumIssues20
    jqlQueryproject = CPS AND type = Story AND fixVersion = "London Release" AND status in (Closed, Done) ORDER BY updated DESC
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

    Longer term roadmap

    • CPS-Core will have extended query capabilities based on XPath expression.
    • CPS-Core will enforce and control ownership of data it holds
    • NCMP will be to able to 'detect' and sync xNF in the network
      • Fine-cache cache control will determine what get cache for what xNF
    • NCMP will support the query capabilities as CPS-Core and be extend with options similar to RESTConf's 'fields' and 'depth'

    Release Deliverables

    Indicate the outcome (Executable, Source Code, Library, API description, Tool, Documentation, Release Note, etc) of this release.

    Deliverable NameDeliverable Description

    onap/cps-and-ncmp

    Container running CPS and NCMP
    onap/cps-temporalContainer running CPS Temporal
    onap/ncmp-dmi-pluginContainer running OMAP DMI Plugin
    docs.onap.org/projects/onap-cps

    CPS-NCMP Documentation for R12 (incl. offered APIs and release note)

    docs.onap.org/projects/onap-cps-ncmp-dmi-pluginONAP DMI-Plugin Documentation for R12 (incl. offered APIs and release note)
    docs.onap.org/projects/onap-cps-cps-temporalCPS-Temporal Documentation for R12 (incl. offered APIs and release note)

    Sub-Components

    • CPS-Core
      • cps-service
      • cps-rest
      • cps-ri (reference implementation)
    • NCMP
      • cps-ncmp-service
      • cps-ncmp-rest
      • dmi-inventory
    • Temporal DB
    • DMI-Plugin
      • DMI Data Access
      • DMI Model Access

    Architecture

    High level architecture diagram

    CPS is a new shared service in the ONAP Architecture:

    Platform Maturity

    See the centralized wiki page: London Release Platform Maturity


    • API Incoming Dependencies

    No Incoming API changes required

    • API Outgoing Dependencies

    API this project is delivering to other projects.

    API NameAPI DescriptionAPI Definition DateAPI Delivery dateAPI Definition link (i.e.swagger)

    CPS-E-01
    CPS-E-02
    CPS-E-03

    CPS Model LifeCycle
    CPS Data Write
    CPS Data Read


    Swagger Sources (openapi.yaml)
    CPS-E-04Change notifications


    CPS-E-05xNF Data Access

    Swagger Sources (openapi.yaml)
    CPS-E-06Temporal Data Access
    (no other component currently depends on this or plan to use it in Istanbul)


    Swagger Sources (openapi.yml)
    • Third Party Products Dependencies

    Third Party Products mean products that are mandatory to provide services for your components. 

    NameDescriptionCPS-Core CPS-NCMPCPS-Temporal 
    3PP Version
    DockerVM Container18 and above18 and above18 and above
    ODL Yang ToolsYang model and Data Parser8.0.68.0.6 N/A 
    Postgres Docker imageVM container for Postgres14.1-alpine14.1-alpineN/A
    onap/integration-java11Java Base image8.0.08.0.08.0.0
    SwaggerOpenAPI library2.1.42.1.4

    springdoc-openapi-ui:1.5.9

    SpringFoxOpenAPI library3.0.03.0.03.0.0
    Hibernate typesSupport for Postgres datatype JSONB2.10.02.10.02.10.0
    Spring BootApplication Framework2.6.142.6.142.6.9
    Commons-lang33pp3.113.113.12.0
    Antlr4-runtimeLanguage parser4.9.24.9.2N/A
    LiquibaseDB Schema (version) management4.14.0-nordix4.14.0-nordix4.14.0-nordix
    HazelcastDistributed Cache4.2.5N/AN/A



    • Gaps

    No gaps Identified

    • Known Defects and Issues

    See dynamic Jira filter:

    Jira Legacy
    serverSystem Jira
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    maximumIssues20
    jqlQueryproject = CPS and type = bug and status = open
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

    • Risks

    Risk identified related to scope-creep, see London Risk Table 

    • Resources

    Insert excerpt
    Configuration Persistence Service Developer's Landing Page
    Configuration Persistence Service Developer's Landing Page

    • Release Milestone

    The milestones are defined at the Release Planning and all the supporting project agreed to comply with these dates.

    • Team Internal Milestone

    This section is optional and may be used to document internal milestones within a project team or multiple project teams. For instance, in the case the team has made agreement with other team to deliver some artifacts on a certain date that are not in the release milestone, it is recommended to provide these agreements and dates in this section.

    • Documentation, Training

    See the following centralized wiki: London Documentation

    Other Information

    • Vendor Neutral

    If this project is coming from an existing proprietary codebase, ensure that all proprietary trademarks, logos, product names, etc. have been removed. All ONAP deliverables must comply with this rule and be agnostic of any proprietary symbols.

    • Free and Open Source Software

    FOSS activities are critical to the delivery of the whole ONAP initiative. The information may not be fully available at Release Planning, however to avoid late refactoring, it is critical to accomplish this task as early as possible.
    List all third party Free and Open Source Software used within the release and provide License type (BSD, MIT, Apache, GNU GPL,... ).
    In the case non Apache License are found inform immediately the TSC and the Release Manager and document your reasoning on why you believe we can use a non Apache version 2 license.

    Each project must edit its project table available at Project FOSS.


    Charter Compliance

    The project team comply with the ONAP Charter.