Development Tools Discussion Group

The mission of the development tools group is to provide a state of the art suite of software development tools that assist software developers to write, test, maintain, and document code for inclusion in the codebase at a velocity and volume not previously attainable.  These tools are designed to ensure that code improvements are “Safe, Compliant, and Functional”, and include:

Code Repository

The Code and database structure will be placed into an internal master code repository built with the open source Git” distributed version control tool. Initially this Git repository will incorporate all code provided by VA in a directory structure, and provide history of modification to individual routines and globals, allowing developers to use open source tools to obtain copies of the code, and to inspect its history. OSEHRA will push copies of this repository to a variety of mirror sites, where the general public may download and inspect the source code with Git capable tools.  Our first two public mirrors will be on Gitorious and on Github, a “social coding” site that allows anyone to make, share, and discuss proposed changes with the community.

OSEHRA Tools

These tools will include Automated Regression Testing, Stress Testing, Architectural Verification, Interoperability Testing, Section 508 Validation, Standards and Conventions (SAC) compliance, Privacy and Systems Security, Functionality Mapping, Performance Testing, and Customer Satisfaction Measurement.

Instructions for Installing and Testing the OSEHRA Code Base

Virtual Machines

Web Based Code Review

OSEHR - Software Quality Certification Dashboard

Eventually, OSEHRA's toolset will include CTest and CDash to provide automated checking of proposed changes, and “Gerrit” to provide web-based code review. This will facilitate distributed review of proposed changes by domain experts, coupled with some automated testing using CDash to aggregate test results. Branches of development will be able to be supported at sites using distributed development processes, and later merged if appropriate.

OSEHRA Development Tools Group End State Objectives

These development tools will be augmented to simplify the cloning of the codebase, and inspection of history. The critical aspect of this work will be  augmenting the KIDS subsystem to allow two-way conversion of procedures and globals from the M[UMPS] representation to a canonical on disk format and back again. This will allow for development to continue much as it has for many years and provide an easy path into and out of version control for developers. Once this functionality is present then changes can be uploaded for review, tested in pristine VistA installations and integrated once ready.

FOIA VistA Patches by Package

like0

Question for Scripts when running Vista through Vagrant

I'm running a vagrant instance of VistA and was trying to install VPE inside the Vagrant VM running VistA and Mumps. However, all the scripts on on my local macintosh. How can I access those scripts since so many of them are necessary for the VPE patch. I know there is a function for shared folders on vagrant so do I use that? If so how? Or do I need to reinstall all the scripts on the virtual machine?

Fwd: [visualization] VIVIAN Recent Updates

---------- Forwarded message ----------
From: jason.li
Date: Fri, Jul 25, 2014 at 2:54 PM
Subject: [visualization] VIVIAN Recent Updates
To: Visualization Open Source Project Group

For those who do not attend the Visualization Open Source Project Group
meeting regularly, the following is the summary of the latest updates:

OSEHRA Certification Tutorials Blog II

Stewardship of the code entrusted to its care is an important part of the mission of OSEHRA. This stewardship requires that OSEHRA take care that the code it accepts and certifies meets community standards for understandability, usability and correctness. Achieving this is not easy and the processes and procedures used can be difficult to apply.

Question for Scripts when running Vista through Vagrant

I'm running a vagrant instance of VistA and was trying to install VPE inside the Vagrant VM running VistA and Mumps. However, all the scripts on on my local macintosh. How can I access those scripts since so many of them are necessary for the VPE patch. I know there is a function for shared folders on vagrant so do I use that? If so how? Or do I need to reinstall all the scripts on the virtual machine?

Fwd: [visualization] VIVIAN Recent Updates

---------- Forwarded message ----------
From: jason.li
Date: Fri, Jul 25, 2014 at 2:54 PM
Subject: [visualization] VIVIAN Recent Updates
To: Visualization Open Source Project Group

For those who do not attend the Visualization Open Source Project Group
meeting regularly, the following is the summary of the latest updates:

OSEHRA Certification Tutorials Blog II

Stewardship of the code entrusted to its care is an important part of the mission of OSEHRA. This stewardship requires that OSEHRA take care that the code it accepts and certifies meets community standards for understandability, usability and correctness. Achieving this is not easy and the processes and procedures used can be difficult to apply.

No questions have been added to this group.

New York State Health Data Code-a-Thon - Dec 2013 - Overview

Luis Ibanez's picture

Document (PDF) with overview of the context, goals and resources for the New York State Health Data Code-a-Thon that will take place on December 19-20, at the Rensselaer Polytechnic Institute in Troy, NY.

These are the presentation notes from a public Webinar hosted by the NY State Department of Health on Friday December 13, 2013.

NY State Code a Thon

More details at

GUIs Used in Automatic Functional Testing

The attached .zip file contains the binaries/installers required for the OSEHRA Functional testing.  The setup scripts that accompany the testing register a specific version of both Vitals and CPRS inside the VistA instance.  

The registered versions are CPRS 30_28 and Vitals 5_P26. Both are accompanied by the necessary DLLs to run correctly.  

Development Tools - Getting Started with Git - Part III

 

This document is the continuation of an introduction to the Distributed Version Control System Git.

The previous sessions of this tutorial is available here:

 

 

CWG Testing Tutorial Series

Certification Work Group Tutorials

Since early November, the Certification Working Group (CWG) has been running a series of tutorials during its bi-weekly meetings.  These tutorials have touched upon the creation of tests for the OSEHRA Testing harness and the tools that are currently used.  Each approximately hour long meeting has been recorded and linked below.  In time, these files will be edited down to a more concise video, which will be posted here when completed. 

GT.M UTF-8 Solutions

Over the course of debugging the premature end of the routine import on a GTM environment with  UTF-8 enabled, we discovered that the OSEHRA code base contains characters that UTF-8 cannot properly encode.  When exporting the routines from the Cache database, it is encoded in Latin1, which causes the UTF-8 read to fail.

To create a code base that can be impored into the UTF-8 instance, there are two options:

virtual-machine-with-testing-osehra-code-base-pre-configured-2

An updated Virtual Machine has been configured following the instructions in:

* Instructions-establishing-and-testing-osehra-code-base-main-page

The main features of this virtual machine are:

- Virtual Box

- Ubuntu 11

- GT.M

- Git

- CMake

- VistA-FOIA release from December 6th 2011

- OSEHRA-Testing

- Pre-configured to submit builds to the Dashboard

 

EWD: a web app framework for GT.M and Cache

I've just submitted a techincal report on EWD which some of you may find interesting.

In summary:

EWD is a web application development framework that has been specifically designed for use with GT.M and Caché.  It can be used to not only develop new web applications, but also web-enable existing legacy applications.  As such it is an ideal framework for modernizing VistA.

EWD has been specifically designed to:

Using CPRS with VistA

A new installation of FOIA VistA with the CPRS GUI is enough to get started learning VistA, but not to actually use the system to record patient medical data. There are a number of additional components required, as well as significant configuration procedures, in order to achieve an application that is clinically useful. Specifically, the following data items are not available in a freshly installed FOIA VistA instance:

  • test patients
  • care provider profiles
  • pharmacy formulary (Drug File)
  • locations (facilities and clinics)

CPRS-connection-to-the-VM


This Wiki page describes how to connect CPRS to the Virtual Machine.

 

[Update: Please note that a newer version of the Virtual Machine is here:]

http://osehra.org/wiki/virtual-machine-testing-osehra-code-base-pre-configured-2

This newer version contains the FOIA version of December 6th.

 

For the instructions in this page,

please use the Virtual Machine that is described here

M-Tools-For-Code-Reformatting

MUMPS level of flexibility allows developers to write very compact expressions, that can sometimes be difficult to read for others. It is therefore convenient to have at hand a code re-formatting tool capable of re-writting M expressions in a more verbose and human-readable format.

Joel Ivey has developed and kindly shared this kind of tools at.

https://github.com/OSEHRA-Sandbox/M-Tools

The XTMREDO.m routine in the CodeFormatter directory is the central piece of the tool.