Funt ime Errors: Developing Together as a Virtual Team Jamieson - - PowerPoint PPT Presentation

funt ime errors developing together as a virtual team
SMART_READER_LITE
LIVE PREVIEW

Funt ime Errors: Developing Together as a Virtual Team Jamieson - - PowerPoint PPT Presentation

Funt ime Errors: Developing Together as a Virtual Team Jamieson Vaccaro, MA Patrick Racsa, MS June 20, 2018 Introduction Description of Project 6 Disease state studies (Lung Cancer, Breast Cancer, Multiple Sclerosis, Rheumatoid


slide-1
SLIDE 1

Funtime Errors: Developing Together as a Virtual Team

Jamieson Vaccaro, MA Patrick Racsa, MS

June 20, 2018

slide-2
SLIDE 2
  • Description of Project

– 6 Disease state studies (Lung Cancer, Breast Cancer, Multiple Sclerosis, Rheumatoid

Arthritis, Hepatitis C, and HIV)

– 3 Versions (Early View, Full Study, Subset Study) – 38 Metrics – 17 Tables (in Excel)

  • 9 Models

– Grand total of : 648 Metrics & 252 Tables

  • Time period: Over one year balanced against other studies
  • SAS Enterprise Guide 7.1

Introduction

slide-3
SLIDE 3

The Good - Efficiencies The Bad - Lessons Learned And The SAS Programmer - Attributes for success

Key Takeaways

Source: https://xkcd.com/1513/

slide-4
SLIDE 4

Balance between automatic & manual

The Good - Macros

Automatic

Pro

Rerunning is easier Reduce error Faster maintenance Less code

Con

Sometimes too easy to operate Nuances in disease state

Manual

Pro

Typically easier to follow Code is there to see Easier to code

Con

Prone to errors especially when doing iterative work Initial build is time consuming

slide-5
SLIDE 5

Macro variables

Aggregating key tables and variables in a “Control Panel” Variable names throughout scripting For model arguments Title output

Macro functions

Flexible - Summary statistics handle (StatsX) Simple - Model macros accept one argument Umbrella models with conditionals

The Good - Macros (cont’d)

slide-6
SLIDE 6

Build consistency in: EGP / Excel File naming conventions Variable SAS Tables Scripting framework Exceptions

The Good – Alignment

cost_ip_ps cost_ip_pst

1st description 2nd description timing

slide-7
SLIDE 7

Function – Short Description (permanent file name)

The Good – Alignment (cont’d)

Program Purpose

Data – Building variables, putting data together %Macro - Custom Macros Joiner – Creating an final analytical file Testing – Testing out code, QC, not an essential part – provides a space for messy, unstructured code Analysis – Running statistical tests, output it generated at the end

  • f these files

Output – Optional, if there is major rework of the output, it can be put here

  • -- Blank Place holders --- Indicate a shift in purpose within a

process flow

There is some flexibility here, sometimes it is best to combine 2 of these

slide-8
SLIDE 8

Joiner

Centralized merge script as control point prior to output

%StatsX Macro

Flexible macro to handle summary statistics for all levels of measurement Ease of uptake for other programmers Stacks all metrics into one table Streamlined efficient standardized output from SAS to Excel

The Good – SAS Scripting Framework

slide-9
SLIDE 9

Joiner

%macro statsx(datafile,grp,ivar,type,test,whereclause,sigdigs);

StatsX macro

slide-10
SLIDE 10

StatsX output

slide-11
SLIDE 11

Transitioning from loss of programmer Version control lacking

Non-central location sharing Keeping track of your own file(s) until final Unspoken or spoken agreement of file gatekeeper

The Bad - Lessons Learned

slide-12
SLIDE 12

All interaction virtual Communication

Medium: IM, screen share, phone, email Honesty Withholding pride

Time Management

Balancing against other workload Transience of focus Developing official documentation as guide up front with definitions

Laugh!!

And The SAS Programmer - Attributes

slide-13
SLIDE 13

The Good - Efficiencies The Bad - Lessons Learned And The SAS Programmer - Attributes for success Please reach out after our presentation and/or on LinkedIn!

Key Takeaways Revisited