About Ed-Fi Tracker
The Ed-Fi Alliance tracks issues and feature requests in JIRA. This allows the Ed-Fi Community to:
- View work in progress
- Vote on issues
- Add and comment on issues
- View code commits and pull requests related to issues
How To Information
Below are a few helpful outlines on common tasks with Ed-Fi Tracker tickets.
DATASTD Tracker Ticket Status Workflow
The life of a DATASTD ticket has many phases. To help understand the process, below is the overall workflow for the DATASTD tracker project followed by a few common paths DATASTD tickets take.
OPEN
All DATASTD tracker tickets are created with the OPEN status. In this phase, the a reporter can expect from the community additional information gathering, suggested best practices or workarounds, background information, and/or clarifications, depending on the nature of the ticket. If there exists related tickets they may be linked and the community can vote on tickets they'd like to see gain more visibility. From there, they have two possible paths: Under Analysis and Closed.
UNDER ANALYSIS
Periodically the Alliance and other community groups will review suggestions for changes to the data standard. When a ticket has been selected for this process, it is moved from OPEN to UNDER ANALYSIS. These can include recommendations for new features and fixes to the existing data model and are most often grouped by the data domain (e.g. Student Enrollment, Assessment). While tickets are in this phase, contributors may add notes and comments or ask additional questions of the community in preparation of the discussion. During analysis, additional notes and recommendations for next steps will be notated in the comments as well. From here, a ticket may be moved back to OPEN or on to PLANNED FOR DEVELOPMENT.
PLANNED FOR DEVELOPMENT
Tickets that have been approved for development during the UNDER ANALYSIS phase move here. Detailed steps on what is to be implemented along with a Data Standard Version are required. It is important to note while there is a plan to develop tickets in this phase, it is not a guarantee the changes will become part of a future release. Often times during development additional requirements or unforeseen complications can arise and more information may be necessary or additional steps taken before a ticket can move forward. When this is the case, the ticket will revert to UNDER ANALYSIS. Otherwise, the ticket will move on to IN DEVELOPMENT.
IN DEVELOPMENT/READY FOR REVIEW
Tickets that are actively being developed fall into this phase. Changes are made to the model and data standard artifacts are completed and sent to the Alliance for a final review before merging those changes into a corresponding development branch. As with the previous phases, during this stage complications may arise that require changes or a hold to the development process. If this is the case, the ticket may revert back to PLANNED FOR DEVELOPMENT as adjustments to the implementation plan are made. Otherwise, the ticket will move on to SCHEDULED FOR RELEASE.
SCHEDULED FOR RELEASE
After the changes designated by a ticket are implemented and merged into the corresponding development branch in GitHub, a release is assigned to the ticket and it moves to this final phase before CLOSED.
CLOSED
There are two main ways that a ticket will end up CLOSED. The first are OPEN tickets that are resolved without requiring any further discussion or changes to the data standard. The second are tickets SCHEDULED FOR RELEASE after the release occurs. The common thread is the reported issue will have no further action taken.
Tracker Ticket Stories
Best Practices and Clarification
Summary: As a school administrator, I want to know the best way to record a student's credits to the course transcript for a course that has multiple parts.
Issue Type: Question
Fix Version/s: v3.0
Description: I would like to know how to properly record data around courses with multiple parts and student credits. Specifically, I need to address the following use cases:
- Use Case 1 - A student was enrolled in a course with two parts offered in the Fall and Spring, passed both semesters, and earned credits for both course parts.
- Use Case 2 - A student was enrolled in a course with two parts offered in the Fall and Spring, failed the first semester and passed the second semester, and earned credits for both course parts.
- Use Case 3 - A student was enrolled in a course with two parts offered in the Fall and Spring, failed the first semester and passed the second semester, and earned credits for ONLY the second course part.
- Use Case 4 - A student was enrolled in a course with two parts offered in the Fall and Spring, failed both semesters, and did not earn any credits.
Reporting a Bug
Summary: StudentProgramAttendanceEvent can have records without a corresponding StudentProgramAssociation.
Issue Type: Bug
Fix Version/s: v2.0, v2.2, v3.0, v3.1
Description: It has come to our attention that because the StudentProgramAttendanceEvent has separate references for Student, Program, and EducationOrganization, that an attendance event record can be created without the student having a StudentProgramAssociation record. Unless there is a use case where this would be necessary, we would recommend replacing the three separate references with a single StudentProgramAssociation reference instead.
New Feature Request
Summary: As a SIS vendor, I would like to request an Enrollment/Membership type on the StudentSchoolAssociation to accommodate state implementation requirements.
Issue Type: New Feature
Fix Version/s: v3.1
Description: A handful of state implementations record additional information on student enrollment/membership beyond knowing which school is the PrimarySchool for the student. We come across this need repeatedly in the field and would like to standardize how and where the information is recorded. Adding a EnrollmentTypeDescriptor with the most commonly recorded values as part of core would remove the need for extensions across multiple implementations and provide the flexibility to add custom descriptor values.