Actions

Database Storage Engine Project Meeting Log: Difference between revisions

From LimeSurvey Manual

No edit summary
(No difference)

Revision as of 19:18, 21 May 2010

On this page you can find the decisions made at the DBSE project meetings.

2010-05-14

  • We will use a plug-in like structure for meta-data linked to questions. (as decided before, questions will also be implemented in a plug-in like structure in order to make adding new types of questions easy)
  • A prototype of the system will be implemented before the GSOC midterm deadline.
  • A basic version of the API will be posted on the forums in the following weeks to give the community plenty of time to give input on what interfaces should be provided. We will focus on building the basic API. It will be possible to add more advanced statistical procedures later on.

2010-05-21

  • The basic API will be ready by Monday (05-24) and posted on the wiki page in order to discuss it at the developer meeting the day after. This way we can get developer input before releasing the API in order to get input from the community.
  • The API will support operations for ALL database layouts. Because some features are possible in only some kinds of databases, there will be a "supports" function and flags for the supported features.
  • We will not support looping in the flat database layout since this will lead to sub-structures in the database. This leads to inefficient retrieval of answers, which defeats the reason to use this database structure.
  • Added a TODO to the list for the database designs: make sure we have solutions for all LS1 question types. (see Question types)
  • Classes QuestionType, Structure, Section, Survey will inherit from an Element class. This class will support conditions. This means it will be possible to place conditions on questions, structures, sections and surveys (for example only people with local ip addresses can answer the survey).
  • More generally we decided LS2 should be able to support single question surveys (for example for websites wanting to use LS for a poll-system). To enable this, a secondary controller can be made which will support basic operations like answer() and getAnswers().

NOTE: we would like to point out the DBSE controllers will not be what CakePHP calls "controllers". The controllers will be actual controllers for internal coding use and will not be accessed directly through the website.