Archive for July 2007

a simple medical records application

July 27, 2007

I have dusted off an application I wrote while part of a startup company about 5-6 years ago. The application is medical records application that provides a GUI for management and storage of a patient’s information. It also provides for synchronizing this information with a smart card. The GUI is written in Java Swing and the backend logic is also Java. Since the application was conceived of in 2001 it uses EJB. Fortunately I did design the architecture of the GUI so that it deals through a plain Java model and doesn’t have any direct knowledge of the backend implementation.

So in my nearly non-existent freetime I am in the process of overhauling the application to modernize it.

My first step was to Mavenize. This was not particularly difficult since the Swing application is essentially just a plain Java application with a main method. I plan however to completely gut the backend and build service oriented classes to replace the session beans from yesteryear. This task however is a bit down the road and perhaps there will be future blog entries reflecting on my options here. Anyhow the simple project archetype was all I needed here for my jumping off point.

I’ve also decided to gut the plumbing for the smart card interaction. Back in 2001 we used OpenCard as our facility to abstract communication with the smart card. I have no idea what the technology choices are today but I did visit http://www.opencard.org and the website appears untouched. So for now the application will simply be a fancy database reader and not interact with data from the smart card.

Here is a list of todo’s to modernize:

  • introduce Spring for configuration and ioc.
  • include log4j
  •  figure out a backend strategy and architecture to replace EJB
  • determine an app server to develop with Tomcat or Glassfish

In the end I’m not sure what to do with the application. If I can get the smart card link successfully re-established it could provide some kind of value but as just a database viewer it is basically a fancy sample application. We’ll see.