140 likes | 234 Views
CS456 KohaMaps Project. Team Recursive Descent: Nicholas Riolo Josh Callender Ryan Carlson Mike Carey Rich Peoples. Project Description Requirements.
E N D
CS456 KohaMaps Project Team Recursive Descent: Nicholas Riolo Josh Callender Ryan Carlson Mike Carey Rich Peoples
Project Description Requirements • “The Koha project exists to support and maintain the Koha open-source library automation system. Because the system is open-source, any library can download and use the system for free. The project doesn’t currently have a registration system to collect information on libraries using the system, so we have no way of knowing how many users are using Koha or where they are.” • Team Recursive Descent has taken up the task of creating such a mapping system for the Koha Organization. By utilizing the Google Maps API, we created an interface that will identify libraries all over the world when entered into the database.
Functional Requirements • This registration system should allow the following: • view a Google map with locations of Koha users indicated • display detailed information about each library • search for a Koha library using criteria such as “library type”, “geography”, “size of collection” • allow anyone to add their library along with information about their library • the system should email the Koha list every time someone adds their information ( there should be an approval mechanism whereby an administrator can approve the post to avoid spam, etc.) • provide a management interface for editing other user’s posts and cleaning up spam, etc.
Features of the Project • View Map • Search for Libraries • Add Library • Register User • Login • Administrative Functions • Email Koha List
Technologies Used • XHTML – Page display • CSS – Format the information on the pages • Javascript – Functions to deliver information between PHP files • PHP – Make SQL queries to the database • MySQL – Database to store information • AJAX – Allows seamless interaction between all of the above • Apache – Web server to deliver information
Architecture • Used a client-server approach • users access the data provided by the web server • Used two database tables for Koha User Info and another table for Koha Library Information • Two main pages • User page for actions of viewing map, searching information, etc. • Administrator page for maintaining information
Library User Information • User Name • Password • First Name • Last Name • Email • Administrative Privileges
Koha Library Info • Name • State • Country • Library Type • Members • Collection
Implementation See http://kohacode.rchomelinux.com
Test Strategy • Black Box testing on multiple Operating Systems and multiple web browser applications to achieve a versatile program that functioned well in the majority of user environments • Mostly tested the search and login functions because administrator’s have the ability to edit things in the database
Testing KohaMaps • Mac OSX 10.4 • Safari • Firefox 2.0 • Windows XP • Firefox 1.5.0.7 • Firefox 2.0 • Internet Explorer 6 • Internet Explorer 7
Testing Search • When you enter the information exactly as it is in the database • If the case letters effect the search • If it works when you begin in the middle of the name • If there is only one character anywhere in the name • If there are any special characters including: ヤ(){}*&^^%$#@! • If spaces in the middle of the word effect the results
Testing Login • Entered unknown user info • Entered correct login and incorrect password • Entered correct password and incorrect login • Tested case sensitivity, only case sensitive for the password • Tested to make sure only Administrators can access the admin page
Testing Other Functions • Entered in the information when it’s asked for then submit it • Check the administrator page to make sure the requests are displayed