Total Knowledge Projects Jobs Clientele Contact


Personal tools
From Total Knowledge
(Difference between revisions)
Jump to: navigation, search
(Spam cleaning)
(Teacher: Add more features to teacher description)
Line 560: Line 560:
* Allows named experts
* Allows named experts
* Sets payment for studying a course
* Sets payment for studying a course
3) Has access to check students' solutions of "human-controlled" problems
4) Marked as a teacher on all course-related communication tools.
5) Marking someone as teacher, automatically grants them moderator power
in all course-related communication tools.
=== Presenter ===
=== Presenter ===

Revision as of 18:07, 13 December 2006

Universe University. Specifications for Web Based Educational Environment




Universe University aims to answer to contemporary challenge for education. The core demand to educational system today, is to bring up thinking and creativity vs. pure informing and training, which has traditionally been implemented through Western schools since XVII century. If we find a way to bring up, say, math thinking, this means that our students do enjoy math, are interested in the subject itself vs. credits and other outer reasons. In this case, information, training, generally speaking, knowledge of traditional type will be acquired as a side effect of the educational process.

In order to accomplish stated above goal we create a very special environment with countless possibilities for creating of courses and studies.

Working Educational Principles

There are two major principles contemporary education should be based on, in our view: dialogue and problem solving. Correspondingly we want these to be implemented within Universe University in different ways.

Dialogue will be provided in the following fetures of the environment.

  1. Firstly, directly through different communication tools, which can be used in conjunction with work on studies or course development. We intend to build organic system of all suitable communication protocols to be embedded in the Universe University: direct email, mailing lists, news groups, message boards, chat rooms, blogs, wikis, etc.
  2. Secondly, we offer special feature for course building, which allows to put, what we call, parallel explanations for each single topic. That is, an author may use absolutely different explanations for a single fact, including those, which interpret it in opposite directions. Such an approach traditionally considered unacceptable, because a traditional course is built sequentially. However, sequential courses do not awaken thinking this way. If a student encounters different explanations for a single fact, this will rise questions, which is the first step in thinking.
  3. Generally, Universe University offers an environment to built courses of "open source" type. That is, different people may participate in a course construction, bringing in different approaches, stand points, understanding of a subject, and so forth. This alone develops definitely dialogic environment, attitudes and mood. On the other hand, those authors, who are not inclined to do the job collectively has in their disposal tools to do it alone.
  4. Universe University supposed to offer various tools for feedback on courses, single topics, problems, problem solutions, authors, and so forth, which is also a normal dialogic form.
  5. One more way featuring dialogue in UU is also unique, though functionally very simple component, which is called "Dialogue of Texts". Dialogue of Texts is not a course, or is not included in a course, neither does it includes courses. It is exactly, what it called: dialogue of texts, a collection of classical contradicting each other texts with some specific features.of This work of high level experts, scientists, scholars implies the same idea: to provoke thinking.

Problem solving will be provided in the following features of the environment.

  1. Each single topic of a course can feature blocs of problems of different levels of difficulty.
  2. A single problem may be featured by one out of at least five types of solution control by: single answer, multiple choice, solution template, semiotic model, custom problem description language.
  3. UU supposes to implement the generator of formalized classes of problems/exercises to ensure training of any level of perfection, whenever a course author find it necessary.
  4. A course may include built in testing, rating and work flow based on the pace of problem solving.
  5. UU allows to conduct cross-course problem solving based contests and rating system.

Programming Approach

The application is supposed to be built as a system, implementing: UMO (User Manageable Objects) and GSF (Generic System Functions). UMO are more or less close to programming objects. They represent functional possibilities to build courses and educational dynamics, which may be combined in different ways or exist independently. GSF also represent some functional possibilities, but on the system level. They are always here, although can be opt out.

User Manageable Objects - UMOs

Generic Object Features

Possible Objects

  • Course
  • Dialog of Texts
  • Through Problem
  • Topic
  • Explanation
  • Problem
  • Game
  • Exerсise
  • Text
  • Link to
  • Custom UMO

Necessary Features

Below features for Open Server are marked -O


  • Same object can be used in multiple courses without limitations.
  • Same object can be worked on by multiple users - depending on its author's assignment.
  • A course can be copied by a user for business purposes. In this case only proper attribution required (see Licensing).
  • UMO can be borrowed directly from an author, that is from the parent UMO or from the Structured Shared Repository

Stamp of Authenticity-O

  • It says, what this object is in terms of authorship:
    • An original + who is the author or
    • One derived from someone's original + who is the author and other info about the original + who is the editor or
    • A borrowed object + who is the author and other info about the original
  • It includes the time stamp of its creation.

Object Versioning-O

Let's say user X creates object O. The user Y uses O in his course. Now X changes O. Will the course include edited version of O, or original one? Ideally it should be up to Y to decide that. This leads us to the concept of object versioning. i.e. each change to an object creates a new version, and old one stays. When linking objects to each other (i.e. adding problem to topic) author decides which version to use.

Generic Necessary Features

   These are required by UU to create a UMO
  • Author
  • Title
  • Reference-link on the parent UMO, if any

For example Topic - to its Course, Explanation - to its Topic and further - to the course, etc.

  • Contents - link, list of child UMOs

Regardless type of a UMO it can include other UMO's. These, in turn, are listed in the parent UMO Contents (like a book contents). If no child UMOs created, Contents link is hidden from students

  • Keywords

Each UMO can say keywords essential to it and useful for searching for it. A UMO can be created if at least one keyword supplied by the author.

Optional Features

  • Work Flow (Prerequisites and possibilities) - for next version!!!
Each UMO can include or be included in a work flow:
    • Each UMO can say which other objects can be useful if aquired by a student beforehand, shortly - are prerquisites to study or exercise this one.
    • Each UMO can specify possibilities for further studies this object brings in.
    • Each UMO has property of being completed (by a student)
  The completness will be tested by dependent objects to implement the work flow.  
  • Faculties/Objectives

Each UMO can say what student faculties or other the UMO author's objectives it created for.

  • Outside References

Each UMO can refer a user to outside (not UU bound) sources related to the object.

  • Demographics
    • Usage in other UMOs
    • Usage by students
    • Usage by authors
  • Rating

Each UMO can be rated by users


Necessary Features

  • Choice of server:

Open Server or Proprietary one

  • Choice of access for students:
    • Free or Paid Course
  • Topic

A course can be created if at least one topic is supplied by the author.

Optional Features

  • Annotation
  • Tests
  • Competitions
  • List of experts


Necessary Features

  • Explonations

A topic can be created if at least one explanation is supplied by the author

 Each topic can have number of explanations. In this case, each explanation has some
 unique number, which reflects order to show explanations in explanation list for the
 topic. This number (together with difficulty level of explanation) will also affect
 which explanation is shown to a student by default.
 Note that both sequence number and difficulty level of given explanation are
 tied to the topic that includes said explanation, not to explanation itself.

Optional Features

  • Summary (Annotation)
  • Test
  • Blocks of problems of different difficulty levels


An author may write his own explanations or include chunks of classical texts. He may neatly explain some subject, ways of problem solving or make a discourse around a topic, research his subject instead of explaining. A author may make just one explanation for a topic, which is traditional way to build courses. However the app allows to build as many parallel explanations.

This feature may be used to provide:

  • Any number of short or detailed explanations, so that a student could use that one he needs.
  • Different approaches for the same subject to provoke dialogue between students and critical thinking.

Necessary Features

  • Title is <the same as of its Topic>dot<Specific title>
  • Number, starting with 1, incrementing by 1
 Number is really associated with Topic, not with explanation, as an explanation
 can be shared between different topics.

Optional Features

Text of the explanation


Necessary Features

  • Problem statement,
  • Solution and
  • Answer.
  • Choice of solution control
    • As of today, 5 solution control methods are being developed:

1. Single Answer

Student is presented with a problem statement, and a single one-line field,
where (s)he has to type his answer in. Student's answer should match the correct
answer (match can either case-sensitive or case-insensitive, and it could be
simple text, or a regexp)

2. Multiple Choice

Student is presented with a problem statement and a set of choices.
Choices can be either radio button set (in case only single answer is
allowed) or a check-box set (in case more then one answer could be
correct). In case of multiple correct answers, problem creator may
specify whether all answers have to be checked for solution to be considered
correct, or if any of them will suffice.

3. Template

Student is presented with a problem statement, and a problem solution
with blanks, which (s)he has to fill in. Each blank should match.

4. Generator driven full control:

a) Semantic Model
b) Custome/Language Driven Control

5. Human controlled

A student solves a problems and passes the solution in a required form to the teacher
that, in turn, passes comments to the student.
  • Level of dificulty

It is a number, starting with 1, incrementing by 1, but can go in opposite direction as well: 0, -1, etc.

Optional Features

  • Required time to solve

Work Flow - This is in discussion and to be implemented in the next version if any (see Optional Features)

The Idea

There must be an ability for an author to implement some educational scenarios comprising instructions or procedures to folow by a student or group of students. It can be based on different psychological foundations or just an author's experience.

Forms and Features

1. A work flow can be implemented in a form of:

  • A flow-chart or
  • Pseudocode, consisting of sequences, choices and cycles of actions to do or
  • Just a set of rules
  • It can be "virtual". That means it is invisible, may or may not contain controlling feature and controls a sequence of UMO offering to students so that they get aquired in certain order, but the order is not controlled by students.
  • A work flow also may include means of control whether a student or group of students follow the work flow.

Relationship with other UMOs

  • Work Flow can be attached to any object
  • Work flow can organize any objects, including courses


  • Test can be attached to any other UMO.
  • A test may include undetermined number of:
    • Problems,
    • Exercises,
    • Games
  • There can be Test Templates, for example:

5 randomly generated problems would represent a particular test.

For test problems only time allowed should be specified.

"PASSED" or "NON PASSED" grade should be assigned.

Points for "PASSED" grade should be specified for each test.

In order to get "PASSED" grade 6 times allowed to take a test.

The rate score ( RT ) should be assigned to each student after successful completion of test. (based on the time deduction principle, 10 sec = 1 point)

RT is a function of only time specified for the test.

In the case a student has RT not equal to zero, the system will let him/her to solve the general problems to improve their regular rating.( but only within this particular topic)


General Idea

A competition can be set on any UMOs of the same type

All Features are Necessary

  • Type of Competition in Terms of Time:
    • Continuous (e.g. problem of the day)
    • Real time
    • Long term rating (e.g. chess style mastership)
  • Types of Competition in Terms of Participants:
    • Competitors of the same type (individuals, classes, schools, etc.)
    • Competitors of mixed types (say, an idividual challenges a research lab)
  • Rules

Homework - To be discussed and implemented in the next version

  • A homework can be comprised from any UMOs?
  • A homework can be attached to any UMO?

Exercise / Games

A game or exercise may be included by the author in the course or topic for different reasons. It is not controlled in any way.

Through Problems

An UMO of the course level. They are problems of different level of difficulty, collected on any bases.

Necessary Features

  • Author - the person to start the collection.
  • Basis for collection
  • Problems in

Through Problem can be created if at least one problem is supplied.

Problem In

  • Necessary Features
    • Number, starting with 1, incrementing by 1
    • Links to previous and next if any
    • Presenter - the person to present the problem into collection
    • Author - the author of the problem, if available

Dialogue of Texts

Dialogue of Texts (DoT) is an UMO of the course level, that is a course independent object. They are classical texts compiled accordingly (see features)

Necessary Features

  • Basis for collection
  • Author - the person to start the collection
  • Interconnected text list
  • Text In

DoT can be created if at least one text is supplied

Content of DoT

Dialogue of Texts is organized set of texts cross-referenced on basis of arguments. Each dialogue has set of "points", and each text is broken into sections, that refer to these points. Dialogue can be presented to user in following ways:

  • One text at a time, annotated with links to relevant "points"
  • As list of "points", with references to places in each text where these points are discussed
  • As interleaving texts, for cases where arguing texts are organized similarly enough for that to make sense.

Text In

  • Features
    • Presenter
    • Author
    • Number, starting with 1, incrementing by 1
    • Links to all related texts in the Dialogue

"Link to" is an UMO (see below)

Link To

It is an object featuring:

  • Two linked texts
  • Their relationship, such as:
    • Contradicts
    • Develops
    • Complements
    • Repeats
    • Mocks
    • Custom


Just a piece of text loosely associated with a UMO

  • Necessary Features
    • Subject
    • Text body

Custom UMO

A user can create a custom UMO, which cannot be structured, but can have all general UMO features. Custom UMO can be included as a child in any other UMO

  • Necessary Features
    • Name (Category)
    • Description
    • Child UMOs

Custom UMO can be created if at least two child UMOs are supplied.

Generic System Functions


Universe University has to be accessible and functional on different languages. There are two important aspects of localization to consider

  • Localization of user interface
  • Localization of content

Locality to use when rendering objects and UI to users will be negotiatable using standard HTTP content-negotiation protocol, but will be forcable through personal user settings.

User Interface Localization

We will (probably) use gettext system for translations. .po files will be (as everything else in our Open Source application) pubic, and translations will be contributed by interested users.

Content Translations

There will be special role: "translator". This person will be listed as such for given object (along side with authors). Translator will have full editorial access to translations of object for his language, but will have no administrative rights. There will be standard set of tools for creating and editing tranlations of object.


  • Translation of an object is translation of text of all core object data into a given language. Specifically, that does not include any dependant objects.
  • Main object language is language in which original object is written, and in which new versions can be created.

Translation vs. Versioning

Object tranlation does not constitute a separate version. When translations are added/removed/editied, they are implied to be a minor edit. Translations will have their separate "publish" flag though, to avoid making an unfinished translations visible, when working on an object which main language was already published.

Editing Translations

When editing a translation, a separate, temporary copy is created, and that copy is the one that work is being done on. It can be saved across editing sessions. Once it's ready, translator will "publish" it, at which time this copy will replace any existing translation for given version of given object in given language.


A Host of an instance of the Universe University has tools to develop and enforce certain policies regarding contents and other features of courses and other objects created and offered to the general public at the Hosts' servers.

User Types


1) An entity to create and manage UMOs.

2) Has tools to implement the following policies regarding co-authorship and management:

  • Sole authoship
  • Allows named co-authors
  • Allows general public to participate in editing
  • Allows named experts
  • Sets payment for studying a course


1) The expert level access is granted by an author.

2) Expert has right to consult others regarding the course. This specifically means the expert is listed as such.


1) An entity to copy and manage courses.

2) Has tools to implement the following policies regarding management:

  • Allows named experts
  • Sets payment for studying a course

3) Has access to check students' solutions of "human-controlled" problems

4) Marked as a teacher on all course-related communication tools.

5) Marking someone as teacher, automatically grants them moderator power in all course-related communication tools.


A person to present a Text in a Dialogue of Texts or a Problem in a Through Problem


See Localization

Paid Student

Takes a course for payment

Any Student

  • Takes free courses
  • Searches for UMOs

Contest participant

 For out-of-course contests, one needs to sign up, in order to participate, and
 signing up grants the privelege.


An organization or individual to sponsor UU


a) An author can set up payment for a students on per course basis with a drop-off grace period. b) In this case the author has choice of payment to UU either

  • Flat rate per course, or
  • Flate rate per student, or
  • Commissions

c) No other transactions (except for sponsorship) are possible respecting Open Server

d) Flate rate service charge is added to any author on Proprietary Server

Variants for subscription management

  • Regular Revisions (say every 6 mo)
  • Price, picked by subscriber

Structured Shared Repository

  • Is a very special feature of the UU. It is the repository of all created objects ever.

UMO gets automatically from a course into the Repository or can be created specifically for the repository depending on its author.

  • A UMO can get in one out of three storages:
    • Featured Storage
    • General Storage
    • Disagreement Storage

Featured Storage

This is repository of shared objects with high ratings. Formulae for object ratings are TBD. Following categories are available. Each category may have its own separate rating formula.

  1. Classical problems
  2. Border line subject-to-subject problems
  3. Classical texts
  4. Border line science-to-life problems
  5. Games
  6. Teaching techniques
  7. Work Flow
  8. Explanation
  9. Exercise

General Storage

Items from the General Storage move up into the Featured storage by getting rated.

Disagreement Storage

Stores submissions disapproved by the Masters Board

Masters Board

It is a wikipedia-type board comprised from authors and experts to determine where a UMO belongs Reviews of automated submissions and special submissions

Problem Generator

Problem Control Tools

  • Single Answer
  • Multiple Choice
  • Template
  • Semantic Model
  • Custome/Language Driven Control

Editing Tools


  • Templates exist for any UMO development and described in the Page Flow section
  • Developing directions (links)
  • More complex/hard to guess problems (links)
  • Easier problems (links)
  • Off topic gigs (links)
  • Images, diagrams, charts, other graphics
  • Videos
  • Sound

Possibility to link any unit to any course

(For Open server only)

Each entity in course can be included into any other course or linked to some other places, subject to attribution to authors and sources.

Tools to make turning multiple courses into one easier

(For Open server only)

May include tools for analyzing tree structures, and pointing out similarities to authors, etc.

Locking-unlocking for editing

Simple features to make sure no conflicts are created during simultaneous work on courses.

Object versioning

Every object will have versioning history. Version is created every time an author indicates that this text is ready for inclusion. Until that time any changes are saved, but are not visible to anyone but authors.

Other users of the object get notified the object has changed. They can choose to upgrade the object or leave it as is.

If a user of a object edits the object or builds a new one upon the used one it is up to this user to consider himself an author or an editor. In any case everyone using the original object gets notified and the new or edited object bears its history: which object it is built upon.

References to external sources

Rating System


1. Voting: on courses, problems, authors, messages, etc.

2. Functional: on people, participating in through subject chess mastership type rating

General user rate formula

It is a function of:

1. Fact of growing

2. Level of difficulty of problems

3. Frequency of participation

4. A single problem solving time

5. Rating of courses taken

6. Other factors

Specific user rate formula

It is a function of:

1. Should be around 50 for every topic in the course.

2. Points for the problem - N (m, k, l, p), where m - the level of the course ( 0 < m < 3); k - the number of the theme within the course; l - the level of the problem ( 0 < l < 4 ); p - the number of the problem within the course ( 0 < p < 50).

3. Correspondence: 0 < N ( m, k, 1, p) < 40; 40 < N (m, k, 2, p) < 65; 65 < N ( m, k, 3, p) < 90; 90 < N ( m, k, 4, p ) < 100.

4. Rating RG is a function of average amount of:

5. Points of the last five problems chosen,

6. Overall points,

7. Deductible points,

8. Levels of courses and problems taken,

9. Communication,

10. Activity.exercise

Communication Tools

We intend to use all available Open Source communication tools

List of tools

  • Blogs
  • Forums
  • Wikis
  • Chat Rooms
  • Mailing Lists
  • Message Boards
  • Other

Object Rating

E-Bay style rating of any UMO

PHP-doc style comments

Each entity in course can have set of publically viewable notes attached to it, that anyone can add to.

?The notes are moderated by?

Default Tools

  1. UU level mailing list, forum and wiki.
  2. Each course generates mailing list, forum and wiki for students
  3. A course, when started or got completed, sends message on UU mailing list and UU forum


  • Each UMO bears publically accessible statistics of:

1. Visiting

2. Attendance

3. Revenues

4. Rating

5. Participations/Results in/of within/out UU contests

6. Usage in other courses

7. Usage out of UU

Group Admin. Tools

  • This section supposed to be developed (but is not yet) in order for UU to be used by groups and organizations of any type.
  • We need some form, posiibly wiki, to get requests from organizations about this section

Search Engine & Lists

1. All items in the lists below go with related "demographics"

2. All lists are cross referred

3. Lists

  • All objects
  • All courses, including languages
  • All topics
  • All problems
  • All languages
  • All course subjects
  • All authors, teachers, experts, students, etc.
  • All schools w. their level of participation
  • All groups w. their level of participation
  • All of the above associated with a user

Business Assumptions

Open Server

  1. The general condition to use the Open Server is that courses and any other objects created here fall under Authoright license (
  2. Specifically this means all courses created at the Open Server can be copied and offered to the audience on any conditions with the only requirement for proper attribution to the authors and original source.
  3. Any other objects from a course or General Repository can be used to create another course.
  4. Authoright driven references get technically implemented and enforced by the application.
  5. Using Open Server for creation of a course is free.
  6. However, offering a course for payment results in certain payment to the host.
  7. A course or any other object created at the Open Server cannot be tacken away except for those cases when its contents or any other feature contradicts the law or the Host policy. The decision to remove an object from the Open server is at the Host's discretion entirely.

Proprietary Server

  • An author can create here a "closed source" course, which means that neither course, nor any of its object can be used by another author.
  • The Proprietary Server is a paid service.
  • If an author copies a course from the Open Server on the Proprietary one this does not affect in any way the prototype or its usage on the Open Server. All proper attributes are required like in all other cases.
  • The same applies to any object created at the Open Server and copied to the Proprietary Server: free usage of the prototype on the Open Server goes on unaffected.
  • Any object created at the Prprietay Server can be removed by its author at his own discretion.