Home   |   Writing   |   Profile   |   Skills   |   Portfolio   |   Contact   
 
Application Development Projects

Clairmail Server 3

This is a major re-architecture of the company's core server platform. This system allows a financial institution to provide mobile banking and bill payment functions via multiple mobile interaction points, including SMS text message, mobile web browser, and native client applications.

The system takes a unique twist on the emerging Java Business Integration (JBI) spec by routing human-originated messages (received via Email, SMS, or IM) to various agents on the service bus, which then process the message as a query or function call on any number of back-end services. A provided SDK allows for open-ended extensibility of the server to virtually any other service or application.

The platform is packaged for delivery as a pre-configured appliance and includes an easy-to-use UI and JMX-based manageability.

Feature Highlights

  • Design embraces an asynchronous, decoupled architecture where system-components communicate via message-passing.
  • Service endpoints may be protected with ACL-based security.
  • System health and configuration can be monitored via JMX.
  • Web-based GUI or XML-API allows for standalone management or integration with in-house applications.

Design Goals
The system must be extensible by developers with little or no knowledge of messaging protocols, SOAP, JBI, or other more complex technologies. A simple java-interface/bean-based API allows developers to leverage their domain knowledge of a particular enterprise app to easily create service-endpoints that may be deployed via drag-and drop. Once registered, users may immediately begin sending messages to the endpoint.

Additionally, the server must support large deployments, with potential users numbering in the millions and message throughput above 50 messages per second per cluster-node.

Technologies Employed
Apache Servicemix provides the JBI-compliant enterprise service bus which forms the backbone of the application. The spring framework, running in the Tomcat web-server forms the business logic layer. Hibernate plus a number of backend databases provides the persistence framework.

GoldenGate Director

This project for Golden Gate Software is a complete configuration, command, and control system for the company's flagship line of enterprise database replication products. Using a diagram metaphor, the various components can be configured in real-time, as changes to the diagrams are immediately reflected in network nodes. Multiple diagrams showing many custom views of the network are possible.

Click for Larger View

The Director suite consists of several integrated products. Director-server provides a central engine for configuring Goldengate replication nodes anywhere on the network. A full-featured client API masks the complexity of the EJB implementation, allowing customers to integrate configuration tasks into their own infrastructure. Goldengate Director provides a rich client for diagramming, log and report viewing, monitoring and control. Finally, Director Web completes the suite with a web access component for obtaining network status remotely using any web browser.

Care has been taken to fully realize the write-once, run-anywhere promise of Java technologies. As a result, all system components function equally well on Windows, Unix, Linux, and Mac OS X.

Feature Highlights

  • All business logic encapsulated in EJB session beans
  • Client-server communication optimized using asynchronous messaging via JMS
  • Swing and Web clients for multiple OS platforms
  • Communication with replication and extraction processes written in C using custom Java sockets
  • Multithreaded monitoring agent implemented as a JMX bean in JBoss
  • Full reporting capability with server generated charts and graphs
  • Consolidated event log viewer
  • All cross-platform java tested on Windows, Unix, and Linux
  • Provides a unified view of services running on Windows, Unix, and Tandem/NSK systems

Design Goals
The key goal was to present the flexibility of the system, which can be configured with hundreds of parameters and is available on dozens of platform-database combinations, in some consolidated way. The API masks this flexibility by smoothing out differences between platforms and implementations, while the GUI brings it together for the user in a familiar diagram metaphor.

Technologies Employed
The application server layer is JBoss, application logic is in EJB session beans which use EJB CMP entity beans for data persistence. Swing and JSP are used for client-side components. Asynchronous operations use JBoss' message queue and JMS.

The Monitoring agent is a multithreaded java server using custom java sockets and jdbc and implemented as a JMX bean for integration with a custom distribution of JBoss.

Graphics and html were designed and laid out using Macromedia Fireworks and Dreamweaver UltraDev.

GoldenGate Director Web

Completed in mid-2002 with the product name Activity Console, this web-based monitoring and control console became the web-access component of the larger Director product described above. From this central location Systems administrators can monitor and control complex data extraction/replication processes running on Windows, Unix, and Tandem servers. The product is notable as the first GUI for what previously had been an entirely command-line driven application suite.

Click for Larger View

Feature Highlights

  • Communication with replication and extraction processes written in C using custom Java sockets
  • Multithreaded monitoring agent
  • Command and control features
  • Full reporting capability with server generated charts and graphs
  • Browseable network topology
  • Customizable network views using 'Watch Lists'
  • Consolidated event log viewer
  • All cross-platform java tested on Windows, Unix, and Linux
  • Provides a unified view of services running on Windows, Unix, and Tandem/NSK systems

Design Goals
The key goal was to present the huge amount of data available in some consistent useable way, all in a graphically attractive, yet somewhat spartan and functional console. Additional goals included true cross-platform support and zero-configuration clients. The client targets 6.x browsers running on Windows, Unix, Linux, and Mac OS X.

Technologies Employed
The GUI consists of an object model implemented as Java beans, a data access layer using JDBC and a presentation layer of Java server pages. The system is tested on the Jetty open-source http server.

The Monitoring agent is a multithreaded java server using custom java sockets and jdbc.

Graphics and html were designed and laid out using Macromedia Fireworks and Dreamweaver UltraDev.

eGems Web Access

This project, done in 2001 for Gemteq Software, was a fully capable web version of the popular Collector product (see below). The product featured a browseable database hierarchy, plus full online editing capability, all in an ultra-thin, cross-browser compatible client.

Feature Highlights

  • Online database browser using tree metaphor
  • Full editing support
  • Supports multiple bibliography formats
  • Fast search and retrieval

Design Goals
The key goal was to preserve the feel of the desktop application for existing users, while creating a pleasant, intuitive interface for new users. Targeted towards serious students and researchers, the presentation was kept intentionally spartan.

Technologies Employed
This is a front-end to an EJB application. It uses RMI/IIOP to communicate with the application server and consists of Java Servlets, Java Beans, and JSPs running on Jetty 3.1 under a 1.3 JDK on Redhat Linux 7.2. Formatting of data uses XML with XSL (apache Xerxes and Xalan).

Click for Larger View

eGems Collector Pro

Worked on from initial design in 1998 through version 2.0 in 2001, this is an award-winning Internet research tool marketed to universities, publishers, and researchers. It allows for fast drag and drop creation of clips of important documents, along with the ability to tag these gems with reference data. Later, the items can be dragged into a larger document, and a bibliography entry can be inserted, preformatted in a number of styles.

Feature Highlights

  • Extensive use of drag and drop
  • Full editing capabilities
  • Unique UI metaphor

Design Goals
Designed to be unobtrusive, the main application window is intentionally kept very small. Several design hurdles were overcome to properly transmit UI features within these constraints. In addition, the application is unique in that the main window can be reduced to a floating icon, while leaving most functions available via drop-down menu and keyboard shortcuts.

Technologies Employed
Microsoft Visual Basic, database access, extensive use of html and xml, email, Internet communications, extensive use of Win32 API functions.

Click for Larger View
Click for Larger View

Gemteq CIF

Completed in early 2001, this internal application allowed staff to track registered users, corporate partners, and support incidents in one convenient place. It features configurable reporting for obtaining detailed user statistics and an ad-hoc query window for advanced users who understand SQL syntax.

Data within the CIF database was merged from multiple sources including web forms, batch inputs from partners, and manual data entry.

Feature Highlights

  • Complete tracking of user data, including product registrations and serial numbers
  • Association of customers to partner or other source of customer
  • Fast Search and retrieval
  • Detailed reporting, including graphs and charts

Design Goals
The UI of this project is reflective of a philosophy that internal applications should be useful and intuitive, but without the "overhead" of traditional web site presentations. Of special note is the use of local applets for generating charts and graphs. Data for these charts is generated on the server during the page request.

Technologies Employed
Java Servlets, Java Beans, and JSPs running on Jetty 3.1 under a 1.3 JDK on a standalone Windows 2000 server. The database is MS SQL Server via JDBC.


Click for Larger View


Web Sites and Corporate Identity

ChevyMallAuction.com Website

Completed in May 2004, this is an extension to the ChevyMall.com site (not one of my projects) that offers one-of-a-kind or limited availability items for auction. The site owner wanted the auction site to run separately from the main ecommerce site, yet retain the branding and feel, providing the customer with an integrated experience.

The site is based upon the EveryAuction open-source auction package, with customizations allowing the site administrator to easily maintain the site.

Feature Highlights

  • Chevy Mall branded home page with quick links to auction categories and auction item search.
  • Pictorial icons identifying auction categories
  • Full text search of auction items
  • A custom implementation of the EveryAuction open-source auction package.

Design Goals
The critical design goal for this project was simplicity. The site hade to be easy to use for customers, but also simple to update for the site owner. Other goals included low cost of setup, the site uses shared hosting and leverages the Perl implementation available via the ISP.

Technologies Employed
The main application is the EveryAuction open-source auction package, written in perl. The main perl script was modified to allow CSS, for easy branding, and changed to allow only the site administrator to post items for auction. Macromedia Dreamweaver was used for home page design, along with custom graphics designed in Macromedia Fireworks.

Click for Larger View
WEN Chocolates Company Logo
Visuary Consulting Corporate Logo

This logo was designed for a small chocolate-maker and variations on it are used throughout the branding and packaging of the products. The word wen is egyptian for 'to exist' and the jackrabbit symbol is a stylized version of the ancient Egyptian hieroglyphic for the word.

 

This logo was created for a small computer consulting firm.

Ericson Fleet One Website

Started in 1999, this is an ongoing 'labor of love', included here primarily as an example of some traditional web site work.

Feature Highlights

  • Provides a nicely designed hierarchy of information on Ericson Fleet One
  • Handy links to local sailing conditions right on front page
  • Full text search
  • A dynamic "Guest Log"

Design Goals
The Angular presentation is intentional and designed to be reminiscent of a nautical chart. The site has consistently won praise from club members and other Ericson Yacht owners, and has been visited by many, many Ericson Enthusiasts over the years.

Technologies Employed
Macromedia Dreamweaver with custom graphics designed in Macromedia Fireworks.

Click for Larger View

Cal Water Internet/Intranet

Completed in 1998, this was a much larger project than indicated by this lone screen shot. It was a full Intranet/ Internet deployment. Working as part of a large team, modules created include online water quality reports, as well as other customer facing content. The most interesting module was an internal system for exposing archives of bill and payment images created by proof machines. These images were in TIFF format and, using an image processing library, were dynamically converted into Jpegs for display in a web browser without the need for viewer plugins.

Feature Highlights

  • Internal report distribution
  • Online bill image search and view
  • Online water quality reports

Design Goals
Though only a small part of the overall implementation, the Water Quality Reports screen at right is indicative of the philosophy of the customer-facing portions of the site. Care was taken to ensure the UI transmitted it's functions in meaningful ways, like the tear-away view of a corner of the customer's utility bill, indicating where to find the required account number to enter.

Technologies Employed
Microsoft Front Page, IIS, SQL Server, ASP, and image handling libraries.

Click for Larger View


Older Projects

Serra Park Dental SAS

Started in late 1997, this was one of the first deployments of Microsoft's MTS. Much of the development was completed before MTS actually shipped. The application was contracted for by a large dental practice with a need to consolidate patient visit statistics in a central office for reporting and decision support. MTS was chosen to provide optimum scalability due to the rapid addition of new offices by the practice.

Feature Highlights

  • Daily data entry optimized for quick keyboard entry
  • Simple UI that follows actual workflow of a patient visit
  • Highly scalable
  • Easy to install client
  • Flexible reporting using Crystal Reports

Design Goals
The application had to achieve two overarching design goals. Because of the pace with which new offices were being acquired, the system had to have open-ended scalability. MTS and SQL Server were chosen to centralize database and business logic. The UI was a small and easy to install package that could be up and running in a remote office as soon as the network was available.

Usability was another key goal. The use of tabs to section the work flow in a manner consistent with a real patient visit, along with screen designs that fostered heads-down data entry (minimal mouse action required) made the application quick to learn and easy to use.

Technologies Employed
Microsoft Visual Basic, Microsoft Transaction Server, SQL Server, and Crystal Reports.

Click for Larger View
Click for Larger View

Quickstart Technologies RAID

An internal project done in 1997, this issue tracking database was not a terribly demanding project. It was important to the infrastructure of the application development consultancy, however, and allowed for the managing of customer issues for multiple projects simultaneously.

Feature Highlights

  • Easy online access to a database of issues organized by project
  • Admin capabilities for managing customers, projects, and system users
  • Reporting and printing capabilities

Design Goals
Almost every developer group has an application like this. This one was decidedly "tongue-in-cheek". The bright colors reminiscent of a can of "Black Flag" and the catchy acronym name "Rapid Application Issue iDentification" or "RAID" were intentionally humorous.

Technologies Employed
ASP, Microsoft Front Page, IIS, MS Access.

Click for Larger View

Bogdan & Frasco Website

Completed in 1996, this informational web site for a small accounting firm is looking rather dated by today's standards of web site design, however in it's day it was notable for being the first commercial, glossy web site released by the company. It is a standard static content site with simple data structure, covering most aspects of the services of the company.

Feature Highlights

  • Simple data structure of corporate data

Design Goals
The company wanted to project a strong, conservative image to its largely business customer-base. The use of stone-tile-like images and bold face fonts are meant to impart a bank-like sense of stability and conservatism.

Technologies Employed
Microsoft Front Page, Microsoft Image Composer.

 

Click for Larger View

Pacific Bank Taskmaster

Actually a 16-bit Access 1.1/2.0 application begun in 1994, this full-featured task-tracker was never ported to 32-bit code, the UI was updated to look good running under Windows 95 and a 16-bit version of Office. The application ran virtually every aspect of the 10-person MIS division of this small commercial bank.

The system tracked all help calls and service requests, tracked network inventory, approved vendors, hardware, software, generated POs, allowed tasks to be grouped into projects, and included a personal schedule. All of this fed through to a real-time status board monitored by the group Vice President, allowing him to know at a glance where his staff was and what they were working on.

Feature Highlights

  • Task tracker
  • Project manager
  • Personal appointment schedule with alarm
  • Network inventory
  • Management reporting

Design Goals
Created and deployed before the wide spread use of Microsoft Outlook and Exchange, this system was designed to fully manage the work flow of Help Desk Representatives, Application Support Specialists, Network Administrators, Telecommunications Specialists, and Senior Management engaged in MIS tasks.

Technologies Employed
Microsoft Access.

Click for Larger View
Click for Larger View

 

Pacific Bank BANCoin

This simple system, developed around 1990, is included here primarily as a means of allowing me to declare in all truth, that I've been using "VB" since it was "B". Although a very simple program, it performed a task that greatly reduced the time spent reconciling coin deliveries to the central vault by the Main Office Vault Teller and each branch Vault Teller.

Feature Highlights

  • Accepted entry of coin receipts for current day's armored delivery 
  • Printed a report to distribute to branches (dot matrix on green bar) 
  • Calculated GL entries for each branch receiving coin

Design Goals 
A quick and simple program, designed to simplify the life of the Vault Teller. This program was a key time-saver and was the first of an ongoing stream of process automation efforts that I was involved with at the bank.

Technologies Employed 
MS-DOS, MS-Basic running on an IBM PC AT

 

Home  |  Writing  |  Profile  |  Skills  |  Portfolio  |  Contact