Requirements by WIENFLUSS

Author:Michael Stenitzer <stenitzer@wienfluss.net>

Structures and Administration

Project-Assignment

  • Clients
    • Projects
      • Phases
        • Tasks

A template-system for phases including the corresponding tasks would be great. These templates could be assigned to projects.

Project-time tracking

  • User (required)
  • Date (required)
  • Duration (required)
  • Project / phase / task (required in deepest available level [1])
  • Text (optional / required [2])
  • Working-time class (e.g. normal, overtime, business trip, assembling, ...)
  • Accounting class (hourly rates)

Working-time tracking

There is maximum one working-time entry per day, interrupted by any number of breaks.

  • Working-time: start, end (required)

    Attention

    the end time can fall to the next calendar day. Should the first break during the next day automatically end the working-time entry for the current day?

  • Breaks: start, end

  • Duration vacation times

  • Duration illness, consultation, official tasks, special leaves, special holidays (by religion), ...

  • Working-time calendar [3] (workday, weekend, holiday, ...)

Working-time classes

Defined by the administrator, optional.

  • Types (normal, overtime, business trip, assembling, ...)
  • Description
  • ?

Accounting classes

Defined by the administrator, optional.

  • Types (hourly rates or similar)
  • Description
  • ?

Working-time calendar

  • Types defined on a daily basis: workday, weekend, holiday
  • possibly in iCal or similar standard format
  • possibly defined by rules
  • export/import functionality
  • manageable by the administrator

Clients

Defined by the administrator, optional.

  • Name
  • ?

Projects

Defined by the administrator, required.

  • Short name
  • Name
  • Status: active, inactive
  • Type: internal, external, ...
  • Accounting: by effort, lump-sum
  • Description required? (maybe inherited)
  • User constraints
  • Possible further properties:
    • flag: support billing on a regular basis
    • end-date
    • accounting period
    • target date for projects / phases / ...

Phases

Defined by the administrator, optional.

  • Name
  • Status: active, inactive
  • Accounting: by effort, lump-sum
  • Description required?
  • User constraints

Tasks

Defined by the administrator (?), optional.

  • Name
  • Status: active, inactive
  • Accounting: by effort, lump-sum
  • Description required?
  • User constraints

User Management

  • ???

Optional features:

  • Target working-times (per workday)

    Attention

    for some employment statuses this might depend on th weekday.

  • Vacation quota

  • Overtime budget

Interfaces

The entry interfaces should complement each other and be usable by personal likings or current needs.

General requirements:

  • learning: current entry values (last used projects, ...) are automatically proposed by the system
  • flexible: the system can be used on different interfaces (e.g. mobile)
  • very good keyboard-, mouse- and touchscreen-support: shortcuts for keyboard-users, least possible keyboard usage for mobile users
  • visual feedback for current status: current recording of working-time or break; project-times already assigned to the workday?
  • the different interfaces (time-tracking, attendance-monitoring, ...) should be interweaved synergetically.

Time-tracking

The user captures his working-times and project-times (usually ex-post) via an online interface. The capturing is for the current day by default but optionally also for any past days.

Project-time tracking

  • Select project, phase and task
  • Assign time
    • possibly in different time units (quarters of an hour, ...)
    • via a spinbox (+/-)
  • Textual description
  • Set further optional properties

Working-time tracking

  • Start- and end-time
  • Breaks: start- and end-time
  • Special times

Tracking of special times

User captures times of absence for longer periods solely for workdays (e.g. vacations or illnesses).

  • Start- and end-date
  • Hours per day

Time recording

During a workday a user records working-times, breaks and project-times directly. Implementation via an online interface or optionally with an app (desktop or mobile).

  • Start / stop / break for working-times
  • Start / stop for project-times
  • Direct editing / correction of recorded times is possible

Attendence monitoring

Companies / departments can view the current attendance status of employees via an online interface.

  • Static overview of all employees
    • where applicable with additional information: name, initials, phone, room
    • where applicable with optional information of the user
  • Monitoring
    • not yet attendant
    • working
    • on break
    • closing time
    • absent (including optional message)
  • Batch capturing of absence-messages

Reporting

Use-cases:

  • Working-time controlling
    • evaluation of employees’ working-times for arbitrary periods
    • use by employees and administrators
  • Working-time settlement
    • goal is the evaluation and settlement of employees’ working-times for one month for the payroll accounting
    • ideally working-time entries for an already evaluated period cannot be edited anymore
    • use by administrators
  • Project-time controlling
    • evaluation of project-times for single projects for arbitrary periods and arbitrary employees
    • use by employees and administrators
  • Project-time controlling overview
    • aggregation of captured project-times for all active projects (possibly grouped by phases)
    • use by administrators
  • Project-time settlement
    • goal is the evaluation and settlement of project-times for arbitrary periods
    • ideally project-time entries for an already evaluated period cannot be edited anymore
    • it should be obvious which periods have already been evaluated
    • use by administrators

Questions & Considerations

  • Do we need a possibility to save certain queries / reports?
  • Do we need a possibility to set evaluation-points for certain queries / reports (reminder)?

Possible interfaces:

  • Project-accounting, invoicing
  • Reminder for project-settlements
[1]
  • if no phases and tasks are defined, assignment on project level is sufficient.
  • if phases and tasks are defined, selecting them is mandatory.
[2]depends on project settings
[3]can be managed in a calendar