Survey Web App. - first web application ever build to fulfil requirements of Assignment 5 and 7 in SEG2105 - Fall 2014.
Switch branches/tags
Clone or download
getaclue Updated ReadMe
Took most of the text from the final document that was submitted with the source code.
Latest commit e1b8594 Dec 9, 2014
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
bin
config
db
lib
log Empty Rails4.2.0.beta4 project Nov 11, 2014
public
spring
test
vendor/assets
.gitignore
Gemfile
Gemfile.lock
Procfile
README.rdoc
Rakefile
config.ru

README.rdoc

Survey App (As submitted - Assignment 7 - SEG2105 - December, 2014)

Preview

Initial proposal: “A web application that will fulfil organization (ex: university classroom) attendance through a survey system.”

In the original proposal, we had a specific product (a survey application) with a specific goal (classroom attendance). We believe that the original scope of design was too narrow. Therefore, our deviation in the final project was not trivial. We decided to create a generic application that can be adapted to suit our specific needs. By following a more global design, we have a stable project that can be tailored to various clients.

We closely followed the proposed requirements, use cases, and the UML diagram. We did add numerous use cases and changed a few attributes in the UML diagram.

Development

Neither of the team members had any previous experience developing web applications, using Ruby, Ruby on Rails, or using a database. Moreover, we had no experience with any version control systems.

The app was modelled using the read-only interface pattern. We had two types of users: a super-user and a regular user. A super-user is any user that can create, modify, and delete any part of a survey; whereas, a regular user is any user that can only participate in a survey. Therefore, a regular user gets to view only the read-only survey.

Core Dependencies

  • gem 'rails' (4.1.5) - however, the gem file lists 4.2.0.beta4 as the project began following a tutorial

  • gem 'bcrypt' (3.1.7) - for user Auth

  • gem 'foundation-rails' (5.4.5.0) - for layout design

  • a databse - sqlite3 in development || pg in production

  • a web-server - unicorn