Project 3 Stories

CS 498-598, Extreme Programming - Summer 2001


  1. an employee assigns a task and a code to each half-hour worked. tasks are selected from a fixed set of tasks; codes are selected from a fixed set of codes. each code is 2-characters wide and classified as being either premium or non-premium. the premium rate codes are the following: DB, OT, SH, and SO. any other codes (including blank) are non-premium. (27 july 2001)

    Acceptance Tests

    From within a session, an employee enters task, code, and time information as if working on the current time-sheet.

    previous version

  2. the set of task-time sums is known as the daily totals. a daily total must have eight non-premium hours; a daily total not having exactly eight non-premium hours is incorrect. for any day monday through friday, a daily total of more than 24 hours is incorrect. incorrect time data should be highlighted to indicate potential problems. the presence of incorrect time data should not hinder other operations on the time data.

    previous version

  3. every two weeks employee sums the daily totals produced over the previous two weeks to produce a bi-weekly total. the bi-weekly total is one number; the task-time associations in the daily totals are ignored when producing the bi-weekly total. the employee computing the bi-weekly total must sign-off on it to indicate the daily and bi-weekly totals are complete and correct.

    previous version

  4. previous version

  5. before a a time sheet is signed off, the employee and the hierarchy of employee's bosses have read-write access to the time sheet, the administrator has read-only access to the time sheet. No one else has any kind of access to the employee's time sheet before sign-off. (20 july 2001)

    Acceptance Tests

    a company has 6 people: a boss, subalterns 1 and 2, workers 1 and 2, and an assistant. the subalterns and the assistant work for the boss; worker i works for subaltern i. the assistant is responsible for time-sheet management.

    represent this company in the time-sheet system and establish the proper access privileges among all workers in the company with respect to un-signed-off time sheets.

    previous version

  6. whenever an employee's time data is changed, the change is tagged with the old data, the employee-id of the person making the change, and the date and time when the change was made. (20 july 2001)

    Acceptance Tests

    given a time sheet, allow changes to be made to any any selected time datum on the time sheet.

    previous version

  7. an employee with read access to time data can print a hard copy of that time data. The data are printed on the standard time-sheet form.

  8. employees have access to computers running windows and networked together on the company's LAN. employees can work on time data from any networked windows system.

  9. employees identify themselves before they can access time data; the identification remains valid for the remainder of the session. each employee has an employee number, which is a five digit number, and a password. each employee can use only their own employee number and password. (27 july 2001)

    Acceptance Tests

    Show an employee presenting a matching id and password can log in. Show an employee presenting a mismatching id and password or something not an id fails to log in.

    previous version

  10. a properly identified employee is has available a list of employee time data to which access is allowed, as well as the date of the time data to display. time data are uniquely identified by employee number and bi-weekly pay-period ending date.

    Acceptance Tests

    Show that an employee can access their time-sheet data for some pay period.

    Show that employee A cannot access time-sheet data for employee B if A is not a secretary nor B's (transitively closed) boss.

    Show that secretary A can access time-sheet data for employee B.

    Show that employee A's boss can access A's time-sheet data.

  11. employees can enter their hours over the phone.

  12. after a a time sheet is signed off, the employee has read-only access to the time sheet; the administrator and the hierarchy of employee's bosses have read-write access to the time sheet, read-write access to the time sheet. no one else has any kind of access to the employee's data after sign-off. (20 july 2001)

    Acceptance Tests

    a company has 6 people: a boss, subalterns 1 and 2, workers 1 and 2, and an assistant. the subalterns and the assistant work for the boss; worker i works for subaltern i. the assistant is responsible for time-sheet management.

    represent this company in the time-sheet system and establish the proper access privileges among all workers in the company with respect to signed-off time sheets.

    previous version

  13. the task-report html form accepts a time period and task id, and generates an html report listing all the employees who worked on the given task for the given period and the total amount of time each employee spent on the task during the period. (11 august 2001)

    previous version

  14. task ids are 4 characters long. each employee has access to a list of valid task ids, which include the following
    5300
    5391
    53D1
    53E1
    FM00
    SICK
    VACN
    HLDY

  15. the user interface should present a reasonable approximation to the standard paper time sheet. (11 august 2001)

    Acceptance Tests

    all previously implemented functions should be accessable via the time-sheet-based user interface.

    previous version

  16. the daily totals must be computed no later than 24 hours after the day to which they apply.

  17. the complete set of change tags for any time datum can be made available for inspection; the initial entry of an datum is part of the change set for the datum. (20 july 2001)

    Acceptance Tests

    given a time sheet, present the list of change tags made to any selected time datum on the time sheet.

  18. employee access to the system is maintained as a session. the employee starts the session by entering his id and password. the employee takes some explicit action in the system (like clicking a logout button) in order to end the session. during the lifetime of the session, the system will honor permitted employee actions. (27 july 2001)

    Acceptance Tests

    Make the system available to employees so they can start a session, issue commands and end the session.

    previous version

  19. the session has a current time-sheet; all commands issued by the employee apply to the current time-sheet. the employee can select which time-sheet becomes the current one, and may change the current time-sheet as needed. there is no current time-sheet after log-in and before the employee selects a current time-sheet. if the employee selects an existing time-sheet as the current time-sheet, all data on the existing time-sheet is made available to the employee. if the employee selects a non-existent time-sheet, a new time-sheet should be created. (1 august 2001)

  20. no changes made to a time-sheet are registered until the employee saves the changes, which commits all changes made during the session since the last set of changes were saved. If the employee selects a new current time-sheet before saving changes, the changes are lost. (1 august 2001)

  21. an employee should receive a warning when issuing a command that could result in losing any unsaved changes. (1 august 2001)

  22. the select time-sheet screen queries the user for an employee id and password. the select time-sheet screen should be accessible from the login and time-sheet screens. when the user enters the requested data the system's current time-sheet is changed and the chosen time-sheet is displayed. (7 august 2001)

  23. document the system build and install procedure. Documentation should include system requirements and third party configuration information (such as for apache); include known limitations. document administration requirements; the files used, their purpose, and format. document the simple administration procedures; how to add a new employee or indicate one one person works for another. (11 august 2001)

    Acceptance Tests

    A person knowledgable in unix but unfamiliar with the time-sheet system should be able to install, set-up, and adminster the system using the documentation.


This page last modified on 11 August 2001.