O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

ReviewRamp Technical Presentation

903 visualizações

Publicada em

A technical introduction to ReviewRamp, an application for collecting and reviewing on-line submissions.

Publicada em: Tecnologia
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

ReviewRamp Technical Presentation

  1. 1. ReviewRamp Submit it... Review it... Decide! Jonathan Linowes Parkerhill Technology Group NH Ruby Group, January 15, 2009
  2. 3. ReviewRamp <ul><li>SAAS application for collecting and reviewing on-line submissions </li></ul><ul><li>e.g. business plans, conference paper proposals, grant applications </li></ul><ul><li>Owners create projects with unique submission forms, review scoresheets, and summary reports </li></ul><ul><li>Each account like its own website: private users, database, pages, etc. </li></ul>
  3. 5. ReviewRamp: Usability Objectives <ul><li>Look and feel like a desktop app </li></ul><ul><li>“ No brainer” simple to use </li></ul><ul><li>Visually uncluttered </li></ul><ul><li>From signup-to-live in a few clicks, via built-in templates and wizards </li></ul><ul><li>Extremely customizable, with reasonable constraints and intelligent conventions </li></ul><ul><li>Complexity hidden under-the-hood </li></ul><ul><li>Accessibility-ready </li></ul>
  4. 6. ReviewRamp: Implementation Objectives <ul><li>RESTful protocols (with exceptions/extensions) </li></ul><ul><li>Scales to thousands of projects, hundreds of submissions, handful of reviewers (i.e. not massive scale) </li></ul><ul><li>Works well with javascript disabled; sweetened with javascript enabled </li></ul><ul><li>Full test coverage with rspecs and stories </li></ul><ul><li>First, get it to work. Then, get it to work better, faster </li></ul>
  5. 7. ReviewRamp Resources Membership Review Submission User Account Project Page Field Fieldset Dynamic Model
  6. 8. Account <ul><li>has many users </li></ul><ul><li>has many projects </li></ul><ul><li>has one owner, and billing </li></ul>
  7. 9. Project <ul><li>has many pages </li></ul><ul><li>has many members </li></ul><ul><li>has many submissions </li></ul><ul><li>has many reviews </li></ul><ul><li>has configuration options </li></ul><ul><li>has notification options </li></ul><ul><li>has layout, display options </li></ul>
  8. 10. Membership <ul><li>Users unique to each account </li></ul><ul><li>Memberships associate users with projects </li></ul><ul><li>Roles == authorization </li></ul>
  9. 12. Page <ul><li>Static content </li></ul><ul><ul><ul><li>text, image, download, fieldset </li></ul></ul></ul><ul><li>Navigation (hierarchy) </li></ul><ul><li>Composited (tabbed nav) </li></ul><ul><li>Authorization (permissions) </li></ul><ul><li>Data container </li></ul><ul><ul><ul><li>fieldset, RESTful, resource, nested </li></ul></ul></ul><ul><li>Data filters </li></ul><ul><li>Page builder GUI </li></ul>
  10. 14. Fieldset <ul><li>Sets of fields <=> dynamic_attributes </li></ul><ul><li>View types: form, show, list </li></ul><ul><li>implemented as </li></ul><ul><ul><ul><li>has many fields </li></ul></ul></ul><ul><ul><ul><li>view partials and helpers </li></ul></ul></ul><ul><ul><ul><li>advanced FormBuilder helper </li></ul></ul></ul><ul><ul><ul><li>other helpers </li></ul></ul></ul><ul><li>Supports nested references, n deep </li></ul><ul><li>Fieldset builder GUI </li></ul>
  11. 16. Routes RESTful but unconventional <ul><li>subdomain as account </li></ul><ul><ul><li>http://myacct.reviewramp.com </li></ul></ul><ul><li>project by name implied </li></ul><ul><ul><li>http://myacct.reviewramp.com/myproj </li></ul></ul><ul><li>page by name implied </li></ul><ul><ul><li>http://myacct.reviewramp.com/myproj/somepage </li></ul></ul><ul><li>resources under page </li></ul><ul><ul><li>http://myacct.reviewramp.com/myproj/somepage/submissions </li></ul></ul><ul><ul><li>http://myacct.reviewramp.com/myproj/somepage/submissions/123 http://myacct.reviewramp.com/myproj/somepage/submissions/123/reviews/4 </li></ul></ul>
  12. 17. http://parkerhill.reviewramp.dev:3000/poetry_contest/ poems_reviewer-my_scoresheet/submissions/62/reviews/my/edit
  13. 18. Demos <ul><li>Project settings </li></ul><ul><li>Page builder </li></ul><ul><li>Fieldset builder </li></ul><ul><li>Submitter </li></ul><ul><li>Reviewer </li></ul>