Posted by Mark Johnson on Tue, Aug 18, 2009 @ 08:37 AM
Last weekend I was on my Saturday morning run when I ran by the McLanahan Corporation headquarters (http://www.mclanahan.com/). They are a Blair County, PA based corporation that produces, among other things, large machinery used in agriculture and the mining industry. Outside of one of their buildings they had a big machine that presumably does something equally big, I have no idea what, but it was cool. It had large metal doors on the side, a large motor, fans and wires and pipes, etc. It made me a little jealous.
Working in the software industry, we don't produce big large machinery that you can touch and feel. Sure, we could print out the hundreds of thousands of lines of code we have written, but that really doesn't do anyone any good. We just don't have that tactile satisfaction that results from a physical product.
But that's why, as a software engineer, I particularly look forward to our Tech Hall at User Group. Our Tech Hall is where we get the once a year chance to showcase our products and directly show them off to our customers.
The nature of software lends itself to being caught up in vaporware and hype and customers and potential customers often think we are trying to sell them something that doesn't exist. The Tech Hall allows us to show off what we can do and allow our customers to interact directly with our products and give us feedback.
So, I really hope to see you in the Tech Hall at the 2009 DSI/ITI User Group. Please come say Hi!
Posted by Mark Johnson on Wed, May 13, 2009 @ 12:45 PM
In today's climate, integration of the Offender Management System to external products is becoming a central theme to all OMS installations. Unfortunately every integration project has its own quirks and problems to overcome, and rarely are integrations reusable across city, county, or state lines. But, due to our experience in the industry, I can provide some points that we've utilized to make integration projects go as smoothly as possible.
-
Don't lose focus on what you are trying to accomplish. Do not immediately jump in and figure out how to integrate products without first having a clear, written goal in mind. Make it specific and concrete. A general goal of ‘I want to integrate OMS with my current
Medical Provider is too broad. A more specific statement of ‘I want inmate demographics and housing to move from the OMS to the medical provider, and I want lab results to come from the medical provider into the status screen of OMS' will go a long way in reducing costs and meeting implementation guidelines.
-
Don't get hung up on technology or transport too early. Whether integration uses XML, sockets, Web Services, FTP, or any other acronym doesn't address the basic need of the integration: 'Does it do what I want it to do?' While I realize that often times IT departments restrict the types of communication between systems, most vendors - DSI/ITI included - have written our products to be flexible, and have the experience necessary to get the job done.
-
Be realistic. In the ideal world, you will need to enter a piece of data only once and it will automatically flow from one system to the next, without fail. There are many reasons why this is not possible. Take an OMS to Medical System integration for example. The OMS system uses a booking record as the main item of record. Each time an inmate is booked into the system, a new entry is created. Charges, cases, housing, etc are tied to a booking record. Individual Bookings are tied together via a permanent number. But a medical system works differently. The main item of record in a medical system is an individual. No matter how many times an inmate is re-booked into the system, there is to be only a single record in medical. Generally, we can make this work because the permanent number field in the booking record can be used as the unique identifier in the medical system. This falls apart when an inmate is incorrectly identified at booking, however, as we've now tied this booking record to the incorrect individual in the medical system. This leads me to the last point for today...
-
Garbage In, Garbage Out! Integration projects do not fix business processes, they enhance them. Bad data entered at one point in a system due to an incorrect process can now have much more far reaching effects as incorrect data is now transferred from one system to the next automatically. It is even more critical when systems are integrated to have a defined business process. For the OMS, this is especially critical upon the initial booking steps; an extra few seconds spent properly identifying the individual will save hours of time fixing issues later across multiple systems.
Since I know integration is a huge topic with a lot of interest, this won't be my last entry on the subject. I welcome your comments!
Posted by Mark Johnson on Tue, May 05, 2009 @ 12:31 PM

Hello, I'd like to welcome you to my first blog post!
I'm starting this blog to help share my knowledge about technology and software and how it can be specifically applied within a corrections setting.
My name is Mark Johnson, I am the Software Architect at Digital Solutions and Inmate Telephone, Inc. I am responsible for the overall software design, architecture, and deployment strategies utilized by DSI for our flagship jail management and inmate telephone systems, as well as our newer banking products.
I have 10 years of experience developing enterprise software, and currently hold a Bachelor of Science and a Master's degree in Computer Science from Millersville University of PA and Penn State University, respectively.
In my upcoming blog posts, I intend to touch on integration concerns, NIEM (the National Information Exchange Model), software deployment strategies, software lifecycles, and maybe even some of the behind the scenes aspects of software development.
I am encouraging an open dialog between myself and my readers, so if you have a question, or an idea for a topic, please let me know. I'll do my best to get it answered.