Have questions? Stuck? Please check our FAQ for some common questions and answers.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 29 Next »

As the ONOS community continues to grow it brings a challenge of how to coordinate a large group to make sure we’re all working toward a shared goal. One way to address this is to communicate clearly about our vision for ONOS and invite people to work together on completing specific parts of that vision.

This is where the brigade model comes in — the idea is to create small teams around specific features that we want to ship in upcoming versions of ONOS. This can help us connect with other people in the community who are excited about that feature and it gives that group a framework for working together.

Code for America has been successfully using brigades to build new tools that help with local civic issues all across the country. There are many best practices we can take from that experience to help us get moving quickly with this model in our community. If you’ve been involved in a Code for America brigade, we’d be very interested to hear your thoughts.

Benefits of joining a Brigade

  • Opportunity: Joining a brigade is a unique opportunity to work with the core engineering team and participate in work onsite at Menlo Park
  • Recognition: The work of brigade members will be showcased widely with the community both online as well as at events, like at ONOS Build
  • Experience: Taking part in a brigade is a great opportunity, especially for students, to get experience in network engineering and is a great stepping stone to possibly work at ON.Lab or other member organizations
  • Acceleration: Helping a brigade deliver a feature will get work that you care about into an official ONOS release much more quickly than it would without the brigade's efforts.

Active Brigades

These are the currently active ONOS brigades:

Getting Involved with a Brigade

If you're interested in the work of any of these brigades, please take a look at that brigade's wiki page to learn more about what is happening, what help is needed and how to get in touch with the team.

Roles, Recommendations and Requirements (draft section)

If you chose to take part in or lead a brigade, we have some best practices and recommendations for you.

Recommendations

David to summarize notes from the post-mortem discussion...

Mentors

Mentorship is vital in an open source community because so much information and knowledge is often not written down or documented.  For brigades where there are leads or members who do not have easy access to the ON.Lab offices in Menlo Park, mentorship is also crucial since you do not have the ability to easily interact with and ask questions of core team members based there.  Because of that, we encourage all brigades that are not lead by an ON.Lab staff member to have a mentor who can support them, answer questions and get them unstuck when they are blocked.  Mentors can be ON.Lab staff members, TST members, module owners or anyone else who has deep knowledge to share about the work the brigade is doing.

Product Owners

The product owner makes sure the work of the brigade is relevant to the operator.  It is similar to the role as defined in agile scrum. In short, they make sure the features are defined from the end user perspective, and they make sure that work is done in priority order. The product owner provides "pull" for features from the team - helping to bring the work into use in the network. One can find more information on the web about the role of a product owner. One such page is here.

Test Coverage

Test Coverage is an important aspect for stability of ONOS.  Test Coverage includes both Unit Tests and System Tests. 

For details on unit test coverage refer to Unit Test criteria and guidelines.

System Test Coverage includes delivery of detailed test plans and that is shared with the team for reviews.  Critical and Major functional test scenarios are to be targeted for automation.  Automated tests/scripts need to be submitted into the common repository.  Committing test cases to a common repo will help the community/users to scale the tests in future.  All test cases that are automated need to be run before and after code merges into the mainstream. Once code is committed to the mainstream, automated test scripts need to be integrated to jenkins QA jobs for continuous regression of the features.

ON.Lab test engineer(s) will collaborate with the testers in the brigade and guide them through the test coverage procedures.  Testers on the brigade team can also take advantage of the existing automation framework and tools that ON.Lab uses for system tests.

Refer to System Testing Guide for more details.

  • No labels