90 likes | 243 Views
Bees Knees. Carlos Portillo, Heather Persson , Jonathan Corbin, Manuel Wong, John Torres. Concept.
E N D
Bees Knees Carlos Portillo, Heather Persson, Jonathan Corbin, Manuel Wong, John Torres
Concept • As it stands, there are not a lot of ways for groups of bee keepers to keep track of their hive information. With Bees Knees, we sought to correct this. Now there is a place for bee keepers to go where they can register their company, and electronically keep track of their hives. In addition to keeping track of basic hive information, they can also see a map indicating the location of their hives, with circles drawn on the maps to indicate the fly-zones of the hive.
Key Features • Hives • The primary purpose of the site was to allow bee keepers to keep track of their hives and the different properties of them, including: • Queen, Feed, Health, Harvest, Treatment, and Comments • Hives are organized by companies, where a logged-in user can specify their company at hive creation. • Google Maps • A big feature we wanted to implement was the display of a map for each hive that is created. When a logged-in user creates a hive, they must enter an address for the hive. From this address a map will be generated using the geo-location services. This would make for even greater management of bee keeper’s hives. • Fly-zones • The second half of the big feature we wanted to implement into this site is fly-zones on the hive maps. These are basically circles drawn on the displayed map that indicate the area that the bees will fly around the hive
Design Considerations • One of the main concerns during site was the usability, having a nice flow during the input and viewing of data. With how many different attributes there are associated with the Hive (Queen, Harvest, Feed, Treatment, Health, Comments), the scaffolding views weren’t going to cut it when it came to creating a hive. We wanted to make it easy for a user to add everything and anything about a hive from one page. Therefore we allowed access to all hive attributes from the create hive view page itself. • To organized the hive data in a consistent and concise manner, the newest hive entries are displayed first. This allows the use to more efficiently make use of the data in the presence of great quantities of data • Descriptions of what information need to be entered are placed in boxes to side of input forms to make it easier to read for usersas well as placing the required fields for editing on the bottom.
Milestone Implementations • Milestone 1: • This was our initial round of implementation, which consisted mostly of getting all of our domain classes set up properly. From there, session management was added to allow new users to be created, and once created, log in to the Bees Knees site. • Milestone 2: • For the second milestone we focused on really cleaning up the site to make it look more presentable and functional. The use of toString functions was added so that the display of Hive information was easier on the eyes. Several bugs were fixed in this milestone as well, including session management and deployment issues. • Milestone 3: • In the final milestone is where the most important part was implemented: the fly maps. After milestone 2 when all of the core functionality was implemented, we were able to focus on the more difficult task of adding maps for the hives that display a circle indicating the hive’s fly-zones.
What Could Have been… • The ability to enter hive attributes all on one page instead of having different pages for each one. It may be easy to access the different pages from the main hive page, but it’s undesirable navigation. • Displaying the date/time that a hive attribute was added when the hive is viewed, as well as the user that added them. This would help the user see what was most recent, and which other user from their company had added it. • A better naming scheme for hives. While each hive is uniquely identified by an ID number, it would be easier to view if users were able to assign their own identifiers to each one. • Better Security – As of right now it’s incredibly easy for any user to register with a different company on the site, which would allow them to easily add/modify/delete a different user or company’s hives. It would be great to implement administrator roles, or supply unique codes to each company that a user has to enter to register with that company.
Complications • Bees Knees may be a really awesome site (don’t pretend you don’t think it’s great), but it was not without development complications. The primary areas of complication for us were: • Github • Though Github is a very useful way to collaborate on a project with a team, for us it caused a lot of problems. There were many times we had to completely remove the project re-create it, usually because we would get errors that prevented us from pulling changes. • Grails • The primary reason we had issues with Grails was the lack of experience with it. Once we each spent time working with the framework and understanding the MVC architecture, it became easier and easier to use. • Tomcat • Tomcat came with its own set of complications. Originally we blamed Tomcat itself for a lot of the problems we encountered while trying to deploy our early versions of Bees Knees. Later on we realized that it was an error in our code that caused the mysterious errors we found. • It’s still a mystery as to why our projects would randomly deploy/undeploy, but in the end a few good restarts (of both tomcat and the rackspace server) let us get it running.
What we Learned • We learned several things from this crazy adventure with Grails: • You can’t render a view from inside another view! • Watch your capitalization on! • Tomcat does what Tomcat wants. • Clear those launches! • You don’t want to push those class files.
Demo Time • http://192.237.180.200:8080/beeskneesm3