My first major task was to figure out what
software I was to use to create this tool. As in most cases in GIS
my options were limited. The SHIM site uses an online GIS software
called MapGuide, created by Autodesk, so I was limited to the functions
supplied by this software for all of my spatial queries and
displays. Fortunately for this project MapGuide supplied me with all
that I needed in this area.
Click on the picture to learn more about
MapGuide.
Since the
tool was to be implemented online, I had to find a way to communicate
between the database, the map, and the forms. The SHIM server
supports ColdFusion web publications, and so I chose to use this
software. ColdFusion is a very robust software system used on
web servers, and is designed to simplify the process of developing
interactive web pages. It adds functionality to regular HTML
websites through the use of CFML (ColdFusion Markup Language) scripting to
produce a Rapid Application Development (RAD)
environment.
Although
this may sound complicated (and it can be!), how it works is really quite
easy. Using ColdFusion is just like programming a regular web page
in HTML, the only difference is that HTML is static, wherease CFML allows
for dynamic output. When a regular HTML page is loaded into a web
browser such as Netscape or Internet Explorer, the browser translates the
code and displays the page. When a visitor asks the web server for a
page written in CFML, the web server software passes the page to
ColdFusion Server. ColdFusion queries the database to get the data
for the page. When the database returns the data, ColdFusion Server
processes the CFML, which generally results in the creation of some HTML,
and then passes the same page back to the browser, which converts the HTML
into what the visitor sees. The diagram below shows this process
visually.
ColdFusion
is a combination of HTML and CFML, and it also utilizes the Standard Query
Language (SQL) to "talk" with databases. SQL coding is a huge
discipline, but lucky for me I only had to create some minor queries for
this project.
The
graphing tool (which I haven't developed yet) utilizes Java
scripting. With Java the user downloads a program, called an aplet,
along with the web page. The browser, with the built-in Java
interpreter, is able to run the applet from the user's own machine.
Programming graphic interfaces with Java is quite complicated, which is
why I haven't been able to finish it yet.
ColdFusion
communicates with a database, therefore I needed database software.
I chose Microsoft Access because I was able to obtain a copy of it, and
also because it is the most popular software platform used with
ColdFusion.