Projects

Projects at Safeco
Projects at UW


Projects at Safeco

Enterprise Deployment Architecture

NAnt, CCNet, and other open source products for versioning and deployment are common in .NET development. Here is a model that I successfully used for staging, configuration, and deployment of .NET and other proprietary products alike:


Ad-hoc Calculation Tool

This tool was designed and developed by me in a two week span to streamline the process of verifying business calculations (as a proof of concept). The tool allowed for direct access to a restored copies of the runtime databases that are regularly backed up and an extensible framework for adding new calculations.

The tool was made with peformance in mind and uses stored procedures with XML parameters that are parsed by SQL Server to do complex TSQL queries necessary to avoid multiple round trips from the client application to the database. It also avoids queries against production resources because of the server utility that was designed to restore nightly backups to a dedicated database for the tool.

The general architecture is shown below:


Business Intelligence Automation Tool

This tool was created by me in an ad-hoc fashion to avoid manual testing of changes to Business Intelligence reporting cubes and databases. Since the data from Microsoft Analysis Services can be viewed with a web interface that renders using an embedded Microsoft Office Web Component control, I created a .NET console application that recursively iterates through all combinations of fields in all cubes contained within reporting structure to comprehensively assert the validity of the reporting structure.

The general architecture is shown below:


XML Test Tool

Below is an architecture that I have used in the past for automating verification of HTML content. In this model, .NET interacts with the native IE browser interface through a COM proxy to orchestrate native browser events and verify content.

Projects at UW

Tablet UI


As a capstone project I worked on a team with 3 other individuals to analyze and improve the user experience of Tablet PCs. We conducted several focus groups with the members of the Tablet PC user community, analyzed usablity problems with the current Windows XP Tablet Edition interface, and did a functional decomposition to arrive at a list of usability enhancements to implement.

After arriving at these features, a mockup then a hi-fidelity prototype (implemented in C# .NET) were created. From the prototype, usablity tests were conducted with Tablet PC users and the findings were that the user interface in the prototype had significant improvements over the current Windows XP Tablet Edition user interface.

Warshall’s Train Route


This application uses the Floyd-Warshall algorithm of transitive closure to find the least expensive train route from two specified cities in the United States. This application uses random weighted graphs to simulate the cost of actual train trips. This applicaion computes a given route in constant-time O(k) and loads the data in n-cubed time O(n3). To execute, download .jar file and text file and expand to the same directory, then run as an applet.

HistoryPlaces


Pathfinder


This application was developed as a project in an introductory Computer Science class. It builds a graph based on input from a text file and uses the A-Star algorithm to find a route from two points on the graph.

FACT


FACT is a web interface that 3 individuals and I constructed to visually represent the placement of fossils in a large data set of coordinates. The application reads the coordinates from an XML file and displays them using javascript and SVG.
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s