Issuu on Google+

Medidata Rave速 Custom Functions Webinar Implementing the Rave Custom Functions Best Suited to your Clinical Study Requirements Tuesday, October 11th 2011

Clinovo 1208 E. Arques Avenue, Suite 114 Sunnyvale, CA 94085 contact@clinovo.com +1 800 987 6007 www.clinovo.com


Today’s Speakers

Marc Desgrousilliers – Chief Technology Officer Experience: 20+ years experience in software and engineering

Venkat Sungishala - Sr. Manager of EDC Experience: 5+ years experience of extensive clinical programming & study build using Medidata Rave® Specialties: Medidata certified “Rave 5.6.3/5.6.4 Study Builder”

Rave Custom Functions October 11h 2011 Proprietary and confidential

2


Today’s Agenda 

Study Build in Rave®

Edit Checks and Derivations

Benefits of Custom Functions

Best Practices around the use of Custom Functions

Q&A

Rave Custom Functions October 11h 2011 Proprietary and confidential

3


Study Build in Rave速 - Streamlining your Clinical Trial Process -

Rave Custom Functions October 11h 2011 Proprietary and confidential

4


Study Configuration in Rave®  Study in Rave® is a collection of eCRFs, folders/visits, matrices and approved user role permissions which satisfies the study protocol  Configuration is simple and can be done with good training  As you configure the study, you are building standard based global libraries. These will enable you to reduce the overall development time and validation cost  Carry out the clinical trial in a structured and timely manner Rave Custom Functions October 11h 2011 Proprietary and confidential

5


What is configurable in Rave®?  UI and solid workflow configuration

 eCRF/folder/matrix design  Controlled access to eCRFs/data entry  Edit checks to run the business logic

 Derivations to calculate values  Custom functions to handle dynamic requirements  Global library set-up to reuse standard architect elements Example: eCRFs, fields, variables or matrices…  Reports configuration adapted to your needs

Example : audit trial report, query detail report and monitor visit report… Rave Custom Functions October 11h 2011 Proprietary and confidential

6


Edit Checks and Derivations - Improved Data Cleaning, Faster Clinical Trial -

Rave Custom Functions October 11h 2011 Proprietary and confidential

7


Edit Checks and Derivations What are Edit checks?  Logic rule applied to a field in a eCRF  Catching errors earlier in the clinical trial process & improve your data accuracy Example : If the VISITDT is empty then fire a Query with message: The visit date should not be blank

What are Derivations?  Calculation that derives a value based on the business logic  Less data entry & automatic calculation Example : If BIRTHDT and SCRNDT are NotEmpty then Derive AGE field

Rave Custom Functions October 11h 2011 Proprietary and confidential

8


Limitations of Edit Checks and Derivations Edit Checks

Derivations

Do not support:

Do not support:

Dynamic folders

Complex mathematical algorithms

Form inactivation

Data in different forms/folders

Dynamic subject calendar

Email with specific fields data

Specific derivations on variables shared across multiple forms

Dynamic queries

Etc.

Auto number generation

Chronological order of dates edit checks

Dynamic search list

Etc.

Rave Custom Functions October 11h 2011 Proprietary and confidential

9


Limitations of Editchecks and Derivations Example: Requirement:

Derive ‘DaysDiff’ field in derivation form with difference between SCRNDT in screening form and VISITDT in corresponding Day 1, Day 8 and Day 15 folders

Given:

Cycle is repeated in folder: Cycle 1, Cycle 2, …, Cycle n Day 1, Day 8 and Day 15 are the folders & exist in all cycles Derivation is a form & exists in Day 1, Day 8 and Day 15 folders

Enter:

Rave Custom Functions October 11h 2011 Proprietary and confidential

SCRNDT = 01 JAN 2011 Cycle 1>Day 1>VISITDT = 05 JAN 2011 then DaysDiff is derived with 4 Cycle 2>Day 1>VISITDT = 21 JAN 2011 then DaysDiff will be derived with 20 in Cycle 2>Day 1 and also affect the value in Cycle 1>Day 1 folders

10


Custom Functions - Solutions adapted to your Complex Study Protocol Requirements -

Rave Custom Functions October 11h 2011 Proprietary and confidential

11


Basic Concepts of Custom Functions 

What is a custom function in Rave®?  

Custom Function defines the business logic implemented on an eCRF It can be a C#, Visual Basic or SQL piece of code developed outside of Rave® and injected into the system to perform an intended action

What experience is needed to develop custom functions? 

Study build experience with Rave®

Good knowledge in object oriented programming concepts

Good knowledge of C# and SQL programming

Rave Custom Functions October 11h 2011 Proprietary and confidential

12


Benefits of Custom Functions  Configuration of dynamic protocol requirements: 

  

Dynamic query messages and search lists Configurable AE/SAE emails Role/user based emails Adding/inactivating of forms/folders/matrices Copying data

Adding required number of records

Visible/invisible fields

Data comparisons/validations

Standard CFs can be reused for future study builds Etc.

Faster Study Build

Improved Data Accuracy Flexibility allowing more Customization

Rave Custom Functions October 11h 2011 Proprietary and confidential

13


Categories of Custom Functions Custom Functions (CFs)can be categorized into:

 Simple CFs

 Moderate CFs

 Complex CFs

Rave Custom Functions October 11h 2011 Proprietary and confidential

14


Categories of Custom Functions  Simple custom functions 

Very simple business logic

Applied on a single form

Example: Add a form in the same folder

A few more examples: Populate or derive data into a field in the same form Verify the fields data is in a pre-defined format Display query message or place a sticky within a single form Visible/invisible fields in the same form Adding log records into a form Etc.   

  

Rave Custom Functions October 11h 2011 Proprietary and confidential

15


Categories of Custom Functions  Moderate Custom Functions 

Comparison of multiple forms

Example: Display query message or place a sticky based on data from multiple forms

A few more examples: Adding log records and populating data into a form Adding a form in the different folder Adding folder and adding matrices dynamically Populate or derive data based on the data in multiple forms Data comparisons and checking for the chronological order Etc.      

Rave Custom Functions October 11h 2011 Proprietary and confidential

16


Categories of Custom Functions  Complex Custom Functions  Comparison of multiple forms  Requires SQL script

Example: Generating sequential patient or randomization numbers

A few more examples: Subject calendar for the visits SAE emails based on roles Checking for uniqueness of the entered data Dynamic search list Multiple matrices Nested folders Etc.       

Rave Custom Functions October 11h 2011 Proprietary and confidential

17


Best Practices - Around the use of Custom Functions -

Rave Custom Functions October 11h 2011 Proprietary and confidential

18


Best Practices  Use header below to identify and trouble shoot a CF:

 Check for NULL objects  Check Active status of all objects  Avoid using try-catches because Rave does it for you

Rave Custom Functions October 11h 2011 Proprietary and confidential

19


Best Practices  Keep the code simple and readable… but if you want to improve system performance: 

Use OIDs rather than names

Avoid using foreach

Avoid writing nested for loops

 Loop handling: 

Avoid sending emails in a loop

Remember to breakout the loop when search is completed

 Email Handling: 

Check the environments before sending an email

Avoid using same email ID for different environments

 Stored Procedure Handling: 

Use SQL stored procedures instead of dynamic SQL

Avoid stored procedures for updates or deletions

Rave Custom Functions October 11h 2011 Proprietary and confidential

20


Q&A

Rave Custom Functions October 11h 2011 Proprietary and confidential

21


Contact Us Marc Desgrousilliers

Venkat Sungishala

Chief Technology Officer

Sr. Manager of EDC

marc.desgrousilliers@clinovo.com

venkat.sungishala@clinovo.com

Upcoming webinars Implementing adaptive clinical trials CDISC Express Demo

October 18th, 9 AM PST October 26th, 9 AM PST

www.clinovo.com

Follow us on twitter @clinovo Rave Custom Functions October 11h 2011 Proprietary and confidential

22


Thank You for your Attention ! Visit our website for upcoming webinars: www.clinovo.com

Rave Custom Functions October 11h 2011 Proprietary and confidential

23


Medidata Rave® Custom Functions