Info | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
1110/2124/20222024
|
This document describes Open-Source Community members participation in SPARCRequest release process.
SPARC release schedules:
R1 | R2 | R3* | R4 | ||
---|---|---|---|---|---|
SPARC-Request | X | X | |||
SPARC-Dashboard** | X | X | |||
SPARC-Report** | |||||
SPARC-Forms** | |||||
SPARC-Admin** | |||||
SPARC-Fulfillment | X | ||||
SPARC-Catalog | X |
*Research Master ID (RMID) release
**generally included in SPARC-Request releases
ProcessDOCUMENTATION PROCESS
Pivotal Tracker is the project-planning tool used to track development work for each managed product. Deliverables are in the form of stories (virtual cards) that move through a workflow of different states. Priorities are established and transparent so team members know what needs to be done, what is being
worked on, and when it
is completed.
OPEN-SOURCE BUSINESS PROCESS MODEL
PROCEDURES
RESPONSIBLE PARTY | ABBREVIATION* |
---|---|
Project Ops Team | PO |
Project Development Team | PD |
Open-Source |
Community Member | OS |
*Responsible parties' abbreviations appear in parentheses preceding the task
OPEN-SOURCE BUSINESS PROCESS MODEL
Describes Open-Source Community process for product bug fixes and features implementation
PROCEDURES
Plan deliverablestasks below
(OS)
trackerTracker (PT) Icebox story in the SPARC-OS Development project to report SPARC work requests.
See story types definitions - these willStory types will primarily be feature or bug. See specifics below on PT entry requirements.
(
PL, PM, DM, SDPO) Define story requirements to move forward in the development cycle
.(
PM) Label for outcome as needed (e.g., os cmte approved, etc.)- (PM) Drag story to Backlog
- Backlog is designed house upcoming stories that are prioritized for a release (iteration).
- (PM) Create/Update Release Marker
- Update Backlog Release story title for the next release. It will be used to distinguish between backlogged stories ready for pick up - those above this marker are eligible.
- Create new Current Iteration Release Marker story as a milestone marker, labeling it for current release. It will be used for final release notations.
- Current iteration displays in-progress (started) stories that are prioritized to be worked on for the current release.
- (PL, PM) Prioritize in Backlog for what can go in the next release & what developers can pick up to work on, labeling for the next release.
- Remove previous label if story no longer being added to next release, as applicable
- Bugs are placed at top, then features, then chores.
- Release story appears at the bottom of prioritized stories to delineate between those currently scheduled for a release.
Fulfill deliverables
- (DV) Pick up story from Backlog top of list, above the release marker.
- Add self as owner & click the Start button. This moves story which moves story to Started state & into Current Iteration
- Enter story comments, as well as provide updates at weekly meetings. Get assistance as needed.
- (PM) Drag backlog stories to the Current Iteration for maintenance as needed (e.g., assigning specific stories, record tracking & clean up, etc)
- (DV) When finished work, click Finish button to move story into Finished state.
- Submit a Github pull request to have code applied to test environment. See Best Practice Styling Guide HERE.
- (DV) After coding applied to test, click Deliver button to move story to Delivered state to indicate it’s now ready for testing.
- Add story comments describing necessary deployment tasks (e.g., settings changes, rake tasks, local environment updates, etc.). These provide instruction for any additional deployment post code changes needed.
- Also add these deployment tasks within the Tasks section of the Release Marker story (at the bottom of the Current Iterations)
- Add story comments describing necessary deployment tasks (e.g., settings changes, rake tasks, local environment updates, etc.). These provide instruction for any additional deployment post code changes needed.
- (PM) To begin documenting required testing, enter in reviews for: Test Design (primarily tests function) and Test QA (tests function + quality), as required for both types of reviews. In general, a minimum of 2 people should test for acceptance of Features and for other types of stories as determined.
- Test Design In Review status naming PC
- Test QA In Review status naming PM
- (PC, PM) Test the story, entering in comments as needed to clarify work through testing results.
- Enter story label for testing date (e.g., testing DATE)
- Record succinct description of Acceptance Testing, emphasizing outcome, questions and issues
- Attach any additional or details testing notes for reference
- As appropriate, engage user in reviewing the change, especially if a change was suggested by a user group. Record any testing notes or change requests, updating story with acceptance as described below.
- If accepted with no additional changes needed:
- Add a review:
- (PC) Enter in Test Design Pass review with initials
- (PM) Enter in Test QA Pass review with initials
- (DV) May include code and/or security review with initials, as necessary
- (PM) Click Accept button to move story to Accepted state. It’s now ready for the release.
- Add a review:
- (PM) If additional clarification needed before can be accepted, update story with questions and comments. Keep in Delivered state.
- When clarification fulfills acceptance criteria:
- Enter in Test QA Pass review with initials
- Click Accept button to move story to Accepted state (or Finish button for Chores). It’s now ready for the release.
- (PM) If unable to accept (e.g., due to more work needed, new issues, etc.):
- Add a review:
- (PC) Enter in Test Design Revise review with initials
- (PM) Enter in Test QA Revise review with initials
- Change state back to Started and update story with details. The story goes back through this Steps #3-#5 process through acceptance.
- Add a review:
Prepare for Release
- (PM) Evaluate stories, with Team as needed
- Current Iteration for removal if story won't make it into the release.
- Backlog or Icebox for adding to the release
- (PC) Draft Release notes on SPARC Wiki.
- Add stories as they are completed
- (PM) Confirm all stories scheduled for release are accepted and documented for product deployment.
- (PC) Prepare final Release notes
- Features & Bug Fixes (all stories)
- Rake Tasks and Setting Changes
- Programming Changes with Links to GitHub.
- (PM) Review drafted Release notes for final edits.
Implement Release
- (DM, SD) Deploy release to production
- Review the Current Iteration Release Marker for necessary tasks and instructions.
- (PC, PM) Perform production testing/review
- Update the PT Release marker with testing notes.
- (PC) Update Research community on release:
- MUSC Blog (Wiki): MUSC Internal Blog
- VPR Newsletter – email to Rachel Mehard.
- SCTR Newsletter – Communications Request Form
- Horseshoe website changes – Communications Request Form
Monitor Release
- (PM, PC) Production monitoring for release application issues up to 2 weeks.
- (DM, SD, DV, PC, PM) Fix any issues, as required.
- (PM) Accept PT Release marker to close release.
- (DM) Release GitHub for open-source community
PO) Update story label to denote next steps or information for OS community, who performs the following actions, per labeled status:
- (OS) Todostories - begin considering the topic, which will move into another status to further define requirements
- (OS) For discussion - participate and respond to requests for additional information and discussion
- (OS) Operations agenda - participate in meeting discussions about the story that define requirements, if needed.
- (OS) For review - perform and document a review of the proposed feature or reported bugs, recording institutional priority as a task on the story (see example below)Ratings:
High: essential to business operations
Medium: fairly important to business operations
Low: little to no importance on business operations
- (OS) Operational committee approved - refer to this final OS committee action for story status
- (OS) Institutional name_contribution - contribute to the story development, following steps 7-10 below
(PO) Include story in project Backlog section to prioritize for a release (iteration).
- (PO, PD) Determine stories that will go in next sprint cycle
- (PO) Assign story to release
- (OS) - refer to label for release assignment (e.g., version 3.9.0)
- (PD; OS) Update story state to Started, moving story into project Current Iteration section.
- (PD/PO; OS) Complete story development and testing, per following workflow.
- (OS) Participate in the development and testing process by:
- Responding to any requests for information or testing through comment entry in the story's Activity section
- Entering in pull request when contributing development code. Include any rake tasks as comments in Activity section
- Responding to any requests for information or testing through comment entry in the story's Activity section
(PO) After story acceptance, added to release documentation list
(PD) Release deployed to production.
- (OS) Access release documentation for implementation planning
- (OS) Following 2-week release monitoring, expect to get communication of SPARC's availability for you to implement.