Bhavin and Mikkel PoC for Study Design and Configuration using CDISC 360 Conceptbased Standards Mikkel and Nicolas Automation of SDTM amp ADaM Generation and Artifacts using CDISC 360 Enriched Metadata ID: 932030
Download Presentation The PPT/PDF document "Introduction, Future State, Process and ..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Introduction, Future State, Process and Architecture of the PoC –
Bhavin and Mikkel
PoC for Study Design and Configuration using CDISC 360 Concept-based Standards –
Mikkel and Nicolas
Automation of SDTM & ADaM Generation and Artifacts using CDISC 360 Enriched Metadata – Bhavin and JimmyAutomation of TFL Generation using CDISC 360 Enriched Metadata – Bhavin, Prasanna & StuartConcluding Remarks and Next Steps – Bhavin and MikkelQ & A session
10 mins
20 mins
20 mins
20 mins
5 mins
15 mins
Speaker: Bhavin
Slide2Automation of SDTM & ADaM Generation and Artifacts using CDISC 360 Enriched MetadataBhavin Busa (Vita Data Sciences), Jianhui [Jimmy] Zhao (AbbVie)CDISC 2020 US InterchangeOctober 07, 2020
Slide3AgendaProcess Flow for CDISC 360 Proof of ConceptMachine-readable Mapping SpecificationsSDTM/ADaM Automation Engine – PoC DesignSDTM/ADaM Automation Engine – Live DemoLearnings from CDISC 360 PoCSpeaker: Bhavin
Slide4Speaker: Bhavin
Slide5Study Specifications from WS410/6/20205
Formats:
XMLCSVSASSpeaker: Bhavin
Slide6Machine-readable Mapping SpecificationsSpeaker: Bhavin
Slide7Essential Elements for Machine-readable Mapping Specifications We break down the essential elements in 2 dimensions to meet the 4 key aspects of the machine readabilityDimension 1Source: location (library name), datasets, processing sequenceMapping: fields needed to describe how source transits to target
Target: location (library name), datasets, processing sequence, attributes (label, class, structure, purpose, etc.)Dimension 2Dataset Level: Transit datasets from source to targetVariable Level: Map variables from source to target
Value Level: Map variables from source to target under different conditions7Speaker: Jimmy
Slide8Mapping Specifications: Dimension 18Source
Mapping
TargetSpeaker: Jimmy
Slide9Mapping Specifications: Dimension 2
9
SourceMappingTargetDataset LevelVariable Level
Value Level
Speaker: Jimmy
Slide10Mapping Specifications: Dataset Level10
data VS1; set CDASH.VS;
/******** variable level: Source Sequence = 1 ********/run;proc sort data=VS1; by SUBJID;proc sort data
=CDAHS.DM OUT=DM2; by USUBJID;
data VS2; merge DM2(in=a) VS1(in=b); by
USUBJID; if b; /********
variable level: Source Sequence = 2 ********/run;
❶
❷
❶
❷
Speaker: Jimmy
❸
❹
❺
... Sequence 3, 4, 5, 6
❻
proc
sort
data
=VS6;
by
USUBJID VSTESTCD VISITNUM VSDTC;
run
;
data
SDTM.VS;
set
VS6;
by
USUBJID VSTESTCD VISITNUM VSDTC;
/********
variable level: Source Sequence = 5
********/
run
;
❼
❺
❸
❹
❻
❼
Slide11Mapping Specifications: Variable Level11
data VS1; set
CDASH.VS; **** Variable level processing ; DOMAIN = 'VS'; USUBJID = catx('.', STUDYID, SUBJID); VISITNUM = input(put(VISIT, $VISITNUM.), BEST.); [origin = Predecessor, do nothing]; if
not missing(VISDAT)
then VSDTC = put(VISDAT, E8601DA.); else if
not missing(VSDAT) then VSDTC = put
(VSDAT, E8601DA.); if
VISIT = "VISIT 2 (WEEK 0)" then VSBLFL = 'Y'
;run;
❶❶
❷
❸
❹
❺
❻
❷
❹
❸
❻
❺
❷
❺
❻
❷
❺
❻
Speaker: Jimmy
Slide12Mapping Specifications: Value Level12
data VS3; set CDASH.VS;
if DIABP_VSPREF = 'Y' then do; VSTESTCD = 'DIABP'; VSORRES = DIABP_VSORRES; VSORRESU = DIABP_VSORRESU; VSSTRESN = 'mmHg'; VSSTRESN = INPUT(VSORRES, BEST.); VSSTRESC = PUT(VSSTRESN, 4.0);
VSPOS = DIABP_VSPOS; OUTPUT
; end; *** CONTINUTE ***;
if HEIGHT_VSPREF = 'Y' then
do; VSTESTCD = 'HEIGHT'; VSORRES = HEIGHT_VSORRES;
VSORRESU = HEIGHT_VSORRESU; VSSTRESN = 'm'; VSSTRESN = INPUT(VSORRES, BEST.
); VSSTRESC = PUT(VSSTRESN, 4.0); OUTPUT;
end;run;
❶
❷
❶
❷
Speaker: Jimmy
Slide13SDTM/ADaM Automation Engine – Proof of Concept DesignSpeaker: Bhavin
Slide1414CDISC 360 – SDTM/ADaM Automation Engine PoC Design
Study Level CDASH or SDTM
CDISC 360 Enriched Mapping SpecificationsR Shiny (front-end) & SASImport MetadataReview DataRun SDTM/ADaM Automation Engine
Edit Metadata
Generate SAS Program
Review & Execute SAS Program
Generate Define.xml
Generate Target Dataset
Speaker: Bhavin
Slide15R-Shiny Front-end Interface: Automate Execution15
Speaker: Bhavin
Slide16R-Shiny Front-end Interface: Automate Execution16
Speaker: Bhavin
Slide17R-Shiny Front-end Interface: Automate Execution17
Speaker: Bhavin
Slide18SDTM/ADaM Automation Engine – Live Demo!Speaker: Jimmy
Slide19Learnings from CDISC 360 PoCMachine-readable MetadataSpeaker: Bhavin
Slide20Machine-readable MetadataCDISC 360 Enriched Metadata = Structural + Conceptual + Semantic + Process [Key to Automation]Content is part of the standards (CDISC library)ETL Metadata (mapping inference & derivation)System agnostic standards, concepts and elements
Can be consumed by any toolOrganization can build an automation engine their own way
20Biomedical Concepts
Foundational Standards
Speaker: Bhavin
Slide21Thank You!Bhavin Busa, Vita Data SciencesJianhui [Jimmy] Zhao, AbbVie
Courtesy: Mahi Busa