
  WebCollab Basics
 =================

      Beginning...
      ------------

/"In the beginning the Universe was created. This has made a lot of
people very angry and been widely regarded as a bad move."/
  -- Douglas Adams:  Hitchhikers Guide to the Galaxy (1989)


A quick overview to getting started with WebCollab.


      Users
      -----

/"In Penny Lane there is a barber showing photographs, of every head
he's had the pleasure to have known."/
  -- The Beatles: Penny Lane (1969)


Each user has their own login name and password.  Users can only alter
items that they own, or that they administer.  This means that
individual users cannot make changes to other users' items.

There are several special types of users:

    * Users can be made into administrators (also known as
      'superusers').  This overrides the normal access controls; an
      administrator can alter or edit anything.
    * Private users are discussed more fully below in the Private User
      section.
    * Guest users have read only rights.  They cannot create
      projects/tasks, or otherwise participate in the site; however
      Guest Users can leave Forum posts.


      Projects
      --------

/ "That's one small step for a man, one giant leap for mankind"/
  --  Neil Armstrong (Apollo 11 Moon landing) (1969)


Projects are the basic building blocks of WebCollab.  Projects are any
definable quantity of work that has a number tasks below it. The
definition of a project is really only limited by your imagination. It
can be a multiple number of different small projects, or it can be
sub-projects within a much larger overall project.

Projects can be classed as:

    * 'Planned' - Not yet started, and no fixed end date.  Good for
      bookmarking future work.
    * 'Active' - Project underway, and has an end date deadline.
    * 'On Hold' - Can't be finished.  No fixed end date.
    * 'No deadline' - No set deadline for project yet.

WebCollab does not have precedents for project start dates.  This means
that a project cannot be set to automatically start when another project
is completed.  While this is an integral part of critical path method
(CPM) tools, it does not seem to be a hindrance in collaborative websites.


      Tasks
      -----

/ "Take it to the limit, take it to the limit one more time."/
  -- Eagles: One of these Nights (1975)


Tasks are the individual assignments within the project.  Tasks are
assigned to a user, and have a completion date. They can be classed as:

    * 'Planned' - Not yet started, and no fixed end date.  Good for
      bookmarking future work.
    * 'New' - Set up, but maybe not assigned to anyone yet.  Has an end
      date deadline.
    * 'Active'- Task underway, and has an end date deadline.
    * 'On Hold' - Can't be finished.  No fixed end date.
    * 'Completed' - The user has completed the task.

In the main project summary page, the projects are all listed. 
Uncompleted tasks are listed below each project listing, and a graphical
colour bar indicates the percentage completion of the tasks. If a task
is not completed by the deadline date, the 'late' graphic will be displayed.

Clicking on the task or the project, will take you to the task listing,
where the details are shown. Owners of the task can edit the task, mark
it as finished, reassign it someone else, or even delete the task. 
Administrators have universal rights and can edit or delete any tasks.

When the 'Usergroup can edit' check box is selected AND a Usergroup is
chosen, anyone in the selected usergroup can edit the task or project.

Also, on the task listing page is the user forums and file upload
areas.  These are specific to each task or project.  Again the task
owner has editing rights, while the administrator can do anything.

WebCollab will accommodate sub-tasks below tasks.  The task navigation
bar on the left will indicate which level you are viewing.


      Deadlines
      ---------

/ "I love deadlines. I specially love the swooshing sounds they make as
they fly by."/
  -- Douglas Adams:  Hitchhikers Guide to the Galaxy (1989)


WebCollab is deadline based.  Project performance is measured against
calendar dates, and there is no time accounting (hours worked).


      Usergroups
      ----------

/ "No man is an island, entire of itself; every man is a piece of the
continent, a part of the main..."/
  -- John Donne (1572-1631)

Most projects or tasks have a group of users working together in one
specific area.  A Usergroup is a group of users who share a similar work
area.  Notification emails can be sent to the usergroup, rather than
just an individual user.

Usergroups can also be used to control access.  Access can be limited to
just the Usergroup; in which case other users won't see the restricted
project/task, or be able to access them.  The access restriction can be
applied at project or task level.

When the 'Usergroup can edit' check box is selected AND a Usergroup is
chosen for an item, anyone in the selected usergroup can edit that
particular task or project.

Where applicable, Usergroups also get their own private forum boards
with each task and project.


      Taskgroups
      ----------

/ "If I have seen further it is by standing on shoulders of giants."/
  -- Sir Issac Newton (1675)


The differences between Taskgroups and Usergroups is not easily apparent
to first time users. However the difference is marked; Usergroups
control access and information flow; Taskgroups are merely for making
the task listing more readable.

When a project grows to have a number of child tasks, the listing can
appear long and not very readable.  By putting tasks into a Taskgroup
the list will be automatically grouped into subsections (by Taskgroup)
and be much more readable.  Tasks that have no Taskgroup assigned will
be grouped as Uncategorised.

To summarise:

    * If no tasks in a project have a Taskgroup set, the task listing
      will be a long list.
    * If at least one task has the Taskgroup set, all the tasks will be
      listed by Taskgroup.


      Private Usergroups and Private Users
      ------------------------------------

/"LECTOR, SI MONUMENTUM REQUIRIS CIRCUMSPICE"/
 /(Reader, if you seek monument to him, then look around you)/
  -- Inscription on the small, unadorned grave of British architect Sir
Christopher Wren in St. Paul's Cathedral, a building which he designed.
(1632-1723)


Usergroups and users can be individually set as private by an administrator.

    * *Private Users:* Can only be seen in drop-down menus and user
      lists by other users that are members of the same usergroup.
    * *Private Usergroups:* Can only be seen in drop-down menus and user
      lists by other users that are in that usergroup.

Private usergroups and private users can still be seen in publically
accessible projects and tasks (i.e. global access is allowed). For total
privacy make all projects and tasks private as well.


      Programming Quirks
      ------------------

/ "'The time has come,' the Walrus said, 'to talk of many things: of
shoes - and ships - and sealing wax - of cabbages - and kings - and why
the sea is boiling hot - and whether pigs have wings.'"/
  -- Lewis Carroll (1832 - 1898): Through the Looking Glass


    * If an existing project is put 'On Hold' or 'Planned', any
      uncompleted existing tasks in the project will also be put to 'On
      Hold' or 'Planned' respectively.
    * If a task is added to a project 'On Hold' or 'Planned', that task
      will automatically be put to 'On Hold' or 'Planned' respectively.
    * If a project changes state from 'On Hold' or 'Planned' to an
      active state ('New' or 'Active'), any uncompleted existing tasks
      matching the project's previous inactive state, will automatically
      change to 'New'.
    * When tasks have child tasks (nested tasks), the tasks will be
      sorted on Taskgroups within each child layer.
    * Private usergroups and private users can still be seen in task
      listing. To make them totally private, set the respective
      project/task global access to off. 

