SpEAK:Home

From Openitware
Jump to: navigation, search

SpEAK Pages


SpEAK (Speech Experiment Accessible Knowledge)

Home Page

SpEAK is a project to develop an online database for accessing knowledge acquired during experimentation in speech research.

Description

The system will enable researchers to create, access and modify experimental knowledge capturing summary, explanation and results of both successful and unsuccessful speech experiments being conducted at UNH Manchester.

Project Summary

If you are reading this, you have inherited the SpEAK project. Congratulations!

Current State

Currently these are the features that we've implemented on the system:

  1. Front End
    1. Search function - works but needs a better interface
    2. Add Function - users can add experiments to the database
    3. Admin function just for show.
  2. Database
    1. ...
Missing Pieces
  1. Users/Authentication
    1. Users should be able to login
    2. There should be a way to add users to the system - currently user dropdowns/lists are populated from users already in the database . There is no way to manually add a user except through SQL.
    3. User permissions need to be implemented.
    4. ...
  2. An uninitialized database is pretty much useless. There has to be some at least one experiment and user in there before anything else will work. This is because the Add function searches for existing users, which are currently tied to experiments.
  3. There's little data validation or scrubbing done on the add / search functions, so the project is vulnerable to SQL injection attacks.
  4. Much of the controller code in speak/php/controllers/dbExperiment.php is duplicated across functions. This file could should be refactored/simplified.
Quick Guide to important folders/files
  • /html
    contains html only related related to early look and feel development (deprecated)
  • /php
    contains the current php files that the web application uses
  • /php/controllers
    contains 2 files
    • /php/controllers/dbConnect.php
      handles connecting to the database and
    • /php/controllers/dbExperiment.php
      contains functions for accessing the database
  • /php/img
    contains image resources
  • /php/includes
    contains the html header and footers
  • /sql
    contains files for initializing the database and populating it with sample data, as well as some diagrams related to the database.

Development Environment

Code base is located in the SpEAK repository on Google Code.

To set up a local development environment, use the following instructions:

  1. Install TortoiseSVN
  2. Checkout the SpEAK code repository using Tortoise. Instructions for using tortoise are in the link above.
  3. Install XAMPP
  4. Edit httpd.conf. On windows, it is in C:\xampp\apache\conf by default. On Mac/*nix, it is located in /etc/httpd/conf/
    1. SpEAK needs a directory tag. Place this among the other <Directory> tags.
    2. SpEAK also needs an Alias tag. This should go inside the <IfModule alias_module> tag.
    3. See the code block below for details on what to add.
  5. Now it's time to initialize the database
    1. In the XAMPP Interface, start the MySQL server
    2. Open a command line login to MySQL as root. ( xampp\mysql\bin\mysql.exe -u root -p )
    3. Create the tables and speak user using the script speak\sql\createspeaktables.sql ( SOURCE c:\Documents and Settings\user\Desktop\speak\sql\createsqltables.sql )
    4. Load sample data ( SOURCE c:\Documents and Settings\user\Desktop\speak\sql\Sample Data Scripts\CombinedSampleData.sql )
  6. Start apache in the XAMPP interface
  7. Browse to http://localhost/speak


Directory Tag
<Directory "c:\Documents and Settings\user\Desktop\speak">
    AllowOverride All
    Options All
    Order allow,deny
    Allow from all
</Directory>

Replacing c:\Documents and Settings\user\Desktop\speak with the location of your local copy of the SpEAK code.

Alias directive
Alias /speak "c:\Documents and Settings\user\Desktop\speak"
ScriptAlias /cgi-bin/ "C:/xampp/cgi-bin/"

Replacing the url in the first line with the your local SpEAK folder.

Software Configuration Management

Production Environment on STEM

References

Speech project at UNH Manchester