Good Programming Practice in Macro Development

From PHUSE Wiki
Jump to: navigation, search

Project Overview

Macros provide an effective way to automate and reuse code in a standard and consistent manner across SAS programs. This ability to reuse code means that the use of GPP is particularly important in macro code and we think that there is a need to develop a consensus and document good programming prairies specifically for macro programming.

To create a Guideline / White Paper for creating well-structured and precisely documented macro code that will be easy to read and maintain over time. The proposed White Paper will primarily describe:

  • Coding Style of Macro
  • Best Practices while writing Macro
  • Structured documentation of Macro
  • Optimisation and saving compiling time while using Macro
  • Refactoring in Macro

Project Leads

Name Role Organization E-mail
Ninan Luke Project Co-Lead Pfizer
Wendy Dobson PHUSE Project Manager PHUSE

Project Members

Name Role Organization E-mail
Virginia Redner Participant Merck
Daryna Hololovich Participant Intego
Jesper Zeth Participant Novonordisk
Abdul Qadir Participant Cytel
Dennis Gianneschi Participant Clinical Data Processing
Eduan Cronje Participant Industry
Mark Foxwell Participant PRA
William Wei Participant Merck
Hanspeter Schnitzer Participant Estimondo
Salaja Sirsalewala Participant GCESolutions
John McDade Participant Phastar

Project Updates

Provide project updates in this section.
Date: Sub-team formation

Various sub-teams where formed to draft the different sections of White paper. Team constitution as below and will adjusted if we are getting additional support

1) Introduction section

Types of macros ( Departmental macro, utility macro, data check macros etc) How to define and gather user requirement before creating a macro? Lead  : - Dennis

Team Members :- Daryna,Ninan,

2) Architecture/design of a macro

Algorithm, how your structure your logic ? Testing/how to validate Lead :- Ginger

Team member :- Daryna, Ninan

3) Coding style of macro

Naming convention, parameters Lead : - Mark

Team members :- Ginger,Jesper

4) Coding time/compilation time/ platform dependencies of macros

Difficulties and complications like nested macros Lead :- Ninan

Team members :- Emmy,Mark

5) Documentation of macro

Structured documentation of macro and how to gather feedback on macros from user community If macro needed to share with regulatory agencies, How ? Ginger will take a lead for this section Lead :- Emmy

Team members :- Ginger, Jesper,

        • Emmy had drafted the initial draft and shared with subteam members.

6) Summary and conclusion

Team : ALL

Later once the draft is ready, this section will be created

Objectives and Timelines

List proposed project deliverables and timelines.

Objective Timeline
Recruit Team October 2018
Kick off and confirm scope November 2018
Research / Input / Develop Draft Paper December 18 - February 19
Finalise Draft Paper March 2019
Review Draft Paper April 2019
Publish and Promote Final White Paper May 2019

Project Activities

This section can document project activities or serve as a jumping off point to other pages in the project.

Meeting Minutes

Meeting minutes and proceedings are recorded in Phuse Team site

Archived Content