Skip to content
This repository has been archived by the owner on Oct 2, 2018. It is now read-only.

Technical Documentation

Ryan Beasley edited this page May 8, 2015 · 97 revisions
  Development Schedule     Stakeholders     Communication Plan  
  Data Flow Diagram     Use Cases     Administrator Roles  

Implementation for the plugin has been divided into four separate milestones each with different due dates and objectives:


The SPDX Eclipse Plugin has a few primary stakeholders who can significantly influence the plugins development and a couple secondary stakeholders who may be indirectly impacted by the plugins outcome.

Primary Stakeholders

  • Gary O’Neall (goneall)
  • As the Founder and Principal Consultant for Source Auditor, Gary O'Neall is a primary stakeholder for the SPDX Eclipse Plugin because his general interest in SPDX Tools and other software compliance tooling.
  • Linux Foundation's SPDX Workgroup

Secondary Stakeholders

  • Source Auditor
  • Because of Source Auditor's interests in software compliance, they are a secondary stakeholder because they may utilize the SPDX Eclipse Plugin utilizing many SPDX tools Gary O’Neall developed.
  • Eclipse IDE Users
  • Individuals who utilize Eclipse and are also interested in software compliance may use the SPDX Eclipse Plugin to find and add licenses to software projects.

A communication plan plays an integral role in keeping a project on task. In order to promote project efficiency for the SPDX Eclipse Plugin the project administrators developed their own.

Project Management Methodology

To make project communication easier between project administrators and collaborators, the agile scrum project management methodology is used by the team because it promotes rapid development with little documentation required. Learn more, here.

Team Meetings & Communication

The project administrators currently host 3 types of meetings to gauge project progress, outlined below:


Topic Information Media Frequency Days & Times
Status
  • Weekly Status
  • Issues and Challenges
In-Person 2x / Week Mon / Wed, 4:15 pm - 4:30 pm
Backlog Refinement
  • Backlog Grooming
In-Person Weekly Mon, 4:30 pm - 5:30 pm
Retrospective In-Person Monthly 1st Mon of Month, 4:45 pm - 5:30 pm

If you would like to take part in team meetings, please contact rbeasley@unomaha.edu.


Listed below are the current administrators for the SPDX Eclipse Plugin and their respective roles and responsibilities for the project:

####Tyler Filkins (TCF-30)

Systems Architect Database Administrator Application Developer
  • Maintain System Requirements
  • Establish Source Code Hierarchy
  • Manage System Backups
  • Manage System Nightly Builds
  • Database Point of Contact
  • Optimize Database Performance
  • Modify Database Structure (As Needed)
  • Develop Source Code
  • Maintain Existing Source Code
  • Unit Test Developed Source Code
  • Maintain Documentation for Source Code

####Ryan Beasley (ryanbeaz)

Project Manager User Experience Designer Application Developer
  • Manage Issues and Backlog
  • Maintain Development Schedule
  • Maintain Project Documentation
  • Organize Team Meetings
  • Develop an Intuitive Plugin Interface
  • Exceed User Needs While Designing Plugin Interface
  • Develop Source Code
  • Maintain Existing Source Code
  • Unit Test Developed Source Code
  • Maintain Documentation for Source Code

Cases

#1

######TITLE: Install SPDX Plugin to Eclipse

  1. NAME: Install SPDX Plugin to Eclipse
  2. DESCRIPTION: Developers using the Eclipse IDE can install the SPDX plugin by adding the org.spdx.spdxeclipse_1.0.0.0.jar file to the eclipse/plugin/ directory.
  3. PRIMARY ACTOR(S): The developer/user
  4. PRE-CONDITIONS:
    - Eclipse IDE installed
  5. POST-CONDITIONS
  • END ON SUCCESS: SPDX Eclipse plugin installed successfully and produces .spdx documents for the file currently open in the Eclipse editor.
  • END ON FAILURE: Plugin .jar file was not implemented into the Eclipse runtime environment successfully
  1. MAIN SUCCESS SCENARIO
  • FLOW OF EVENTS:
    1. Download the org.spdx.spdxeclipse_1.0.0.0.jar file from the SPDX Eclipse Plugin repository
    2. Copy or move .jar file into the eclipse/plugin/ directory under your local install of Eclipse. 3. Start Eclipse or if already running, do a File->Restart for the runtime engine to pickup the newly added plugin .jar file
#2

######TITLE: A User Creates an SPDX Document for a Project File

  1. NAME: Create SPDX Document for Currently Open Eclipse Project File
  2. DESCRIPTION: The user has open source software and copyright/licensing information within a file that is open in the Eclipse IDE editor. The user would like to create an SPDX document for the licensing & copyright information in this currently open file.
  3. PRIMARY ACTOR(S): The developer/user
  4. PRE-CONDITIONS:
    - User must have the SPDX Eclipse plugin installed and working properly. - User must have licensing and/or copyright information in the file that is currently open in the Eclipse editor.
  5. POST-CONDITIONS
  • END ON SUCCESS: The Eclipse project repository contains an SPDX/ directory for all SPDX documents created for this particular project. The SPDX/ directory contains a new or updated SPDX document for the currently open file in the Eclipse editor.
  • END ON FAILURE: No SPDX directory or document is created and/or no legitimate licensing or copyright information was found during the project repository scan
  1. MAIN SUCCESS SCENARIO
  • FLOW OF EVENTS:
    1. User initiates the creation of a SPDX document using either the right-click popup menu or the Project dropdown menu.
    2. User specifies the SPDX document type by selecting either the JSON, RDF, or TAG submenu buttons under the 'Generate SPDX' menu button.
    3. The SPDX plugin commands DoSOCS to scan the currently open file.
    4. The SPDX plugin receives the SPDX document output from DoSOCS and writes it to a .spdx file in the SPDX/ directory within the project repository.
    5. The SPDX plugin refreshes the Eclipse instance to show the updated file changes in the Package Explorer view.
#3

######TITLE: A User Updates a SPDX Document for a Project File

  1. NAME: Update SPDX Document for Currently Open Eclipse Project File
  2. DESCRIPTION: The user has new or updated open source software and copyright/licensing information within a file that is open in the Eclipse IDE editor. The user would like to update an existing SPDX document for the new licensing & copyright information in the currently open file.
  3. PRIMARY ACTOR(S): The developer/user
  4. PRE-CONDITIONS:
    - User must have the SPDX Eclipse plugin installed and working properly. - User must have new or updated copyright/licensing information in the file that is currently open in the Eclipse editor.
  5. POST-CONDITIONS
  • END ON SUCCESS: The Eclipse project repository contains an SPDX/ directory for all SPDX documents created for this particular project. The SPDX/ directory contains a new or updated SPDX document for the currently open file in the Eclipse editor.
  • END ON FAILURE: No SPDX document is found in the project or the original SPDX document has not been updated to reflect the copyright/licensing information change(s)
  1. MAIN SUCCESS SCENARIO
  • FLOW OF EVENTS:
    1. User initiates the creation of a SPDX document using either the right-click popup menu or the Project dropdown menu.
    2. User specifies the SPDX document type by selecting either the JSON, RDF, or TAG submenu buttons under the 'Generate SPDX' menu button.
    3. The SPDX plugin commands DoSOCS to scan the currently open file.
    4. The SPDX plugin receives the SPDX document output from DoSOCS and writes it to a .spdx file in the SPDX/ directory within the project repository - overwriting any existing document with the same name, if such a document exists.
    5. The SPDX plugin refreshes the Eclipse instance to show the updated file changes in the Package Explorer view.