We would like to thank everyone for coming to our session, Map Information System and Interactive Campus Map. Today we are going to talk about the Map Information System and map clients that the Enterprise Web Applications Team at Rochester Institute of Technology created recently. We’ll discuss some of the tools that we used to create these applications, some of the challenges that we had along the way, and of the plans that we have for future growth and improvement.40 Sec
This project initially started out as part of RIT’s Building identity Project. In the Building Identity Project, RIT was creating a new ID structure for campus buildings. These building IDs where changing from a numeric identification to a abbreviated letter identification. Although the initial goal of this project was to create a map solution for the Building Identification Project, we determined an enterprise system would better suit the RIT community.
We had a list of requirements for this project. Just to highlight some of the important ones. We needed to be able to support various forms of data. For example, the system needed to be able to handle polygon building shapes, simple points for locations in buildings, as well as lines or multipoint data for paths through the campus.We didn’t want to be tied to any particular map engine. This system had to be able to work with Google, Yahoo, Bing, Open Street maps or any other mapping engine. We didn’t want to limit ourselves as new technologies appeared. We also leave open the possibility for other developers at RIT to be able to make their own map with the map engine of their choice.The content in our system had to be highly searchable. We wanted to give users the ability to not only search for building names, but also some of the things that exist within buildings. For example, conference rooms, lecture halls, types of food served throughout campusWe needed to create easy ways for people to share map information and locations on campus in a more consistent way. This is something that we did not have previously at RIT.
We are going to move right into looking at one of the web-based map clients that we created. We had a list of functions that we really wanted this client to have.We came up with a deep linking syntax that allows people to link to and share the exact view that they are looking at on the map.We decide that we needed to create our own imagery of the campus. None of the mapping services provided an accurate view of RIT’s campus. Some of the satellite imagery we found was over 3 years old.We wanted the client application to be able to create a snippets of html code that users could use to embed a view of the map in their own sites. This is much like the embed code found on Google Maps, YouTube and many other sites.The client application needed to support key word searchingWe wanted the client to atomically suggest map locations as the user typed into the search box.Creating an interface that people were familiar with was important to us as well. We tried to keep the interface very similar to Google maps.
I want to spend just a minute talking about the custom image overlay that we created and the process that we used to make it. This overlay was really important to us. There was really no other way that we could get an accurate view of the campus.We created the initial image with Illustrator. I was based on a Google Maps satellite view and CAD files of the campus. The image was then sliced into hundreds of 256 x 256 pixel tiles with a program called MapTiler. Each zoom level of the map is has it’s own set of tiles.These tiles are loaded on demand as you scroll and zoom around the map.
In addition to the full screen map we also created a mobile view of this information. This is really an alternate presentation of the data that is available in the Map Information System. It is much less focused on the actual map and more focused on location information. The navigation is simplified and more suited for a mobile device.Demo process: browse for food. Crossroads search for ice cream, Ben & Jerry’sFinding a phone number Residence LifeFinding hours of operation for BeanzPossibly talk a little about the Jquery Mobile framework:- It is in beta (we are using alpha r2)- We ran into some issues but overall was a good experience
Discussion of the data objectsReview how to integrate eventsShow how tours can be also doneTotally separate client like imagineRIT
If you do not need the information system part there are simpler ways to do a campus map. KML, hardcoded, etc.We wanted to create a service that would allow people to create their own clients easily. We also wanted to have a publicly available data source for students, faculty and staff to use to experiment with. RIT is really big into innovation and we feel by having this data easily available people can use it to try to do something cool without the huge investment of time of trying to capture all of this data. Examples: Review of travel paths for people who are mobility challenged.Realtime stats & Heat Maps for dining services for locations Virtual reality
Why did we go this routeOther optionsData flowPerformance has been really good so far so we have not added the reverse proxy cache as of yet.API is a Restful web service using Oracle’s Jersey reference implementation of JSR311.Routing Generation Service is a non-customer facing application that monitors the routing information and updates as neededApache Tomcat, Two virtual machines with dual 2.66Ghx Xeon processors and 2 GB of RAM + 4 GB of swap (plan to grow as needed)
Talk a bit about Solr, who uses it, there is commercial support and a large user baseMost of the calls are extremely quick, less than 40ms and are cached in Solr (fragments are also cached) and browser cachable. A couple of examples of searches; go to clientadobe photoshop -building:BOOadobe photoshop -building:GAN
Right before we released Google released the use of the api with SSL which opens up a lot more possibilities.
Now that we have launched the map we are looking at ways that we can promote and market it to the RIT community. We demoed the map for several hundred people at a technology festival that RIT hosted.As we mentioned before, the embed functionality that we have should give people an easy way to add maps to their web sites. We have already seen some use of this functionality from sites at RIT. Within the last year RIT has been moving heavily into using Drupal to manage web site content throughout RIT. This embed functionality integrates into Drupal very easily.Perhaps the most beneficial way that we can market this map is by opening up the API to the RIT community and allowing people to build their own applications with our rich data sets.http://www.rit.edu/its/help/
Map Information System and Interactive Campus Map
Map Information System and Interactive Campus Map<br />Shawn Whiteside<br />Senior Web Services Programmer/AnalystRochester Institute of Technology<br />Patrick Reed<br />Web Programmer/AnalystRochester Institute of Technology<br />
History<br />Initially part of a project to rename buildings at RIT<br />Evolved into an enterprise data management tool<br />Our team consisted of one graphic designer and three developers<br />
Requirements<br />Needs to support various forms of data<br />Buildings, Locations in buildings, Paths<br />Needs to work with different maps services<br />Google, Yahoo, Bing, OpenStreetMap, Static<br />Content needs to be searchable<br />Content needs to be shareable<br />
Web-based Clients<br />Functionality <br />Sharing of map views with deep linking<br />Image overlay used to show up to date info<br />Embed map content on external web sites<br />Keyword search functionality<br />Auto suggest search results<br />Familiar interface<br />
Full Screen Client<br />http://maps.rit.edu<br />
Creating the Map Overlay<br />Created the map image based on Google Map satellite view and campus CAD files<br />The image overlay is made up of hundreds of 256 x 256 pixel images<br />Tiled the images with MapTiler<br />Every zoom level has a different set of tiles<br />
Mobile Client<br />Alternate presentation of map<br />jQuery Mobile framework<br />PHP<br />Simplified view of data<br />Automatic redirection<br />
Extensible Data Model<br />Needed a straight forward, relatively easy to understand data model.<br />Needs to handle different use cases.<br />Map Data Object has three child components:<br />Map Object<br />Content Objects <br />Tags<br />
Web Service Architecture<br />Why did we go this route?<br />We wanted to do something a little bit different than a standard map of buildings. <br />A building block for other clients<br />A data source for innovation<br />RIT needed a better way to find places on campus<br />Ultimate goal is to map every public place on campus. (Vending machines, Artwork, etc)<br />
Searching<br />Apache Solr – An open source search server<br />Fantastic performance<br />Faceted search capabilities<br />75% of the Interactive Campus Map calls are supported by this service.<br />
Admin Interface<br />Currently have an internal only client that is fairly basic.<br />Plan to integrate with the new client<br />We plan to have the majority of our dynamic data added programmatically. <br />Content updated manually where needed<br />
Challenges<br />Google Map Imagery is not correct<br />Managing our own map layer is challenging<br />Keeping data current and relevant<br />Limited resources<br />
Marketing<br />Word of mouth<br />Embedding the map into other web pages<br />Linking to it from the main RIT web page<br />Opening the API up to other developers<br />
Future Ideas<br />Integration with the campus events calendar<br />Real-time bus locations<br />Point to point directions<br />Integration with the course catalog<br />Public release of the API<br />Restricted views inside the buildings<br />Development of more map clients <br />