Git Product home page Git Product logo

best-practice-and-impact / analysis_project_documentation Goto Github PK

View Code? Open in Web Editor NEW
2.0 0.0 0.0 10.09 MB

Resources and templates for documenting analytical workflows, assumptions and limitations.

Home Page: https://best-practice-and-impact.github.io/analysis_project_documentation/

License: MIT License

HTML 99.91% Python 0.06% CSS 0.03%
analysis assumptions documentation risk-assessment

analysis_project_documentation's Introduction

analysis_project_documentation

Analysis and model documentation is crucial for the analytical lifecycle and a key element in enforcing good governance. Good quality documentation underpins effective development and use of analytical workflows. It captures the key decisions that affect the design and use of the analysis and why they were made. It also sets out how the analysis will be assured and who is responsible for this assurance.

This repository stores templates for recording commissioning decisions and logging assumptions. It includes an HTML template for a quality assurance report. The idea is to make it easier for teams to publish their QA results, to think carefully about assumptions going into their analysis, how these assumptions would impact their output and to document everything in one place. As development progresses, it will demonstrate how the assumptions package can be used to log assumptions inline.

The repository contains these folders:

  1. .assumptions: Contains a standard template to record the assumptions made about the analysis, justify their suitability given the modelling scenario, proof of internal and external verification and the quality rating of each assumption. The folder also contains a markdown document and a package that will search the current directory for assumptions and write the log to the same directory.
  2. .qa_report: Contains an automated template which include some generic functions on data quality checks, for example, checking for any logical or arithmetic relationships in the data and check if values fall inside an acceptable/expected range. The idea is to produce a summary of the results of tests performed on the most recent data run.
  3. docs: Rendered website created by Quarto when the .qmd files in the main folder are rendered out. This website is rendered automatically to Github.io.
  4. data: Example datasets about house prices and university dropouts.

The main folder contains the following key files:

_quarto.yml - YAML file containing configuration information for the Quarto engine to render the website. Includes page structure and source files.
.gitignore - List of files not to upload to git repository.
apd_style.css - HTML style sheet which sets up table rendering formatting. Edit this to change the way Quality Questions tables are rendered.
assumptions_and_issues_log.qmd - Quarto markdown document about the assumptions log.
faqs.qmd - Quarto markdown document containing frequently asked questions.
feedback.qmd - Quarto markdown document linking to feedback form.
index.qmd - Quarto markdown document setting up the landing page for the quality questions website.
issues_log.qmd - Quarto markdown document about the issues log.
quality_questions.qmd - Quarto markdown document setting out the Quality Questions in table format.
sample_assumptions_table.qmd - Quarto markdown document containing an example of a RAG-rated assumption log.
README.md - Project README file.

Working with the project code

We recommend using Visual Studio Code to work with this project. Open the code workspace in VS Code to load the project. To render the website, open any of the .qmd documents and select the Preview button. Edits to qmd files will only be reflected in the project website after you have re-rendered using Preview.

Software requirements

Python 3.8 or later
Visual Studio Code with the Quarto, Python and autopep8 extensions
Quarto

Useful links

HM Government AQuA book analytical quality assurance manual. HM Government.

HM Government Analysis Function. (2020). Quality assurance of code for analysis and research. Office for National Statistics, Quality and Improvement division.

analysis_project_documentation's People

Contributors

beth-e-jones avatar zarbspace avatar

Stargazers

 avatar  avatar

analysis_project_documentation's Issues

Typos in quality questions

Typos to correct

Introduction page

  • Introduction: "The stages are covered by the following tabs on the website" to "the questions are..."
  • Correct AQuA spelling in "key Aqua roles..."
  • Introduction: Pressing Ctrl+S will automatically download a copy of the HTML page on your machine." to "will allow you to save a copy..."
  • AQuA roles and responsibilities - change "creation" to "allocation"
  • AQuA roles and responsibilities - bullet points have not worked
  • Responsibilities of the Senior Responsible Owner: remove hyphen next to "signs off"
  • Responsibilities of Commissioner: remove "The Commissioner"

Quality questions: I. SCOPING

  • Q1 (Why the questions matter): comma needed after "clear"
  • Q15 (Why the questions matter): commas needed after "analysis" and "occurring"
  • Q19 (Why the questions matter): Remove full stop mid-sentence
  • Q8 (Code of Practice): Correct spelling of Chief
  • Q17 (Code of Practice): Fix line break if possible
  • Q17 (Code of Practice): Remove capitalisation of "Producers"
  • Q15 (AQuA): Inconsistent capitalisation of roles

Quality questions III: CONDUCTING AND CHECKING ANALYSIS

  • Q30: Consider rephrasing of "do you think this would be helpful" to "if not, why not?"
  • Q38 (why the questions matter): Correct spelling of externally
  • Q49 (why the questions matter): Correct spelling of assure
  • Q33 (Code of Practice): Fix line break if possible

FAQs

  • Business critical numbering not formatted like numbered points
  • Bullet points for AQuA book roles haven't rendered properly
  • Help available bullet points not rendered properly

Quality questions: Q29

This may be better separated into 2 questions to reduce the risk of any one of these important questions being missed. Under importance, we should also add that analysts should not assume datasets are high quality and should conduct your own quality assurance on the data.

Quality questions: Q14

This may be more suitable as 2 separate questions to ensure that analysis do not miss documenting whether they have discussed risks with customers.

Rendering of quality questions post-CSS styles

Several small issues in rendering in the quality questions with the new structure:

  • Q22 Code of Practice: Line break in question that is inconsistent with other two tabs

  • Q36: split when rendering, so question number appears in the tab and the content is split across 2 rows

  • [ ]
    image
    image

  • Q46: space needed between "you" and "should"

  • Q39: rendering misses question number so columns are offset
    image

Assumptions log guide

"If assumptions are inadequate or absent, then these uncertainties often persist and can drastically impact the analysis outputs" - should also add that if assumptions are inadequate, may impact users' interpretation.

There is no description of the columns related to value of estimated mean or distribution, so this should be added for clarity.

Creating table for sample assumptions

Sample assumptions on quality questions currently not in table format. Needs a table created so these are structured in the same way as the template assumptions log.

Quality questions: Sign-off by SRO

Currently documented as a Yes/No response for each question. Suggestion to change this to initials to clarify who has signed it off (particularly if SRO changes during lifecycle of a project)

Additionally, suggestion of some kind of line for commissioner, SRO, and analytical assurer to all confirm they have read this document and agree with the responses.

Question: .gitignore quarto json, preview, and xref files

When merging, differences caused by rendering the quarto files create unnecessary merge conflicts which do not need to be reviewed.
Can we put all the files that regenerate each time there is a render into a .gitignore to avoid this happening?

Html assumptions and decisions log

Need to create a html, completable version of the assumptions and decisions log. This will create consistency between all the forms in this documentation repo.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.