Pharmatrak
Internet, Healthcare
Boston, MA    April 1999--December 1999


Java, XML, Servlets, JSP, UML, PHP, Apache, Linux

Company Background

Pharmatrak is a private Internet marketing service firm for the healthcare industry specializing in web site traffic analysis and monitoring. Pharmatrak also provides a variety of other Internet and World Wide Web services, including web site design and industry Internet monitoring, leveraging its expertise in the health care business to best meet the needs of its clients.

Projects

This project featured a variety of Java-centric web technologies in the creation of a web site, a web configuration interface, and static page analysis tools. The three main project responsibilities were:

 
Design of the MIPILinks web site.

Based on the Enhydra Java application server, this site uses servlets to dynamically generate web pages from XML documents in order to maintain a strict separation between content and presentation information. The complex page layout was designed in a modular fashion so different developers could independently design different elements of each page; these elements are then assembled dynamically for maximum flexibility.
 
 
Java HTML validation.

One of Pharmatrak's services requires clients to add special HTML and JavaScript code to their pages. The Java validation tool checks clients web pages and makes sure that the Pharmatrak JavaScript and HTML is correct, which involves checking for various disparate versions of the code and "fuzzy logic" which takes into account variations in HTML coding style, parameter types, and client-specific directives.
 
 
Web interface to Java HTML validation.

The Java validation code initially ran standalone, but later it was necessary to add a web interface so that system administrators could keep track of which pages were being validated. Also, the validation code had to be integrated with a Pharmatrak World Wide Web crawler which checked client web sites. This was protoyped in PHP, but was finished using JavaServer Pages and servlets interfacing to a MySQL database and to the Java crawler.