eHMP OSEHRA PRESENTATION

Slides:



Advertisements
Similar presentations
VA Design Patterns Briefing and VistA Evolution Update: Questions and Answers.
Advertisements

Test Automation Framework Ashesh Jain 2007EE50403 Manager Amit Maheshwari.
Enterprise Health Management Platform
SOFTWARE PRESENTATION ODMS (OPEN SOURCE DOCUMENT MANAGEMENT SYSTEM)
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Building Applications using ASP.NET and C# / Session 1 / 1 of 21 Session 1.
ACTIVE X By Ethan Huang. OUTLINE What is ActiveX? Component of ActiveX Why ActiveX? ActiveX and Java Security Issue.
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
SiS Technical Training Development Track Technical Training(s) Day 1 – Day 2.
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
IBM User Technology March 2004 | Dynamic Navigation in DITA © 2004 IBM Corporation Dynamic Navigation in DITA Erik Hennum and Robert Anderson.
Understanding and Managing WebSphere V5
User Group 2015 Version 5 Features & Infrastructure Enhancements.
Intelligent Tutoring System Mobile Communication Team Drew Boatwright Nakul Dureja Richard Liou.
Creation of hybrid portlet application for file download using IBM Worklight and IBM Rational Application Developer v9 Gaurav Bhattacharjee Lakshmi Priya.
This chapter is extracted from Sommerville’s slides. Text book chapter
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
INTRODUCTION TO WEB DATABASE PROGRAMMING
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Department of Veterans Affairs VLER Core Vendor Days 1/24, 1/25.
Creating a Flexible EMR Architecture Doug Martin, MD.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
VIVO Multi-site search Structure and function overview.
Extending ArcGIS for Server
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Configuration Management (CM)
CHEF II / Sakai Architecture. CHEF II Changes uPortal replaces Jetspeed –jsr 168 portlet, servlet compliant Spring replaces Turbine component framework.
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
SharePoint 2010 Search Architecture The Connector Framework Enhancing the Search User Interface Creating Custom Ranking Models.
Presentation. Recap A multi layer architecture powered by Spring Framework, ExtJS, Spring Security and Hibernate. Taken advantage of Spring’s multi layer.
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
Seattle Drupal Clinic Introduction to Drupal Part 1: Web Content Management, Advantages/Disadvantages of Drupal, Drupal terminology.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Web Programming Brian Toone 8/27/2014. Outline for today 1.Understanding the architecture of the web 2.Overview of programming languages – Client-side.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
.  A multi layer architecture powered by Spring Framework, ExtJS, Spring Security and Hibernate.  Taken advantage of Spring’s multi layer injection.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
What's New in Kinetic Calendar 2.0 Jack Boespflug Kinetic Data.
REAL WORLD AJAX MARCH TIBCO USER CONFERENCE / 2004 Enterprise Rich Internet Applications with AJAX Real World Case Studies with TIBCO General Interface™
Web Development Process The Site Development Process Site Construction is one of the last steps.
IBM Software Group ® Managing Reusable Assets Using Rational Suite Shimon Nir.
Dispatching Java agents to user for data extraction from third party web sites Alex Roque F.I.U. HPDRC.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
Presentation.
BASIC ELECTRONIC HEALTH RECORD (EHR) SETUP. Learning Objectives Compare and Contrast the Various Resource and Patient Management System (RPMS) Packages.
Modern Programming Language. Web Container & Web Applications Web applications are server side applications The most essential requirement.
TODAY Android Studio Installation Getting started Creating your 1 st App Beginning to understanding Intents.
Presentation Title Subtitle DSpace UI Prototype 7 Spring, Angular.js, and the DSpace REST API.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
Department of Veterans Affairs eHMP Overview for Shepherd University Keith Michael and Cynthia Bias January 19, 2016.
IBM Express Runtime Quick Start Workshop © 2007 IBM Corporation Deploying a Solution.
1 Cutting Edge FE technologies for complex product August 6, 2015.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
J2EE Platform Overview (Application Architecture)
Architecture Review 10/11/2004
Scalable Web Apps Target this solution to brand leaders responsible for customer engagement and roll-out of global marketing campaigns. Implement scenarios.
Platform as a Service.
Scalable Web Apps Target this solution to brand leaders responsible for customer engagement and roll-out of global marketing campaigns. Implement scenarios.
CS5220 Advanced Topics in Web Programming Course Overview
AWS DevOps Engineer - Professional dumps.html Exam Code Exam Name.
Where can I download Aws Devops Engineer Professional Exam Study Material - Get Updated Aws Devops Engineer Professional Braindumps Dumps4downlaod.us
Get Amazon AWS-DevOps-Engineer-Professional Exam Real Questions - Amazon AWS-DevOps-Engineer-Professional Dumps Realexamdumps.com
Google App Engine Ying Zou 01/24/2016.
ASP.NET Module Subtitle.
RESTful Web Services.
CS5220 Advanced Topics in Web Programming Course Overview
Presentation transcript:

eHMP OSEHRA PRESENTATION 24/Feb/2015 Hello and welcome to our presentation of eHMP I will give an over view of the application and then talk about the architecture and specifically the SDK and its components the ADK and RDK. I will wrap up the presentation with some of the current dependencies and issues that are seen with deployment in the workstation environment and the VA. I will also give our next steps which will then lead into some time for Q and A. This is the first time for us to present this audience to the best of my knowledge so it was a little tough deciding what to present. Hopefully this will spur more questions and we can come back and give a more specific presentation in the areas of interest. Version: 1.0 Submitted by: Carl Gray

Introduction If there is not any time for questions and answers today due to the length of the presentation please direct your questions to: eHMPOpenSource@asmr.com We will ensure that your questions are answered by members of our development team.

Overview A key objective of the VistA Evolution Program is to enhance cross-Agency (DoD/VA) interoperability by providing all clinically relevant data at the point of care for Veterans. eHMP is targeted to be the replacement for the CPRS application. eHMP will accomplish this by integrating an enhanced graphical user interface, standards-based data, and integrating core clinical applications In 2014 Dr. Cullen gave a presentation on VistA Evolution. A Key goal of the program was interoperability And creating a single point of care for veterans As such eHMP is targeted to replace CPRS as it becomes that single point of care. eHMP has an enhanced UI and is integrated with core clinical applications.

eHMP (coversheet) This is an example of the view that a clinician would see once logged into the eHMP application. It shows the use of multiple applets within the single window interface. The applets that are presented are configurable by the user depending on what the user needs to see in the workspace for their particular job responsibilities. On this particular view you can see examples of the Immunizations, the Medications, and Allergies applets to name a few.

eHMP (text search) This view shows an example of the text search functionality. Though we do not have a demo today, we would like to schedule one in the future if there was interest in us doing so.

eHMP Functional Goals View of patient record, showing several sources of information at once Advanced text search across patient record Medication Review Ability to document a clinical encounter (edit patient record, add allergies …) Order entry Ability to recommend interventions based upon patient record derived from clinical practices Here is a high level list of eHMP’s functional goals

eHMP Development Methodology Using the Scaled Agile Framework (SAFe) development methodology The development team works directly with VA stakeholders, which consists of on-the-ground doctors, technicians, SMEs, and leadership. As a team, we use the Scaled Agile Framework methodology. Our team is quite large so we are stressing the bounds of even this. We strive to work very closely with the VA stakeholders in order to ensure that we are giving the functionality that they need.

Architecture (VX API) eHMP utilizes VistA Exchange (VX) as its source of patient data. VX is a standards based ReSTful web service API which provides patient data, search, authentication, access control, CCOW service, order entry, writeback, clinical decision support, and other operations needed for a clinical UI. VX is written in JavaScript and runs on node.js eHMP UI is developed as a Single Page Application, which is static HTML served from the web server (not dynamic web pages such as JSP, PHP, etc. No J2EE web server) VX and eHMP UI are developed using a SDK that fulfills common cross cutting concerns. Single Page Application – simplifies the division of business logic between the client and server. And is conceptually similar to the CPRS client server model.

Architecture (VX Cache) VX API retrieves patient data from VX Cache, which is a temporary store of patient data from the VistA sites, DoD, Community (VLER), and VLER PGD. This allows for quick access to previously synced patients, and data is kept up-to-date using a subscription/publication from each VistA site. VX Cache is implemented with an M JSON document database, Solr and a rich-text document store. Patient Data in VX Cache is stored with standardized terminology codes (SCT, ICD, RxNorm, LOINC, CPT). The VistA Exchange Cache is where we temporarily store patient data It provides up-to-date patient data (from VA Sites, VLER, DoD) as quickly as possible.

Architecture (SDK) The SDK is comprised of: Application Development Kit (ADK) to drive development of the client-side web application Resource Development Kit (RDK) to drive the development of service side resources (web services) to support the web application

Architecture (SDK) The SDK provides the ability to add incremental functionality to the web application through the development of applets (not to be confused JSR-286 portal or 1990's Java applets). The SDK allows for parallel development of applets by reusing a common UI library.

Architecture (ADK) Built using JavaScript, backbone.js, Marionette, Bootstrap A mechanism to arrange these applets through app configuration into layouts called screens Provides holistic application utilities and functions Includes common cross cutting concerns (authentication, authorization, etc…) Provides consistent visual themes

Architecture (ADK) The ADK provides a mechanism for screen designers and application designers to: Create a screen, choose from predefined layouts and assigning applets to regions Provides the runtime UI shell for the application. Displays current patient, current user, provides navigation Choose the screens that are part of the application

Architecture (RDK) Developed using JavaScript, express.js Deployed to node.js; relies on npm for package management The RDK is responsible for: Providing server configuration and information about the request Providing handles to common external systems, including VX Cache and VistA(s)

Setting Up the Development Environment Dependencies The tools that are use in our internal environment for local deployment of the code are: chef-solo (version 10.14.4) Berkshelf (2.0.11) Gradle (version 1.11) Ruby (version 1.9.3p194) Rake (10.3.2) Vagrant and VirtualBox provider (version 1.4.3) Java (version jdk1.7.0_72) non-open source components are Axiomatics Policy Server (APS) and HighStocks Axiomatics Policy Server (APS) and HighStocks is only used in certain applets HighStocks can be replaced in most applets by either HighCharts - AFAIK HighStocks also has a free non commercial licence Axiomatics Policy Server (APS) is an XACML Policy Enforement Point (PEP) and can be disabled or replaced in an OSS Environment.

Setting Up the Development Environment Access to VistA The current code base and deployment plan does require that the user have access to VistA or to a VistA test instance. eHMP should run on any current FOIA VistA instance FOIA/OSEHRA instance of VistA for Open Source use

Setting Up the Development Environment Toolkit Gradle build process (wrapping Grunt and NPM tasks for JavaScript projects) Vagrant and Chef server automation Vagrant and Chef for deployment

Deployment/Production Configuration The current approach for deploying to VA environments, including production, is to create a “cache” of all the deployment scripts and installation artifacts that are needed. This is created within our Jenkins build pipeline and then stored on Nexus. The cache is needed because there is no internet access at all from within the VA environments. So everything that is needed for a deployment must be available within that environment. For a deployment the cache is pulled from Nexus, uploaded to the target environment and unzipped. Rake, chef-solo and Vagrant scripts are then used to deploy the component pieces of the application to the servers within that environment. Most of the Chef recipes and other scripts are common to both VA deployments as well as local developer deployments. The primary differences are: Vagrantfiles which are unique to a “managed” deployment where VMs already exist vs. a VirtualBox deployment where they are created on-the-fly “settings” files which describe the target servers environment-specific configuration files

Next Steps eHMP r1.1 Open Source code drop – March 02 Produce Install Manual to be used by Open Source community Create more robust Open Source code drop – Late May Work with the VA Innovations team to create an Open Source development environment

Questions Questions as time permits We have some of the developer on the call today so if you have any SDK specific questions we will try to answer them for you.

Follow Up Questions Please pose all follow up questions to: eHMPOpenSource@asmr.com