Jump to: navigation, search

Swordfish:ProjectRules:IPComplianceProcess Internal

Revision as of 02:44, 29 July 2009 by Joerg.drescher.sopera.de (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Swordfish Internal IP Compliance Process: An Extension to the Eclipse IP Legal Process

Intro

About the Eclipse IP Legal Process

The Eclipse Legal Process guidelines provide all Swordfish team members with all the information required on the subject of IP compliance. Here are a few links on the Eclipse IP Legal Process

There is also an audio presentation worth listening to you at: [Campbell, Legal Counsel & Manager, IP]

In addition to this, in our team we have a short process work flow that all team members can use as a frame of reference.

NOTE: This is a draft process guideline. It will be subject to review and improvement throughout the project life-cycle.

About Swordfish's Internal IP Process

Swordfish has a number of complimentary steps introduced into its project life cycle which should help to ensure IP compliance for third party components used in its project.

The Swordfish Runtime project requires more non EPL 3rd Party software components than the average Eclipse IDE Project. Hence, we have included some additional steps to ensure full compliance to the Eclipse legal requirements. As long as Swordfish is on the release train of a common Eclipse release, the Swordfish team will ensure that all 3rd’party bundles which are committed are covered by approved Eclipse Contribution Questionnaire (CQs). All the events are generally triggered by events in the Eclipse Legal Process

Tasks for Committers, Contributors and the Project Lead

This table lists all the tasks for commiters, contributors and the project lead.

Tasks and Workflow for Commiters and Contributors
1    Role Trigger for Action Actions

Committers/Contributor  


You need a 3rd party software component to complete a feature in Swordfish
  1. Identify downstream dependencies
  2. Inform the team about your choice including dependencies via the SOPERA mailing list
  3. Follow the discussion
  4. Vote with other team members to determine if this third-party component is a “must-have” item.
  5. If it is, then start with the CQ process.
2.
Committers/Contributor
Committers do not object on mailing list.
  1. No objections? Continue with step 3
  2. You are not a committer? Approach one to submit on your behalf.
  3. Objections raised? Search for an alternative

3
Committer
Starting and monitoring the CQ
1. Before filing a CQ, check: Is there an existing CQ?
  1. In Orbit?   From other project?
  1. For older version: if yes, file a piggy-bag for existing CQ.
  1. If no: File new CQ
4
Committer
Team or Project Lead have identified 3rd party as critical ‘must have’ component
  1. Check 3rd Party for potential hidden problems (Not mentioned dependencies, headers...)
  2. Identify possible alternatives as fallback.
5
Eclipse Project Lead
Team has identified 3rd party as critical ‘must have’ component
Set a deadline for CQ approval (consent form EMC to use the third-party component).
6
Eclipse Project Lead
Before deadline is reached
  1. Monitor status
  2. Update team on progress


7
Commiter
Status of CQ is ‘CheckIntoCvs’
  1. Add CQ number into manifest header of the third-party components
  2. Only check in 3rd party components into CVS that contain the corresponding CQ number.








































The next topic covers tasks that need to be performed by the release manager.

Tasks for Release Managers

These tasks are for the release manager in the Swordfish team.

Tasks and Workflow for Release Managers
    Role Trigger for Action Actions

Release Manager
Each Sprint End

Based on Last Build Results:

  1. Check if CQ number is included into the meta file of the 3rd party bundle
  2. Check status of the corresponding CQ in IPZilla
  3. Check for identical version of the 3rd party bundle with an approved CQ.

NOTE: If points 1-3 are negative consult with committer about alternatives.

CQ denied
  1. Remove from cvs/svn
  2. Switch to alternative identified by committer.



Release Candidate 1
  1. Repeat all checks as at end of Sprint
  2. Remove any 3rd Party for which CQ is not approved
  3. Remove CQs from IP-Log for 3rd parties which are not included into release build.
  4. File IP Log for approval.























Swordfish Wiki Home