12
Document #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 1 TABLE OF CONTENTS 1. INTRODUCTION 1 1.1 DEFINITIONS Error! Bookmark not defined. - 2 2. REASON FOR ISSUE 2 3. RELATED DOCUMENTS 2 4. OVERVIEW 2 - 3 5. HARDWARE ARCHITECTURE 3 6. SUPPORTED CONFIGURATIONS 3 - 4 7. SOFTWARE ARCHITECTURE 5 - 6 7.1 Server Module 7 7.1.1 Web Server 7 7.1.1.1 Apache Web Server 7 7.1.1.2 Microsoft’s Internet Information Services (IIS) 7 7.1.1.3 Sun Java System Web Server 7 - 8 7.1.2 Optical Character Recognition (OCR) Server 8 7.1.3 Google WMS Map Server 8 7.1.4 Messaging Server 8 7.1.5 Document Repository 8 7.1.6 InstallAnywhere 8 7.2 Client Module 9

Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

  • Upload
    vudieu

  • View
    225

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

1

TABLE OF CONTENTS

1. INTRODUCTION 1

1.1 DEFINITIONS Error! Bookmark not defined. - 2

2. REASON FOR ISSUE 2

3. RELATED DOCUMENTS 2

4. OVERVIEW 2 - 3

5. HARDWARE ARCHITECTURE 3

6. SUPPORTED CONFIGURATIONS 3 - 4

7. SOFTWARE ARCHITECTURE 5 - 6

7.1 Server Module 7

7.1.1 Web Server 7

7.1.1.1 Apache Web Server 7

7.1.1.2 Microsoft’s Internet Information Services (IIS) 7

7.1.1.3 Sun Java System Web Server 7 - 8

7.1.2 Optical Character Recognition (OCR) Server 8

7.1.3 Google WMS Map Server 8

7.1.4 Messaging Server 8

7.1.5 Document Repository 8

7.1.6 InstallAnywhere 8

7.2 Client Module 9

Page 2: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

2

7.3 Database Module 9

7.3.1 EPS Database 9

7.3.1.1 The insurance information database 10

7.3.1.2 The pharmacy inventory database 10

7.3.13 The drug interactions database 10

LIST OF FIGURES

FIGURE 1 - POSSIBLE CONNECTIVITY CONFIGURATIONS 4

FIGURE 2 - CLIENT/SERVER SOFTWARE ARCHITECTURE 6

Page 3: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

1

1. INTRODUCTION

This document defines the software architecture for the Electronic Prescription System.

1.1 DEFINITIONS

API Application Programming Interface

DB Database

DMZ Demilitarized Zone

EPS Electronic Prescription System

GPS Global Positioning System

GIS Geographic Information System

GUI Graphical User Interface

HTML HyperText Markup Language

HTTP HyperText Transfer Protocol

HTTPS HyperText Transfer Protocol Secure

IIS Internet Information Services

IP Internet Protocol

JSP JavaServer Pages

LAN Local Area Network

LDAP Lightweight Directory Access Protocol

Page 4: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

2

MAPI Messaging Application Programming Interface

OCR Optical Character Recognition

OS Operating System

PC Personal Computer

PHP Hypertext Preprocessor

SQL Structure Query Language

VM Virtual Machine

WMS Web Map Service

2. REASON FOR ISSUE

Smart phones, tablets and even classic desktop devices have increased user demands from

service providers, pharmacies included. With increased mobility and Internet access, users

are constantly seeking services that support mobile and/or other web-based platforms.

Unfortunately, pharmacies have not fully adapted to the mobile era nor has there been

much advancement towards providing customers with quick, hassle-free trips to the

pharmacy. EPS will address this long-standing, paper-based problem with a modern,

technological solution.

3. Related Documents

1. Software Specification and Requirements document.

2. Data Flow Diagrams.

4. OVERVIEW

Page 5: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

3

This document describes the architecture of the Electronic Prescription System (EPS). The

system is web-based and follows the classical client-server system model.

5. HARDWARE ARCHITECTURE

The hardware portion of the EPS system architecture is displayed in Figure 1 within

Section 6, Supported Configurations. The EPS software is portable with many 32-bit and

64-bit environments through the web. The specified PC, phone and tablet OS’s are specified

in the Project Plan from the requirements package. The system must have a web server,

domain controller or LDAP server, an SQL or Oracle database server, and an application

server on a LAN. All processing and communication between the client and pharmacy will

be through a secure HTTPS connection through a firewall. These components will have

private IP address on the network with the web server’s portal and application addresses

as well as the firewall being placed in the DMZ.

The particular system setup by the pharmacy itself will be mapped to EPS system

architecture appropriately. Mainly all that is needed is a terminal with web browsing

capability and likewise for the customer. The software architecture will be able to support

multiple system configurations of the pharmacy as well as the addition of backup servers

and even more DB server capabilities. The implementation of storage solutions such as

NetApp and IBM blades can also be used to set up VMs for larger and more complicated

database and application solutions for the EPS system should the data be too large and

hinder performance or cause issues with bandwidth. The software model will utilize a

client server application model.

6. SUPPORTED CONFIGURATIONS

The EPS system application provides the user and pharmacy solutions over a secure

network through the web. The overall solution can be constructed in multiple ways as long

as it includes the specifications listed above. This solution has multiple access scenarios

Page 6: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

4

due to the system’s portability. Figure 1 shows a configuration with a common setup of the

EPS system.

Figure 1 - Possible Connectivity Configuration w/ 3 Access Points

The customer uses the EPS application on the web (whether from their phone or a PC, etc.)

and they access the web via their wireless carrier or home / office modem. Once they have

gotten to the web, their data/request/information will have to be sent through a secure

HTTPS connection to access the public IP of the EPS system’s backend LAN. Before doing so

it will have to get access through the system’s firewall. From there a bunch of different

processing can occur. The web and application servers will mainly handle this and may

Page 7: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

5

require calls to the DB servers to handle data. There can also be authentication involved

with user / group data and credentials. When accessing the system’s interface, the user is

directed to the web server initially. Apache will then call the application server to act as an

intermediary between the web server and the DB server as well as LDAP where necessary

when transferring data. All of this information goes back through the firewall and out to the

pharmacy’s terminal through their network and integrates with their system (mainly their

DB). The system will be different from pharmacy to pharmacy. They can also choose to use

their own DB server and storage or can have EPS host it.

7. SOFTWARE ARCHITECTURE

Page 8: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

6

To support the delivery of services to both individual and pharmacy customers, EPS will

employ a client-server architecture, which will consist of three modules:

1. Server module

2. Client Module

3. Database/Query Module

EPS Database

Server Module

Pharmacy Database

User Interface

BrowserJava Applets

HTML Documents

Database Module

Messaging

Client Module

SQL commands

SQL commands

Insurance Database

Drug Interactions Database

Internet

OCR Software ServerGoogle Map ServerInstallation Server

Document Repository

ApacheIIS

Sun Java

Messaging Server

User Environment

Page 9: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

7

Figure 2 - Client/Server Software Architecture for Electronic Prescription System

7.1 Server Module

The server module provides services to the client and database modules, which initiate

requests for such services. The following servers will make up the server module:

7.1.1 Web Server

The following web servers employed for EPS will use HTTPS protocols to deliver required

services over the internet.

7.1.1.1 Apache Web Server

Apache web server software is open-source software that offers virtually unlimited

modification possibilities. Easily the most popular web server software, Apache supports a

wide range of web technologies and is available for all major operating systems and

hardware platforms including MS Windows, Linux, UNIX and Apple OS/X. more details

about Apache web server software is available at www.apache.org.

7.1.1.2 Microsoft’s Internet Information Services (IIS)

This web server is available from the Microsoft Corporation and will be used in the EPS

environment to support the deployment of Microsoft’s proprietary web technology

‘asp.net’. IIS not only supports Microsoft web technologies but also provides support for

other web technologies offered by third parties.

7.1.1.3 Sun Java Sytem Web Server

In the EPS environments, this web server offered by Sun will be run Java servlets and JSP

code as can also be used to run as non-Java technologies such as PHP, Perl, Ruby and

Page 10: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

8

Python as needed. The Sun Java server will be run along with other servers in the module

with the primary purpose of serving content based on Java servlets and/or JSP.

7.1.2 Optical Character Recognition Server

The Optical Character Recognition (OCR) software server will perform identification,

matching, sorting, tracking, and verification of prescription information when received

from the individual user. EPS will provide OCR functionality for desktop and mobile

devices and support all environments – Apple and Microsoft in the PC environment and

Android, Blackberry, Apple, Nokia and Microsoft Windows in the mobile device

environment.

7.1.3 Google WMS Map Server

EPS will interface with Google Maps using the GPS Tracker to determine what EPS-enabled

pharmacies are in the user’s specified search radius. Information culled from the user’s

location will be used to present pharmacies, availability of medication and prices. Google

WMS is a WMS interface to Google Maps that will provide access to Google map data from

GIS applications via a HTTP interface. It can provide Google Map image data to any GIS

application that can use a WMS service for raster data. Google’s WMS map server is freely

available at www.googlewms.jar.

7.1.4 Messaging Server

A messaging server is an application that handles messages between two or more

applications. These messages are passed to the middleware application using a messaging

API (MAPI). EPS will provide messaging functionality and support the transport of

messages to multiple client types.

7.1.5 Document Repository

Page 11: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

9

EPS will provide a document repository for the centralized control and management of

announcements, tasks, calendars, events, user administration, web pages and HTML

documents needed for efficient delivery of services. The selected program will run on a

Linux server with FrontPage Extensions installed in an Apache environment.

7.1.6 InstallAnywhere

The InstallAnywhere application software will be used for the installation and removal of

the EPS software.

InstallAnywhere is the leading multiplatform application installer that delivers a

professional and consistent cross- platform installation experience for desktop and server

applications. InstallAnywhere will allow EPS to create reliable installations for a broad

range of platforms including Windows, Linux, Mac OS X, Solaris, AIX , HP-UX, and IBM

iSeries.

7.2 Client Module

The client module is the interface presented to the user and will be determined by the

user’s environment. EPS will implement features of the user interface using HTML

documents in Java applets to be stored within the server environment. EPS will provide a

web-based interface as well as a messaging (chat, email and text) interface to enable

communications with the user.

7.3 Database Module

The database module will provide access to the various databases that EPS searches or

uses in the delivery of services. Queries and requests either from the user or within EPS

will be handled in the module using SQL commands.

7.3.1 EPS Database

Page 12: Electronic Prescription System Software Architecture · PDF fileDocument #: EPS System Architecture Last Modified: 04/14/12 Electronic Prescription System Software Architecture 2 7.3

Document #: EPS System Architecture Last Modified: 04/14/12

Electronic Prescription System Software Architecture

10

Some installation and configuration files will be provided in the software release. Other

software tools will be provided to aid in the maintenance and operation of the system.

The EPS database will interface with other databases that make up this module. The other

databases are:

7.3.1.1 The insurance information database

7.3.1.2 The pharmacy inventory database

7.3.1.3 The drug interactions database

END OF DOCUMENT