Presentation is loading. Please wait.

Presentation is loading. Please wait.

Building Block macro principle for Standard Program Library Design

Similar presentations


Presentation on theme: "Building Block macro principle for Standard Program Library Design"— Presentation transcript:

1 Building Block macro principle for Standard Program Library Design
CD12 - Implementing metadata standards at the protocol level 1 AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Building Block macro principle for Standard Program Library Design Phuse Brighton October 2011 Francis Dsa

2 Novo Nordisk at a glance
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Novo Nordisk at a glance •More than 30,000 employees in 74 countries •A world leader in diabetes care since 1923 •Also leading positions in: Haemostasis management Growth hormone therapy Hormone replacement therapy •Total net turnover (2010): billion USD •Committed to financial, environmental and social results

3 Standard Program Library
The standards and technology at NN 3 AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Protocol Standards CRF Standards CRF CRF CRF Submission Standard Date: / / Abc: x: y: Qwr: CDISC SDTM Data Domain: PE <XML> .… CDISC ADaM Data Domain: ADPE <XML> .… Standard DCM/DVGs CDW Numeric Findings Categoric Findings Subject Events (AE/Hypo/x) Interventions Visits Elements Std EOT XXCgfg hghj dklædfjkll sdfkf jklsd Xxxx Xxx Xxxx OC Table Responses Standard Program Library This is to give a big picture of the standards and systems we use at Novo Nordisk and how they are linked. We have built a Clinical Data Warehouse (CDW), which is a metadata driven warehouse. It enables us with a global statistical computing environment supporting standardised data structures and standard programs for analysis and reporting. In addition, the system offers applications to support the mapping and transfer of clinical data and metadata into this environment. On top of the CDW, a Standard Program Library is implemented with SAS components for the statisticians and statistical programmers to handle and analyse the clinical data, report and submit the results. However the main focus of this presentation would be standard reports and how we have built the Standard Program Library to produce End of Text material for Submission. Mapping rules Standard Mappings Standard Reports Standard Code Values

4 What is Building Block macro (BBM)?
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 What is Building Block macro (BBM)? Building block macro (BBM) is basically like a LEGO® brick independently developed following the standard implementation methodology and a module based approach making sure it fits in the bigger picture of developing a Standard Program library ensuring consistency, portability, reusability and easy maintenance. For analysis and reporting in the Clinical Data Warehouse system, SAS Building Block macro components are developed and validated to be used in Novo Nordisk trials across R&D centres, indications and therapeutic areas. The idea behind this framework is to design sub-components that can be reused in trial-specific programs and across SAS standard programs in order to minimize overall effort in programming, documenting, validating and maintaining the standard program library.

5 Building block macro principle or the “Lego®” brick principle.
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Building block macro principle or the “Lego®” brick principle. Requirement Specification Code Writing Program Documentation Code Review Test Case Writing Test Case Execution Validation Report Writing User Guide Writing User Acceptance Test Validation of input parameters Existence of input datasets Data Extraction Data Processing /Calculating Statistics Data Reporting Error handling Each Building Block macro component follows the same software development cycle: requirement specification, code writing, program documentation, code review, test case writing, test case execution, validation report writing, user acceptance test and user guide writing.

6 Categories of Building Block macro (BBM)
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Categories of Building Block macro (BBM) Initialization BBM: %access_v01.sas:Set up autocall libraries. Data Extraction BBM: %extract_find_v01.sas:Extraction of finding information. %extract_event_v01.sas:Extraction of event information. Data Processing BBM: %calculate_catgo_stats_v01.sas:Frequency Statistics. %calculate_num_stats_v01.sas: Calculation of statistics and percentiles.

7 Categories of Building Block macro (BBM)
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Categories of Building Block macro (BBM) Data Reporting BBM: %print_summary_v01.sas:Printing summary using PROC REPORT. %print_listing_v01.sas:Printing listing using PROC REPORT. %print_mean_plot_v01.sas:Printing mean plot using PROC GPLOT. Derived Variables and Enrichments (DVE) BBM: %mk_age_groups_v01.sas:Grouping subject by age. %mk_dve_partial_date_v02: handling of partial dates. %mk_dve_trt_emergent_v01:Setting treatment emergent flag. %mk_dve_hypo_count_v01:Count Hypoglycaemic Classification

8 Building Block Macro Principle
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Application of Building Block Macro Principle Approach 1

9 Developing SAR (Statistical Analysis and Reporting) programs
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Developing SAR (Statistical Analysis and Reporting) programs Requirement Specification Code Writing Program Documentation Code Review Test Case Writing Test Case Execution Validation Report Writing User Guide Writing User Acceptance Test Informal Testing by End User %access_v01 %extract_numfind_v01 %calculate_catgo_stats_v01 %calculate num stats_v01 %generate title_v01 %init start_v01 %print_summary_v01 %init end_v01 %extract_catgofind_v01 subject_characteristics_v01.sas In the above figure, I am building a SAR program subject_characteristics_v01.sas using the Building Block macro principle. I have used several BBM’s using the LEGO principle along with the same software development cycle at the outer layer too. Informal Testing by End User is done ensuring the output meets the Requirement Specification at the early stage.

10 Benefits: Challenges: Consistent Output across project. Reusability.
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Benefits: Consistent Output across project. Reusability. No Program Documentation needed. Time is saved from routine programming. Opportunity to develop standard utilities. Challenges: Lack of Control Custom changes not possible. Debugging is a challenge when an error occurs. Dependence on the Standard Program Developer team for changes. Quick changes are not feasible.

11 Building Block Macro Principle
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Application of Building Block Macro Principle Approach 2

12 Developing DVE (Derived Variables and Enrichments) programs
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Developing DVE (Derived Variables and Enrichments) programs Custom Framework for DVE %access_v01 %mk_dve_blinding_v01 %mk_dve_age_groups_v01 %mk_dve_date_time_conv_v01 Custom Program %mk_dve_ae_linker_v01 %mk_dve_trt_emergent_v01 %mk_dve_randomized_v01 In the above figure, I am building a DVE program framework using the Building Block macro principle. I have used several BBM’s using the same LEGO Brick principle. However the outer program is not validated as per the software development cycle with opportunity for Custom programming.

13 Benefits: Challenges: More control to the trial programmer.
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Benefits: More control to the trial programmer. Users can be creative. Less Dependency on Standard Program Developer team. Quick fixes are possible in the White Box area. Challenges: Complexity is high. Time Consuming. Experience is essential. More Documentation and Review work.

14 End User Survey: It was seen in the survey that
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 End User Survey: It was seen in the survey that Experienced users are happy with DVE , less with SAR. Main advantage in using standard components is seen as reusability and consistency Main disadvantage in using standard components is seen as lack of control and time consuming Only few SAR building blocks are used in custom SAR programming. Lack of Trust was seen while using the SAR components.

15 What we do to improve the way that we work with standards
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 What we do to improve the way that we work with standards Training, Training, Training and also Training! Improve toolbox of reference help and user guides. Increase Knowledge Sharing through active user forum. Feedback and survey from the end user. Listening to our end user. Job swap.

16 Challenges As a Standard Program Developer
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Challenges As a Standard Program Developer Development of standard programs is a difficult and time-consuming exercise. Versioning and maintaining of Standard Program and Building Block macro. There is more paper work involved in standards management, e.g. bugs reported in IT system management (Remedy) and change request raised for statistical standards. It can also be difficult to have the necessary resources as clinical projects often have the priority.

17 AD09 Building Block macro principle for Standard Program Library Design
12 October 2011 The future approach

18 signon server1 sascmd=…; signon server2 sascmd=..;
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 Future Approach subject_characteristics_v01.sas signon server1 sascmd=…; signon server2 sascmd=..; rsubmit server1 wait=no; rsubmit server2 wait=no; endrsubmit; endrsubmit; waitfor _all_ server1 server2; signoff server1; signoff server2; %access_v01 %extract_catgofind_v01 %calculate_catgo_stats_v01 %extract_numfind_v01 %calculate num stats_v01 %generate title_v01 %init start_v01 %print_summary_v01 %init end_v01 In the above figure, we are foreseeing how to build the future SAR Programs subject_characteristics_v01.sas using the Building Block macro principle.Here I am using several BBM’s parallel to make use of SAS parallel processing to best utilize the UNIX processor advantages. To use the Power of SAS parallel processing in order to best utilize the UNIX box with 32 processor.

19 For further questions, please write me at frd@novonordisk.com
AD09 Building Block macro principle for Standard Program Library Design 12 October 2011 THANK YOU For further questions, please write me at


Download ppt "Building Block macro principle for Standard Program Library Design"

Similar presentations


Ads by Google