Versions Compared

Key

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

Project Name:

  • Proposed name for the project: ONAP Extensibility
  • Proposed name for the project repository: extensibility

Project description:

The project will outline the requirements, use cases, guidelines, architecture and tools for extending the ONAP components. This proposed architecture will enable any network operator that is using ONAP to easily develop and extend it to their own specific business needs. The proposed architecture will not create a downstream version of ONAP, but will provide a way to extend it without the need to customize the ONAP code.Extensibility is a software engineering and systems design principle where the implementation takes future growth into consideration (From Wikipedia, the free encyclopedia). In regards to ONAP, we would like to build tools, frameworks, APIs and in some cases guidelines to ensure ONAP can be extended to specific use cases that will be developed by service providers.

This project will tackle all type of extensibility patterns:

  1. Black box - the most desired type of extensibility, when the code should not be tempered, in order to achieve new functionality, or extension to existing functionality
  2. White box - the most premise type of extensibility, one that is the most flexible, but also create a lot of overheads in rebasing, and merging code with the upstream
  3. Grey box - a compromise between a pure white-box and a pure black-box approach, which does not rely fully on changing the source code. Programmers could be given the system’s specialization interface which lists all available abstractions for refinement and specifications on how extensions should be developed

Scope:

Many of the ONAP existing components already provide extension mechanisms, however there are gaps, inconsistencies and in general a lack of consistent approaches.  The project will provide a common set of reusable code and where code is not applicable a set of documented re-usable patterns that other components will (should) be adhere to. 

...

The project will define extension requirements, provide common patterns to extensions, and in some cases provide a platform that matches some of the patterns.

Project Architecture:

The architecture will focus but not be limited to:

Architecture Alignment:

 All components (where applicable) need to re-use or implement the defined patterns and any contribution will need to checked against this projects guidance.

Resources:

Key Project Facts

Project Name:

  • JIRA project name: ONAP Extensibility
  • JIRA project prefix: extensibility

Repo name: extensibility
Lifecycle State: Incubation
Primary Contact: Yaron Olivcovitz YaronO@Amdocs YaronO@Amdocs.com
Project Lead: Yaron Olivcovitz YaronO@AmdocsOlivcovitz YaronO@Amdocs.com
mailing list tag extensibility
Committers (Name - Email - IRC): 

Name
Company
Email
Gerrit ID
TZ

Yaron Olivcovitz

amdocs

yaronO@Amdocs.com

Raanana, Israel. GMT +3

Vitaliy Emporopulo

amdocs

Vitaliy.

Emporopulo@amdocs

Emporopulo@amdocs.com


Raanana, Israel. GMT +3



*Link to TSC approval: 
Link to approval of additional submitters:

...