Open Development

Preview:

DESCRIPTION

The January call will focus on introducing the concepts of open development, software lifecycle and upcoming open projects. We have a number of projects on the roadmap and would like to give the community an opportunity to help prioritize the list. We'll discuss the upcoming GT.M Integration project to more tightly couple OpenVista and GT.M. You can read the proposals and discuss this project at Medsphere.org, see the project homepage here: http://medsphere.org/community/roadmap/gtm Please feel free to invite any colleagues that might find this topic relevant or interesting. When: January 15, 12:30 - 2pm Pacific Where: Dial-in: (888) 346-3950 // Participant Code: 1302465 Web conference: http://www.medsphere.com/infinite/ What: Open Development - Ecosystems at work - Open Development Introduction - Community Project Overview - GT.M Project Introduction - Project Review - Medsphere.org: Tip of the Month === The community calls are listed on the Medsphere.org event calendar (http://medsphere.org/community-events/) and we will update each month's call as the agenda is solidified. Details and Recording available here: http://medsphere.org/blogs/events/2009/01/15/community-call-january-2009

Citation preview

Webinar: http://www.medsphere.com/infinite/Voice: (888) 346-3950Participant code: 1302465

Open Development

January 2009 Community Call

Presenters

• Rick Jung

• Jon Tai

• Ben Mehling

Agenda

• Ecosystems at Work

• Introduction to Open Development

• GT.M Integration Project

• Medsphere.org: Tip of the Month

Ecosystems at Work

Rick Jung

Introduction

Medsphere has fostered the creation of what is

rapidly becoming the largest collaborative, open

source ecosystem in healthcare IT.

With the seeds of disruptive innovation now planted around

the world, what will happen to vendor lock, proprietary

systems, upgrade and maintenance fees, and users groups

as we know them?

7

What is an Ecosystem?

Collaboration on a community governed roadmap that drives innovation,

advancement and knowledge of clinical best practices into IT solutions for all

Medsphere Vision

How is

Medsphere

cultivating the

largest

collaborative

ecosystem in

healthcare?

• Activities� Freedom from vendor lock

� Focus on knowledge and services

� Competitive advantage for the community

� Encourages contributions from Ecosystem members

� Fosters governance of the collaborative contribution process

� Promotes a mechanism to review & reuse contributions

� Assures quality control of mainline - trusted for use in live healthcare environment

� Provides � Multifaceted value proposition to ecosystem members

� Open access for subscribers & community to create and contribute

Why an Ecosystem?

What is Medsphere.org for?

• A virtual town square – a location where members can stand on boxes and shout, swap ideas, debate approaches, and evaluate contributions.

• A place to get answers from us, customers, and others for support, programming, training, and implementation questions

• Share best practices…….eliminate silos of information and frustration

• And soon………monitor clinical quality outcomes against published data from clients like Midland and others!

How does it work?

• Participants collaborate, discuss and contribute to the

whole leading to transformation in Healthcare

• Contributions- Blog post on the value of BCMA

http://medsphere.org/people/RADAMS/blog

- 25 templates contributed by WVDHHR

http://medsphere.org/search.jspa?q=%22Template%3A%22&resultT

ypes=DOCUMENT&dateRange=all&communityID=&username=Hartse

l

- A community member suggested a group focused on Behavioral

Health

http://medsphere.org/groups/behavioral-health

- We have started a new "DIY with Opensource" Blog, and Brotman

contributed this article

http://medsphere.org/blogs/diy/2008/12/15/real-time-proactive-

infection-control-alerts

- How to determine the function of an option in Putty? FAQ added

by Hartsel (and enhanced by Carolyn Kron and Alli Lees)

http://medsphere.org/docs/DOC-1358

- A bug with one of our open releases was reported by George

http://medsphere.org/thread/1044?tstart=0

- A question was asked about searching for orders (it was answered

by Cesar and Hartsel)

http://medsphere.org/thread/1150?tstart=0

- Carolyn ferried in a question on client deployment techniques.

David Kerrins provided CCDH's solution. Fernando, a member

from Brazil, provided another example of a solution. Albert

added info on the open source package we recommend.

http://medsphere.org/thread/1051?tstart=0

- This document was created by me, however it was

edited/enhanced by a community member -- additionally, via

feedback from Hardhats, I added several entries to the table I

hadn't been aware of.

http://medsphere.org/docs/DOC-1198

- Finally, Chris U of TIPG blogs with some amusing, but useless

factoids (Just like traditional organizations, ecosystems

require distractions too!)

http://medsphere.org/people/chris.uyehara/blog/2008/12/11/first-

post---alrighty-then

How does a bill become a law?

Community Code Flow

13

MSC Product Roadmap Timeline

14

Development Proposals

www.medsphere.org

Introduction to Open Development

Ben Mehling

SDLC Overview

Stages of the lifecycle:

• Product Definition – what will be built/fixed

• Development – how it will implemented, write the code

• Quality Assurance – does it work as specified

• Release Management – package everything together

Product Definition

New Development (project or feature)

• Proposals

• Design

• Documentation

• Assign Priority

Defect Correction

• “Artifact” or Ticket created

• Verify the reported defect (QA & Product)

• Assign Priority

Product Management

Who manages the influx of change requests and defect corrections?

• Ultimately Product Management, with input from:

– Customer Care

– Client Services / Field Personnel

– Quality Assurance

– Development

• Requests are channeled through a process that uses expertise specific Change Control Teams, and if necessary a higher level, Change Control Board.

Development

• Agile-like Development Process

• Create a Backlog

• Plan a Sprint

• Work on individual tasks

• Commit Code to SCM

• Peer Review

Quality Assurance

• Test Plans

• Manual vs. Automated Testing

• Agile means QA and Development work closely and in parallel (i.e., no throwing things "over the wall")

• Execute Test Plan and Approve Code

Release Management

• Mainline Management

• Packaging

• Documentation

Open Development @ the VistA Community Meeting

Ben Mehling

Software Life Cycle & Testing in the FOSS Environment

by Cameron Schlehuber, former national DBA

• Patch sequencing

• Patch installation & retrofitting

• Packaging a patch

VistA Software Development Lifecycle Working Group

Brainstorming session I

• Discussion of the “Five tier”support model

– 1) End-user

– 2) CAC/ADPAC/Superuser

– 3) Local Developer

– 4) National Helpdesk & Field Support

– 5) National Developer

VistA Software Development Lifecycle Working Group

Brainstorming session II

• Discussion of AS-IS VA process

– Local and Field support reporting into “forum”

– “Forum” acts as the central clearing house

Related Sessions

TRAC Server: How to use subversion and TRAC

by Ray Anthracite

Panel Discussion - HIPAA, Network Security and VistA Security

By K.S. Bhaskar, George Lilly, Jon Tai, and Ray Anthracite

Open Source Licensing

by Ray Anthracite

Software Development the VistA Way: Open-source Lessons

by Rick Marshall

GT.M Integration Project

Jon Tai

Background

• OpenVista runs on GT.M today, but...

– Difficult to install

– Difficult to configure

– Difficult to manage

Project Goals

• Make it easier to install and manage OpenVista on GT.M

– Create Linux packages

• Push packages upstream in the future

– Build a web-based management console

• Standardize

– Codify best practices into tools

• Make it easy to do the right thing and difficult to do the wrongthing

• Verify that all OpenVista components run properly on GT.M

Proposals

• Several proposals are available now on Medsphere.org

– Communities > sRoadmap > GT.M Integration

Standardize Filesystem Layout

• Standardizing on common locations for files will allow us to build tools

• Where should GT.M be installed?

• How should the files in an OpenVista instance be organized?

– Where do routines, objects, globals, journals, and images go?

• What partitions should be created to hold the various file types?

Globals and Journals

• How should globals be distributed amongst different database files?

• What journaling parameters should be used?

• What journaling actions should be taken on boot, shutdown, recovery?

Linux/OpenVista Security

• How do user accounts at the Linux and OpenVista levels coexist?

• How can we secure programmer mode access?

• How can we take advantage of additional security features at the Linux level?

– iptables

– SELinux

Web-based Management Utility

• “Namespace” management

• System status and monitoring

• User management

• Backups and journaling

• Log viewer

Changes to OpenVista

• Fix compile errors when running on GT.M

• RPC broker / HL7 listener / VistaLink management

• Concept of namespaces

Linux Packages

• RPMs and debs containing utilities

– Web-based configuration utility

– Backup scripts

– ... not OpenVista itself

Next Steps

• We need the community to provide feedback

• What are we missing?

– Rick Marshall, VISTA Expertise Network

• How can the proposals be improved?

Next Steps

• Issue tracking / source code tracking

– launchpad.net

• Assign tasks

• Medsphere will host calls every other week

– We will post a poll for a day/time

– Present status to community

– Technical discussion

Medsphere.org Tip of the Month

Jon Tai

• Questions?

• Reminders:

– Survey: GT.M Project Call

– Survey: How are we doing?