OIMT Project Charter
(August 1, 2017)
Open Information Model and Tooling
Evolve industry-wide Open Information Models and associated open source tooling software that guides/supports the development of software-defined standard platforms, frameworks and interfaces used to control/manage/orchestrate Software Defined Networks.
This project will continue the development of:
- Detailed but compact canonical models in UML (with supporting documentation), capturing the essence of networking from a management-control perspective, and of control from a governance perspective that will, by emphasizing patterns, promote efficient software development
- Tooling software that supports the mapping from the canonical models to purpose specific UML models (such as for an interface)
- Tooling software that converts an appropriate UML model into an interface schema form such as Yang, JSON or TOSCA
- Guidelines that promote normalized use of UML, shared tooling use and tool driven standardized language mappings
The tooling suite is used by projects such as Open Transport to assist in building the interface model and to convert that interface model into an interface schema, avoiding hand coding.
It is a strong intention of the project to achieve adoption of the model and generated artifacts by ONOS/CORD (and other industry initiatives) and to take advantage, in the project work, of insights gained through this adoption. This will improve the consistency of stored information, ease the mapping to interfaces and improve component interconnection.
Ongoing leveraging of this work by partner SDOs (such as MEF, OASIS-TOSCA, ITU-T, TMF and ETSI-NFV) in their information models and tool chain will facilitate industry convergence and federation to avoid needless fragmentation in the SDN/NFV/Cloud/transport space.
The project will continue to strive to improve understanding of the need for an Information Modeling stage preceding coding in any Agile/DevOps software development with the aim that this becomes an expected part of any development cycle.
Information Models and supporting documentation (github):
- Information Models in UML, UML Profiles, documentation etc.
Tooling Source code and documentation (github EAGLE-Model-Profile-and-Tools or equivalent):
- Interface generation: UML-Yang, UML-Open API, Yang – Open API etc.
- Model transformation: Pruning & Refactoring (UML –UML) etc.
Guidelines and general documentation (Eagle Open Source Community or equivalent):
- UML Guidelines, Papyrus Guidelines, Mapping Guidelines etc
- Minutes, contributions etc.
Liaison related work and some company contributions (on ARO or equivalent private repository)
- Liaison repository (Private)
- Some company contribution where necessary (Private)
- Discussion community and document repository related to private documents (Private)
All materials (other than the liaisons, some company contributions and associated discussions) will be made available under Apache 2.0 licensing terms.
The project will have a Technical Steering Team of people currently holding leadership responsibilities (Nigel Davis [co-chair] (Ciena), Kam Lam [co-chair] (FiberHome), Karthik Sethuraman (NEC), Bernd Zeuner (DT) and Malcolm Betts (ZTE)).
Brigades will be proposed for work areas where there is a strong multi-project aspect (leading to implementation). In the near term these may include: Specific resilience scheme modeling, Controller component modeling, OAM modeling and DCN modeling.
Community will make use of mailing lists (derived from email@example.com and EAGLE-Open-Model-Profile-and-Tools@noreply.github.com), Github sites (noted above) and a wiki for archiving of meeting notes, proposals, and other working documents.
A private member-only wiki will also be used for liaison agreements and other documentation that cannot be publically disclosed due to confidentially agreements with other organizations.
There will be regular calls/discussions to progress work on specific topics (using WebEx, Slack etc.) and face to face meetings as appropriate.
 Currently there are two repositories EagleUmlCommon (formerly EAGLE-Model-Profile-and-Tools) (open) and ONFInfoModel (private), It is proposed that all work be done in one or more open repositories. The easiest initial transition would be to promote the OnfInfoModel from private to open (after a clean-up).