-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Propose ADR to formalise the Accredited/Training provider relationships #4610
base: main
Are you sure you want to change the base?
Propose ADR to formalise the Accredited/Training provider relationships #4610
Conversation
e5fb26d
to
ac93576
Compare
9898383
to
0bc0bee
Compare
0bc0bee
to
46222b2
Compare
46222b2
to
77a1e1d
Compare
### Evolving provider relationships | ||
The structural and conceptual relationships among and between providers and users has changed in many ways since this codebase was started.[[1]] | ||
|
||
Providers have always had a relationship between one another in the form of course accreditation. More recently, this relationship has been extended to delegating this accreditation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For clarity, DfE accredits providers, and these accredited providers ratify courses published by their training (a.k.a. lead) partners.
Accredited providers cannot delegate their accreditation to training partners.
We have Accredited provider relationships that exist solely for organisational reasons. This happens when: | ||
|
||
|
||
| Provider | Is accredited? | Is accredited by | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is accredited by
should be Is ratified by
.
| C | No | B | | ||
|
||
|
||
| Provider | Is accredited? | "Is accredited by" | asdf | Who ratifies their courses? | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is accredited by
is incorrect since this is what DfE does. It's more accurate to say Is ratified by
.
|
||
### Definitions | ||
|
||
- A Training Provider |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- A Training Provider | |
- A Training Partner |
Users would also be members of the organisation. This architecture has been abandoned but there are still remnants of this system in the codebase. | ||
|
||
|
||
### Definitions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You could use this design history for definitions of different providers:
- Accrediting Provider | ||
* A provider that accredits one or more courses on behalf of one or more training provider. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Accrediting Provider | |
* A provider that accredits one or more courses on behalf of one or more training provider. | |
- Accredited Provider | |
* A provider that ratifies one or more courses for training partners. |
* A provider that accredits one or more courses on behalf of one or more training provider. | ||
- An Accredited Provider Relationship | ||
* A directional association between an accredited provider and another provider. | ||
- Lead partner |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lead partner is a term used when accredited providers lost their accreditation.
We previously had 'Lead schools,' which were logical groupings of schools with one designated as the administrator, hence 'lead school'.
Instead of creating a new category for the accredited providers that lost accreditation, they were merged with the school grouping and called 'lead partners'.
In the UI, we use 'training partner' not least because they partner with accredited providers to deliver training. i.e., it's a more meaningful term.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Given the level of dilapidation such as
- lead partner/school
- accredited/accrediting/ratify
- ucas cc @avinhurry
the red manual
A background reading and a wholesome review and contrast of below items is needed, to make a sound proposal.
https://www.gov.uk/government/publications/initial-teacher-training-itt-provider-guidance-on-stage-2
https://www.gov.uk/government/publications/initial-teacher-training-itt-forming-partnerships
https://www.gov.uk/government/publications/initial-teacher-training-criteria
https://becoming-a-teacher.design-history.education.gov.uk/becoming-a-teacher/understanding-the-relationships-between-organisations-delivering-initial-teacher-training/
|
||
#### Cons | ||
|
||
- Eases the burden of onboarding developers |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The con is
Eases the burden of onboarding developers
?
|
||
- Query the training provider / accredited provider relationships through typical relational associations | ||
- Index the columns used to make these queries. | ||
- More formally distinguish accredited and accrediting providers. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to review the correct usages of wording here as accredited
is the only items that makes senses
|
||
class Course < ApplicationRecord | ||
belongs_to :provider | ||
belongs_to :accredited_provider, class_name: 'Provider', optional: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all providers who are accredited to deliver initial teacher training (ITT) courses that lead to qualified teacher status (QTS)
from publications
negates optional: true
- None! | ||
|
||
|
||
### 3. Replicate the Apply User / Provider Relationship model |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to warrant deliberation and steer cc @carlosmartinez
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The relationship model in Apply/Manage is complex partly because of safeguarding but also to define who can make application decisions.
Beyond the fundamental relationship (for example, X works with Y), I caution against a complex relationship model that may introduce a permissions model like Manage.
Here is some early work we did on permissions in Publish, which we ended up not using:
- Viewing training partners and their courses if you’re an accredited body
- Giving lead schools the ability to manage permissions for their accredited bodies
- Giving accredited bodies the ability to manage courses they ratify
And a related post Managing accredited bodies if you’re a lead school which includes changes that were implemented.
(NB. 'accredited body' and 'lead school' are outdated terms replaced by 'accredited provider' and 'lead partner' respectively.)
Context
Proposal to address the technical debt around the self join association between Training Providers and Accredited Providers.
Link to Visio document
Changes proposed in this pull request
Guidance to review
Things to check