Upload
vudieu
View
225
Download
2
Embed Size (px)
Citation preview
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
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
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
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
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
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
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
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
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
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
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
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