OpenSCD is used as a upstream dependency for CoMPAS. CoMPAS provides back-end services. OpenSCD is purely browser based and acts as a GUI for CoMPAS. Since CoMPAS is active collaborating with OpenSCD; OpenSCD shares some LF energy infrastructure e.g. Slack and the CoMPAS maillinglist. OpenSCD is an official LF energy project. The OpenSCD product vision can be found on Github: .github/README.md at main · openscd/.github · GitHub


Disclaimer

This page contains suggestions for governance (the guidelines and customs that define who gets to do what—and how they are supposed to do it) on the OpenSCD project. Understanding the guidelines and customs will enable you to successfully and positively contribute to OpenSCD.

Until now we have worked without obligations, which causes a very low velocity and also confusion. You are encouraged to collaborate on these guidelines and customs with the team. Just let the individual authors know or mention ideas or suggestions that benefit the collaboration within our team in one of our meetings. We shall also ask you (wink)

Thanks for collaborating!

Administration

The OpenSCD project started by Omicron Electronics and contains contributions from Alliander, SprintEins, Transpower and more. It currently has no project charter yet like CoMPAS does. The way we set up governance should create clarity on how we work together, having a good time and creating great software. By experience, we see that some guidelines need to be in place in order to be effective.


OpenSCD administration structure

In order to be more clear on the roles and responsibilities in OpenSCD, a governance setup is needed. In order to be effective as an open source community; clear structures and guidelines are needed to prevent confusion. This becomes more urgent with the move towards OpenSCD-core where the plug-ins/components can be in separate repositories.


Organization level idea

Administrative rights for the github.com/openscd organisation have been with active contributor.

As more parties have taken an interest in the project since then, we could set up something analogous to a technical steering committee with a representative from each contributing party (Alliander, OMICRON, TransPower, and others as they join) who meet monthly to make overarching organization-wide decisions, appoint maintainers for individual repositories, and adopt new repositories into the organization and who are given administrative rights for the GitHub @openscd  organization. (not active at this point)


To be decided on organization level by the OpenSCD TSC

  • Project direction / vision
  • Access to the organization (administrative)
  • Funding (if needed)
  • high level architecture guidelines in order to get the wanted synergy


Repository maintainer:

Ultimate authority on a specific OpenSCD plugin/core. The maintainer is trusted to make decisions for a specific set of functionality bundled within a plugin/functionality.

The maintainer's responsibilities include:

  • Coordinates development/review work in the repository
  • Controls access to the repository
  • Prioritizes work in the repository (where possible)
  • Is responsible for the quality of the code / quality level / architecture
  • Prepares and authorizes releases of the repository
  • Enforce a proper code/solution architecture to keep the maintainability and flexibility in the future
  • Make any decisions on the direction of the repository
  • Alignment with the wider project/product vision

The maintainer ask other developers to help with responsibility. 



Recommendations for maintainers

If decisions affect a big group, please use the refinement process to get buy-in and feedback. Examples include: API changes on OpenSCD-core are something to discuss since is affects plug-in builders.

Take advantage of the Way of Working guidelines


Joining the OpenSCD organisation on Github

Why having your plug-in into the OpenSCD Github organisation?

  • Visibility (increases the change new maintainers)
  • Change plug-ins get shipped in the OpenSCD distribution


Why not add you plug-in to the OpenSCD organisation?

If you don't like to interact with the open source community or it is very vendor specific.


History

OpenSCD project was first published by OMICRON in 2020.

.github/History.md at main · openscd/.github


Open Questions:

  • When to give someone a new repository?
    • DanM: A new official repository under the OpenSCD group should be created when the OpenSCD organization (question) accepts a plugin for integration with the "standard" (question) distribution. This may occur at an early stage, prior to the first release in order to allow coordination and integration with other project features on Github (labels, milestones etc.).
    • DanM: In general those wishing to join the project should have demonstrated a willingness to commit some time and effort on other OpenSCD projects or have a minimum viable product prior to the repository being created under the OpenSCD group. (I think this is a reasonable set of open source house rules )
  • How can edit OpenSCD organization projects?
    • Theire are currently only an limited amount of guys with access the OpenSCD organisation projects
  • Who decides that?
    • DanM: I think we should have an official OpenSCD organisation and would like to nominate J Vogelsang and C Dinkel as benevolent dictators for life. They had the initial vision and interest and care about (a) open source, (b) and open community. I don't think a great deal of documentation for this should be required, it could just be stated on the README for now. I am much more nervous about making this a "standing position" for a company...
    • DanM: I think those above should have control of the OpenSCD organisation.
  • Why not bring OpenSCD under the LF energy umbrella for clear governance and support?
    • DanM: On a volunteer project I worry about overhead in reporting and governance being unsustainable and key members might feel this didn't allow them to focus their time, energy and attention in the areas they were most interested.
    • DanM: Most open source projects are mission driven, but part of the mission is writing code and not doing "management overhead" and sometimes that feels counterproductive. I think for OpenSCD to be under a formal structure like this maybe it would need a minimum commitment of financial support from key partners to make it worth the while and to allow project leads or BDFLs to co
  • Who takes part in the "community counsil"?



Maintainer list

Repository

MaintainerBackup/Support
Open-scd-core

openscd.github.io(auto-generated repo)
Open-scd

xmlvalidate.jsChristian
oscd-filteredlistSteffen
oscd-sclDaniel
oscd-tree-gridChristian
oscd-form-componentsPascal
oscd-cleanupDaniel
oscd-subscriber-later-bindingDaniel
oscd-componentSteffen
.githubBen van 't Ende









To defined later:

oscd-save

oscd-open

open-scd-wizarding

oscd-dialog

oscd-action-icon

oscd-form-elements

oscd-action-pane

oscd-action-translate (can be removed?)

oscd-component

oscd-SCL




  • No labels