Reactivity
is built on top of a set functional fundations described here.
They define the fundamental business objects manipulated by the users and their dependencies.
Obviously Reactivity
manages the user
who needs to create an account in order to use it.
There is no particular disposition in the definition of a user
that differs from the common considerations encountered in softwares.
The organization
is a working space created by a user where the activity is managed.
The creator of an organization
is free to invite other users
to join it and interract with them inside that space.
Artifacts
are objects created by the users to represent their activity.
A fundamental property of the artifact is the date
, whose meaning is up to the user.
The rest of their structure is composed by a set of fields.
Some of the fields are immutable, can be mandatory and pre-defined by Reactivity
.
Those particular fields will be mentionned inside the Category
section.
This section will also explain how additional fields can be defined at organization level by the users to track additional activity information in the artifacts.
Categories
are activity qualifiers.
They can be defined as a catalog of free values at organization
level.
A category
can be used to tag an activity and is identified as a field of the artifact, marked as optional or not by the user
.
This offers filtering and grouping capabilities.
Reactivity
defines built in categories with a data source based on the organization’s state:
-
User: the
user category
is an artifact’s field optionally filled that is composed of the users associated to the current selected organization. -
Status: a
status category
is an artifact’s field optionnally filled withTODO
,WIP
orDONE
value. -
Interval: an
interval
allows to group the activity byday
,week
,month
,hour
orminute
. Thiscategory
can’t be associated to an artifact but allows atable view
to compute itsdate
, as described in theTable
section.
Following rules are defined for the categories
:
-
User
andStatus
categories can be customized at organization level. Additional items can be added with free labels and pre-defined items can be renamed or removed. -
If the
day interval
category is used, the date of the artifact is automatically computed according to the associated day.
A view
is a representation of the activity produced over a period of time by the users
inside an organization
.
This fundamental object defines from when the activity of the organization
will be viewed:
-
A
start date
can be explictely defined. In that case, aend date
can be optionally specified. If noend date
is defined, the period covers all the activity newer than thestart date
. -
If no
start date
is defined, the n lastartifacts
are displayed.
Optionally the view can be also associated to a category that will be used to filter more the activity to display.
Artifact
created in that view will be automatically associated to that category.
Many views
can be defined inside an organization
.
A view
is also typed with the structure of data that is ready to consume.
Those structures have a immutable definition and are enumerated by Reactivity
for all organizations
.
A view
can be marked as private by the user
who creates it in order to not make it visible by the others.
A list
is a basic data structure that types the view that displays the artifacts
on several lines.
A line can be configured to display some categories and hide some other information.
A table
is a data structure that can type a view
.
A table
displays the artifacts
in a matrix with one dimension (column) or optionally with two dimensions (columns + rows).
Columns and rows are defined with the available categories
(user
, status
, interval
and additional catalogs defined in the organization).
When the categories
are used to list the columns or the rows, their values are automatically associated to the artifact regarding its position inside the table
.
When the artifact
's fields values corresponding to the category
used in the columns and the rows are not defined, artifacts
are displayed outside the table
.
A zone dedicated to that purpose is visible and is part of the table
type.
When an interval category
is used to define the columns or the rows, the artifact date
is automatically computed with the associated value that has been obtained relatively to the starting date
of the view
.
Time series
is a data structure that type a view
.
The values correspond to the result of an operation that has counted the number of artifacts
by grouping them with a particular category
value.
The result of that transformation allows the view
to let the user
chose between different kind of chart (line
, pie
, bar
, gauge
, etc).
Following fundamental objects have been defined:
-
User
: people who interract withReactivity
to manage their activity -
Organization
: the space whereusers
manage their activity -
Artifact
: the object that reflects theuser
activity -
View
: the way activity is viewed byusers
and which activity of theorganization
-
Table
orTime series
: a data structure selected by theview
according to its needs to display the data
A set of basic mockups illustrates how the different objects can be managed through the UI.