-
Notifications
You must be signed in to change notification settings - Fork 0
Introduce RFC as a Technical Standard to Manage Change #4
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
Draft
LBHSPreston
wants to merge
1
commit into
main
Choose a base branch
from
use-rfcs
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,27 @@ | ||||||
| --- | ||||||
| status: proposed | ||||||
| --- | ||||||
|
|
||||||
| # Must Use RFCs for Architectural or Process or Technical Operational Changes | ||||||
|
|
||||||
| ## Summary | ||||||
| All changes to our current architecture, processes, or ways of working must be covered by a Request for Change (RFC) for better governance and audit purposes. | ||||||
|
|
||||||
| ## Problem | ||||||
| At the implementation of our initial Hack-It restructure, one of the decisions made was to eliminate the use of the Change Advisory Board (CAB) as it was felt that this was no longer fit for purpose. The majority of our projects were in a more agile format with delivery occuring once or more per week. | ||||||
|
|
||||||
| At the start of the Modern Tools for Housing programme, Architecture Decision Records (ADRs) were used to record decisions on changes to the architecture being built [ADR Repository](https://github.com/LBHackney-IT/lbh-adrs). These have not been used since the base API Platform architecture was established so for much of the changes since then, there was not a consistent way of recording decisions on changes so no clear audit trail. | ||||||
|
|
||||||
|
|
||||||
| ## Proposal | ||||||
| In order to establish a clear audit trail and decision log for changes to what we build or how we build a record of decisions must be re-introduced. This is to be in the form of a Request for Change (RFC) which would give a broader scope on the types of change that could be recorded. | ||||||
| Any change to architecture patterns, engineering processes or technical ways of working should be backed by an RFC. The template RFC can be found at [RFC Template](https://github.com/LBHackney-IT/lbh-rfcs/blob/main/rfc-000-template.md). | ||||||
|
|
||||||
| ## Scope | ||||||
| - Changes to architecture such as database technologies, encryption methods, etc. | ||||||
| - Changes to programming patterns such as Event Driven Architecture | ||||||
| - Changes to a feature or implementation for a serfice that has moved from development to BAU. | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
|
|
||||||
| ## Out of Scope | ||||||
| - Products under active development and not in BAU (unless the change relates to the overall architecture or change in development standard). | ||||||
| - Emergency fixes (a retrospective RFC can be provided in these cases) | ||||||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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 was a mistake on my part. Adding the status means it ends up in the repository still saying
proposed, or it needs to sayacceptedin the PR, which doesn't feel like it makes any sense either 🤷 .I suggest we delete that bit from the template and just say anything in
mainis accepted, while anything in a branch is proposed.We can deal with edge cases like revoking decisions if we ever end up with that complexity