Difference between revisions of "User Guide for Standard Script Repository"

From PHUSE Wiki
Jump to: navigation, search
m (Introduction)
 
(24 intermediate revisions by 7 users not shown)
Line 3: Line 3:
 
=Introduction=
 
=Introduction=
  
This repository is for storing standard scripts identified, developed and shared by volunteers who are interested in data transformations and analyses across and/or within a therapeutic area and exploratory analysis. The goal will be to begin the process of standardizing analyses across the industry, but also include examples of what can be done with a standardized data set. This will be a collaborative environment by using Google Code and online wiki to create and add scripts and documents that can be shared openly between industry entities and regulatory agencies.
+
Welcome to the CSS/PhUSE Standard Analyses. Our [https://github.com/phuse-org/phuse-scripts/|github repository] hosts standard scripts for data transformations and analyses across and within a therapeutic area, as well as for exploratory analyses. Our goal is to standardize analyses and code across the industry, and to provide other examples of how our industry can build upon standardized data set. We aim to establish this repository as the place to collaborate and share between industry and regulators.
  
 
=How to get involved=
 
=How to get involved=
; Repository Maintainer: Hanming Tu (hanming.h.tu@accenture.com), one more (?)
+
; Repository Maintainer: Hanming Tu and Kevin Kane : contact on code@phuse.com
; Current members: http://code.google.com/p/phuse-scripts/people/list
+
; Current members: https://github.com/orgs/phuse-org/people
  
 
;Steps to join:  
 
;Steps to join:  
  
# Join PhUSE as a member and receive regular email updates and participate in a variety of events
+
# Join the Free PhUSE mailing list to receive updates http://goo.gl/R8q8V
 
# Sign up for the PhUSE working group mailings
 
# Sign up for the PhUSE working group mailings
 
## Go to www.listbox.com
 
## Go to www.listbox.com
## Join this group: “CSS WG5: Developing Standard Scripts”
+
## Join this group: "CSS WG5: Developing Standard Scripts" (CSS-WG-Standard-Scripts@listbox.com)
# Sign up to be a contributor in the script repository
+
# Sign up to be a contributor or committer in the script repository (GitHub account required)
## Send an email to one of the repository maintainers requesting to join the Google Code PhUSE/FDA script repository
+
## Send an email to one of the repository maintainers to request to join the PhUSE repository
## Go to repository at https://code.google.com/p/phuse-scripts/ and start interacting
+
## Go to repository at https://github.com/phuse-org/phuse-scripts/ and start interacting
  
=What role you want to play?=
+
=Adding a script=
  
In Google code, there are two roles that a person can play:
+
There are two methods to add a script:  
;Committer:  may work in the project, but may not reconfigure it. Anyone who is willing to contribute his or her time to share or develop a script and/or commit to work on others’ scripts should become a committer. In FDA/PhUSE project, a committer shall take some duties in the repository or  take ownership for at least one script or guide and recruit developers to develop the script and document milestones of the script advancements.
 
 
 
[[File:phuse_google_code_committer_permissions.JPG]]
 
 
 
 
 
 
 
;Contributor:  start with the same permissions as non-members, but their role in the project is visible. A contributor shall take at least one duty in the repository and may participate at development of a script. 
 
 
 
[[File:phuse_google_code_contributor_permissions.JPG]]
 
 
 
<p>
 
Usually, only Committers may add new scripts.  If you are a contributor, you can request to have edit privileges by emailing to one of the repository maintainers.
 
 
 
=How to add a new script=
 
 
 
You have two methods to add a script:  
 
 
# using browser or  
 
# using browser or  
# using subversion client tool such as TortoiseSVN.
+
# using a git client such as [https://help.github.com/articles/set-up-git/ the GitHubs client].
In the repository, go to the sources tab and navigate to the appropriate directory.  The directories are organised by scripting language (e.g. R/SAS) and then into analytical or functional areas.  Inside each functional area (e.g. the DM directory for demographic scripts), there are 6 directories:
 
* baks: backup and old versions
 
* data: example or test data files
 
* docs: documentation
 
* result: any outputs files
 
* src: source code
 
* valid: validation files
 
 
 
For more information about the folder structure, please review this file: http://code.google.com/p/phuse-scripts/source/browse/trunk/folder_structure_proposed.txt.
 
 
 
Users are encouraged to add documentation when adding a script.  There are template documents for User Guides and Specifications documents here (link to be added), and it is strongly encouraged to utilize these documents for new scripts and to follow the recommended name conventions.
 
 
 
Committers will add scripts or packages of scripts as “Downloads” as appropriate.  “Downloads” are easily accessible packages of code that can be downloaded by anyone.
 
 
 
==Add script through browser==
 
 
 
Here are the steps for adding a script through a browser:
 
# go to the FDA/Script repository:  http://code.google.com/p/phuse-scripts/
 
# Click Source Browsetrunk and expand to the folder that you’d like to add a script
 
# Click “Create” or “Upload” to upload a ready prepared script.
 
# If you choose “Create”, a simple window with line numbered text editor is opened
 
# Provide and append a file name in the path field
 
# Provide description in the commit log field
 
# Click the “Commit” button.
 
 
 
<b>Caution</b>: if you have not done step 7, your change will not be saved!
 
 
 
[[File:phuse_google_code_scource_page.JPG]]
 
 
 
==Add script through TortoiseSVN==
 
Here are the steps:
 
# Install TortoiseSVN by following the links listed in http://code.google.com/p/phuse-scripts/wiki/ReadMeFirst or the steps in this file http://www.prosvn.org/download/TortoiseSVN%20-%20Installation%20EN.pdf
 
# Once you have installed the subversion client, you can check out the whole repository by following the instruction at http://code.google.com/p/phuse-scripts/source/checkout
 
# Once you have the repository at your local drive, you can navigate to the folder in the local repository and just copy your script to the folder
 
# Then right-click on the folder, then click the “SVN Commit”
 
 
 
[[File:phuse_tortoiseSVN_commit.JPG]]
 
 
 
=How to edit a script=
 
 
 
Only contributors or committers with added edit privileges can edit scripts. 
 
 
 
The FDA/PhUSE script repository uses a Subversion repository to manage version control.  Further information can be found here: http://subversion.apache.org.  It is recommended that you use a package to manage Subversion with your operating system.  A list can be found by clicking here.  For Windows users, there is some experience in the group with the Tortoise SVN package that can be downloaded here (be careful not to click on the download buttons that appear in adverts on the page).
 
 
 
Scripts can be edited directly from the Google code webpage, or via a Subversion package installed on your local computer.
 
Committers can raise an issue with a script to highlight the need for an edit by following the instructions below.
 
 
 
==How to flag an issue with a script==
 
Go to the “Issues” tab of the Google Code repository and click the new issue button, completing the details on the displayed form.
 
 
 
==How to resolve conflict of concurrent editing==
 
more to come...
 
  
 +
Repository structure is a work-in-progress, with [https://github.com/phuse-org/phuse-scripts/blob/master/folder_structure_proposed.txt the proposed structure published in the repository].
  
 +
Users should add documentation when adding a script.  We have templates for:
 +
* User documentation (locate in github)
 +
* [https://github.com/phuse-org/phuse-scripts/blob/master/MetaData_template.yml Script specifications in YML]
 +
We have naming conventions:
 +
* [https://github.com/phuse-org/phuse-scripts/blob/master/naming_conventions_proposed.txt Naming conventions]
  
 +
Please use these documents for new scripts, and adhere to naming conventions.
  
 
----
 
----
Line 100: Line 39:
  
 
[[Category:WG5]]
 
[[Category:WG5]]
[[Category:Standard Script]]
+
[[Category:Standard Scripts]]
 
[[Category:Guideline]]
 
[[Category:Guideline]]
 
[[Category:Repository]]
 
[[Category:Repository]]
[[Category:How To]]
+
[[Category:HowTo]]

Latest revision as of 08:44, 7 January 2016


Introduction

Welcome to the CSS/PhUSE Standard Analyses. Our repository hosts standard scripts for data transformations and analyses across and within a therapeutic area, as well as for exploratory analyses. Our goal is to standardize analyses and code across the industry, and to provide other examples of how our industry can build upon standardized data set. We aim to establish this repository as the place to collaborate and share between industry and regulators.

How to get involved

Repository Maintainer
Hanming Tu and Kevin Kane : contact on code@phuse.com
Current members
https://github.com/orgs/phuse-org/people
Steps to join
  1. Join the Free PhUSE mailing list to receive updates http://goo.gl/R8q8V
  2. Sign up for the PhUSE working group mailings
    1. Go to www.listbox.com
    2. Join this group: "CSS WG5: Developing Standard Scripts" (CSS-WG-Standard-Scripts@listbox.com)
  3. Sign up to be a contributor or committer in the script repository (GitHub account required)
    1. Send an email to one of the repository maintainers to request to join the PhUSE repository
    2. Go to repository at https://github.com/phuse-org/phuse-scripts/ and start interacting

Adding a script

There are two methods to add a script:

  1. using browser or
  2. using a git client such as the GitHubs client.

Repository structure is a work-in-progress, with the proposed structure published in the repository.

Users should add documentation when adding a script. We have templates for:

We have naming conventions:

Please use these documents for new scripts, and adhere to naming conventions.


Last revised by DanteDT,01/7/2016