Working with Discovery: Difference between revisions

From Discovery Data Service
Jump to navigation Jump to search
m (code review addition)
No edit summary
 
Line 4: Line 4:
Contact Stephen Janering (email [mailto:stephen.janering@nhs.net stephen.janering@nhs.net]) for access.  
Contact Stephen Janering (email [mailto:stephen.janering@nhs.net stephen.janering@nhs.net]) for access.  


'''How do I communicate with LHS?''' 
'''How do I upload code to the Github repository?'''
 
Where LHS are asked to support an organisation, all communication is via [[Jira]].  This helps to ensure that issues and questions are tracked, lessons are learnt and activity can be reported.
 
'''How do I upload code to the Github repository?'''  


Contact Stephen Janering (email [mailto:stephen.janering@nhs.net stephen.janering@nhs.net]) for access and ways of working. See [[GitHub repositories]] for a description of each repository.  
Contact Stephen Janering (email [mailto:stephen.janering@nhs.net stephen.janering@nhs.net]) for access and ways of working. See [[GitHub repositories]] for a description of each repository.  

Latest revision as of 13:11, 2 July 2021

Getting started

How do I access the DDS?

Contact Stephen Janering (email stephen.janering@nhs.net) for access.

How do I upload code to the Github repository?

Contact Stephen Janering (email stephen.janering@nhs.net) for access and ways of working. See GitHub repositories for a description of each repository.

What data sets are currently published to the DDS?

See Current data sets for the data sets that are currently published to the DDS by different supplier systems.

What data is currently published to the DDS?

See Current published data for the latest data publisher information by sector, geographical area, service, and system provider.

What is the status of the publisher feeds?

See Publisher feed status for the latest published data status of the three main system suppliers.

How do I access and add DDS wiki articles?

See Wiki tips for more details.


Publishing data

What is the capacity of the DDS?

The Discovery Data Service has been designed from the ground up to work in the cloud with a modular architecture designed to scale. The current cloud provider has the capacity to go well beyond all patient records in the UK, the current system is operating at over 12.5 million distinct patient records. See Current published data for details on the data already published.

How are CDS extracts transformed?

See Barts Health CDS FHIR Mapping.

How is data publication to the DDS secured?

See Secure publication to the DDS.

How is data stored in the DDS?

See Data storage architecture for more details.

How is data encrypted in the DDS?

Data is transferred, via HSCN, into the DDS HSCN connected AWS instance by SFTP, HTTP, or MLLP. See Secure publication to the DDS for more details.

How is ADT data mapped in FHIR?

See Homerton ADT FHIR Mapping for more details.

Is there an overview of the inbound pipeline?

See Inbound Transformation Pipeline for more details.

How is data being published to the DDS monitored?

See Monitoring and alerting for more details.

Development projects

How do I access a development version of the DDS?

Applications should be made to the London Discovery Technical leads. Contact Stephen Janering (email stephen.janering@nhs.net) or Gary McAlister (email gary.mcallister@nhs.net) for access.

Is there an overview of the outbound data pipeline?

See Outbound Transformation Pipeline for more details.

How do I access and use the DDS FHIR Get Structured Record API?

See the FHIR Get Structured Record API page for more details.

How do I access and use the DDS HL7v2 API?

See the HL7v2 API page for more details.

How do I access Jira to view current development projects?

See the Jira page for more details.

What are the Standard Operating Procedures for developing for DDS?

See Discovery Software Development Standard Operating Procedures.doc for details that include:

  • Roles & responsibilities
  • Development & coding standards
    • Java
    • HTML5 & CSS
    • Javascript
  • Development framework, tools & technologies
  • Development environments
  • Processes & controls
  • Security & assurance

What code reviews will take place?

The code review for all contractor submissions to DDS will cover as a minimum:

  • Data sharing manager API has been used to control access to data
  • The config database has been used correctly to establish correct connections to the correct databases
  • The correct SQL connection classes and patterns have been used to ensure DB pool connections are created and released correctly
  • No SQL penetration vulnerabilities
  • SQL accuracy and efficiency
  • The information model has been used correctly to apply the correct value sets to the queries
  • REST API security and use of auth tokens
  • Code algorithm accuracy
  • Adequate exception handling
  • Code standards adherence
  • Code is adequately commented

In addition to the code review there will be a deployment review to check that the correct build and deployment scripts have been integrated into the project code.

What is the Software Development Project Lifecycle & Assurance Report?

A typical development project lifecycle is illustrated within the steps contained in the Project Assurance template.

How are the data feeds monitored?

A set of internal dashboards are used to monitor data flows in to and out of DDS. These dashboards have been built into an application called DDS-UI which provides many back-end DDS management utilities. For more information see the DDS-UI dashboards page.

Where are the GitHub Repositories and how do I access them?

See the GitHub Repositories page for a list of all repositories. Applications should be made to the London Discovery Technical leads. Contact Stephen Janering (email stephen.janering@nhs.net) or Gary McAlister (email gary.mcallister@nhs.net) for access.

The code within Discovery follows the GitFlow workflow for software development where master is the main branch, develop is created for developments and feature branches are created from development where appropriate.  Once features have been developed and are ready for including in the development system the feature branches are merged back to develop and then main accordingly.

A summary of GitFlow can be found here: https://datasift.github.io/gitflow/IntroducingGitFlow.html

Guides to using GitHub can be found here: https://guides.github.com/

How is data access linked to sharing and processing agreements?

Use Data Sharing Manager to determine which data is processed and shared according to projects linked to sharing and processing agreements. See Data Sharing Manager for more details.

How is access to the data in the DDS controlled?

Data is made available to particular systems or people using attribute based access control. See Identity Authentication Authorisation for more details.

Subscriber projects

Is there an overview of the outbound pipeline?

See Outbound Transformation Pipeline for more details.

Primary care

Testing and assurance