EdgeX Foundry - Stage 3 - 2021-09-8


Completed by:  Jim White, IOTech Systems (EdgeX TSC Chair)

Submitted to TAC Mail List: 

Presented on TAC Weekly Call: 



Below is a self-assessment submitted by TSC Chair/Maintainers of the Project. Comments/questions/feedback is welcome either a) in the Comments at the bottom of the page or b) during the TAC call when information is presented

Stage 1: At Large Projects 

Stage 2 and Stage 3 Projects also requested to complete this section, as PLD acceptance criteria requires meeting current as well as prior stage requirements

Stage 1 Criteria (from the PLD)

Meets / Needs Improvement / Missing / Not Applicable

Supporting Data (if needed, include links to specific examples)

2 TAC Sponsors, if identified (Sponsors help mentor projects) - See full definition on Project Stages: Definitions and Expectations


Henry Lau (HP), Joe Pearson (IBM), Trevor Conn (Dell), Leding Li (Baidu), and Peter Moonki (Samsung)

The typical IP Policy for Projects under the LF Edge Foundation is Apache 2.0 for Code Contributions, Developer Certificate of Origin (DCO) for new inbound contributions, and Creative Commons Attribution 4.0 International License for Documentation. Projects under outside licenses may still submit for consideration, subject to review/approval of the TAC and Board.


EdgeX is an Apache 2.0 license project.  We require all contributions comply with this license agreement as stated in our Wiki below.
https://wiki.edgexfoundry.org/pages/viewpage.action?pageId=21823866
Our TSC recently added a policy recently to review new libs, modules, etc. brought into the project to insure anything we use (or is used indirectly by modules we bring in) is compliant with this license. https://wiki.edgexfoundry.org/display/FA/Vetting+Process+for+3rd+Party+Dependencies
We also conduct code scans regularly (with each PR) for any license compliance issues.

Upon acceptance, At Large projects must list their status prominently on website/readme


Posted on our wiki at the page below.
https://wiki.edgexfoundry.org/display/FA/EdgeX+Foundry+Project+Wiki

Also on our Web site


Stage 1 Projects, please skip to Additional Information Requested from All Projects

Stage 2: Growth Stage

Stage 3 Projects also requested to complete this section

Stage 2 Criteria (from the PLD)

Meets / Needs Improvement / Missing / Not Applicable

Supporting Data (if needed, include links to specific examples)

Development of a growth plan (to include both roadmap of projected feature sets as well as overall community growth/project maturity), to be done in conjunction with their project mentor(s) at the TAC.


We maintain a roadmap for the next 2 years and have a long term backlog that extends beyond that timeframe.  The next couple of releases are documented with pages in our Wiki (and you can see past release roadmaps) here:  https://wiki.edgexfoundry.org/display/FA/Roadmap.
Minor fixes and enhancements are also captured in issues with each repository in Github.  Github tags are used to label bugs from enhancement requests and when appropriate are associated with a specific target release (see https://github.com/edgexfoundry/edgex-go/issues for an example).

Document that it is being used in POCs.


EdgeX is used in countless POCs worldwide.  This list is more about production uses.

Demonstrate a substantial ongoing flow of commits and merged contributions.


Collected from LF Insights for the project since inception and for the last 1 year


Totalthis past year
contributors18670
pull requests82402957
reviewers13361

Jim St. Ledger requested a timeline of EdgeX contributor data over the three years or more of the project.  Insights provides these statistics for the past 5 years.

Demonstrate that the current level of community participation is sufficient to meet the goals outlined in the growth plan.


8 successful project releases since April 2017 (2 each year).  2nd major release (EdgeX 2.0) released on June 30th 2021
On track for two more releases in the next year:  2.1 (code named Jakarta) in fall of 2021 (a stabilization release) and another likely 2.x release in the spring of 2022 (code named Kamakura).

A list of organization having submitted a pull request (in order of the volume of PRs submitted)

Intel Corporation
IOTech Systems Limited
Dell Technologies
EdgeX Foundry
VMware, Inc.
Canonical Ltd.
Unknown
The Linux Foundation
Marvell International Ltd
Circutor
Individual - No Account
Redis Labs
Tencent Holdings Limited
Mainflux D.O.O
ForgeRock US, Inc.
NTT Corporation
Kong Inc.
Hitachi Vantara LLC
Beechwoods Software, Inc.
Mobiliya Technologies
EMQ Technologies Co., Ltd.
Linker Networks
Cisco Systems, Inc.
DataRobot
OpenDaylight Project, Inc.
Samsung Electronics Co. Ltd.
Floating Pond Technologies
Ericsson Software Technology
HCL Technologies Ltd.
Schlumberger Limited
HP Inc.
Polaris Networks
Samsung SDS
University of Lausanne
University of Patras
VEXXHOST, Inc.
ADLINK Technology, Inc.
Balena, Inc.
Chison
Dynata LLC
Eaton
Foundries.io LTD
HUST
Huawei Technologies Co., Ltd
International Business Machines Corporation
Kraken
Linaro Limited
ObjectBox
RISK IDENT
SOLARMA
Tecniplast
Wind River Systems, Inc.

Demonstrate evidence of, or a plan for, interoperability, compatibility or extension to other LF Edge Projects. Examples may include demonstrating modularity (ability to swap in components between projects).


With regard to convergence with Fledge, both organizations have provided connectors to each other's system (for importing/exporting data) but no further discussions have taken place around additional convergence or interoperability


Stage 2 Projects, please skip to Additional Information Requested from All Projects

Stage 3: Impact Stage

Criteria

Meets / Needs Improvement / Missing / Not Applicable

Supporting Data (if needed, include links to specific examples)

Have a defined governing body of at least 5 or more members (owners and core maintainers), of which no more than 1/3 is affiliated with the same employer. In the case there are 5 governing members, 2 may be from the same employer.


Our current TSC is comprised of members from Intel, Canonical, IOTech, HP, Beechwoods, and VMWare.  For names and details see:

https://wiki.edgexfoundry.org/pages/viewpage.action?pageId=329436#TechnicalSteeringCommittee(TSC)-Members

Have a documented and publicly accessible description of the project's governance, decision-making, and release processes.


Matters of project governance, decision making and process are covered in our project Wiki.  The following pages outline our policies.
Matters of technical decisions and voting process and rules are defined here:  https://wiki.edgexfoundry.org/display/FA/Technical+Work+in+the+EdgeX+Foundry+Project

Guidance for how to submit code contributions is defined here:  https://wiki.edgexfoundry.org/display/FA/Contributor%27s+Guide and here: https://wiki.edgexfoundry.org/display/FA/Contributor%27s+Process

Documentation on how our release process and what gets released is here:  https://wiki.edgexfoundry.org/display/FA/Release+Process and some additional information on what is considered a release artifact is defined here:  https://docs.edgexfoundry.org/1.2/design/adr/devops/0007-Release-Automation/

Have a healthy number of committers from at least two organizations. A committer is defined as someone with the commit bit; i.e., someone who can accept contributions to some or all of the project.


Work group chairs automatically have committer rights to their work group repositories and nominate others as committers as spelled out in our governance here:  https://wiki.edgexfoundry.org/pages/viewpage.action?pageId=21823860#Contributors,Committers&Maintainers-NominationandApprovalofMaintainersandCommitters


Each repository has at least 2 committers.  The most used repository has 70 committers (https://github.com/edgexfoundry/edgex-go/graphs/contributors)

Demonstrate evidence of interoperability, compatibility or extension to other LF Edge Projects. Examples may include demonstrating modularity (ability to swap in components between projects).


Adopt the Foundation Code of Conduct.


For any significant community meeting such as the TSC meetings or meeting where we are inviting outside community to speak or observe are always preceded by the code of conduct and anti-trust policy statements.  To date, we have had no unacceptable behavior incidents that the project has been made aware of.

EdgeX adheres to, follows and enforces the LF Edge Code of Conduct with out addendum today.

https://wiki.edgexfoundry.org/display/FA/Code+of+Conduct

Explicitly define a project governance and committer process. This is preferably laid out in a GOVERNANCE.md file and references a CONTRIBUTING.md and OWNERS.md file showing the current and emeritus committers.

worked this year to overcome "needs improvement"

Examples of these documents can be found in our main repository https://github.com/edgexfoundry/edgex-go

Additionally, project governance and committer process is fully documented in our Wiki.  Existing governance and contributor pages are located on this page and its subpages:  https://wiki.edgexfoundry.org/display/FA/Technical+Work+in+the+EdgeX+Foundry+Project
And here:  https://wiki.edgexfoundry.org/display/FA/Contributor%27s+Guide

Have a public list of project adopters for at least the primary repo (e.g., ADOPTERS.md or logos on the project website).

worked this year to overcome "needs improvement"

Our main repository contains the Adopter document (see https://github.com/edgexfoundry/edgex-go/blob/main/ADOPTERS.md)

We also highlight user, adopters and commercial interests of EdgeX on our Website.

Additional Information Requested from All Projects

Additional Information Requested from All Projects

Supporting Data (if needed, include links to specific examples)

Intention for the upcoming year (Remain at current stage OR advance towards the next Stage)

Remain Impact Project

Include a link to your project’s CommunityBridge Insights page. We will be looking for signs of consistent or increasing contribution activity. Please feel free to add commentary to add color to the numbers and graphs we will see on Insights.

https://lfanalytics.io/projects/lfedge%2Fedgex-foundry/dashboard

How many maintainers do you have, and which organizations are they from? (Feel free to link to an existing MAINTAINERS file if appropriate.)

https://wiki.edgexfoundry.org/pages/viewpage.action?pageId=21823860
WG Chair are maintainers of their respective repositories with additional rights to nominate others (which often happens).  Therefore we have at least 9 maintainers.  Most WG Chairs nominate several maintainers to help with the workload of the incoming code reviews.  For example, the main service repository has 28 maintainers/committers (see https://github.com/orgs/edgexfoundry/teams/edgex-go-committers/members).  A small effort/repository may only have a few maintainers.
What do you know about adoption, and how has this changed since your last review / since you joined the current Stage? If you can list companies that are end users of your project, please do so. (Feel free to link to an existing ADOPTERS file if appropriate.)

We are learning about new adopters all the time.   In addition to the companies that are participating in the construction of EdgeX, the following companies have announced (and presented) on EdgeX adoption:

Accenture, ThunderSoft, HP, Jaingxing Intelligence, and Tibco

Organizations like Eaton and Schneider Electric are exploring the use of EdgeX.

There are a number of companies we know are using EdgeX without advertising their use or participating in the community.  This includes organizations like Grosvenor, Danfoss, and Certis.

How has the project performed against its goals since the last review? (We won't penalize you if your goals changed for good reasons.)Met or exceeded goals.  Over 8 million container downloads.   New Chinese language web site.  Launch of the EdgeX Ready program that will allow adopters to demonstrate their EdgeX skills. New adopter and user stories have been a boost to the project - especially out of China.  Regular releases for 4+ years - indicating stability to the marketplace
What are the current goals of the project? For example, are you working on major new features? Or are you concentrating on adoption or documentation?

Working on smaller releases targeted for fall 2021 and spring of 2022 after the major release this year.  Looking to work with more vertically focused groups for new use cases and new adopters.

A new virtual "hackathon" (called the EdgeX Challenge) for English speakers is being planned for early 2022.

How can LF Edge help you achieve your upcoming goals?

Slack archive and creation of new user or adopter FAQs from specific tagged Slack messages.  Community has decided not to adopt LFX Chat (preference to stay with Slack), but still need to work around the 10K limit and turning knowledge into searchable/query-able user help long term.

Join with other organizations looking to form certification programs

Join with other organizations looking to improve dev advocacy through hackathons, badging, and other programs.

Do you think that your project meets the criteria for the next Stage?We are at stage 3
Please summarize Outreach Activities in which the Project has participated in (e.g. Participation in conferences, seminars, speaking engagements, meetups, etc.)

Regular participation* in Hannover Messe, IOT SWC, IOT World and LF events.  Our members speak frequently in live and virtual events all over the world.  

Our outreach/marketing community is focused on what we do to return to live events in 2022.  Virtual conferences have been viewed as lackluster and of marginal value to date.

(*) - pre-COVID

Are you leveraging the Technical Project Getting Started Checklist? If yes, please provide link (if publicly available).Developed after our project launched.