up previous next contents
Up: Use Cases Previous: Save a ACME Job Next: Clone a ACME Job   Contents


Delete a Job

In this use case a user deletes one or more jobs.

Notes

  1. Administrator has been removed as an actor, and cannot participate in this use case

Actors

  1. External user

Pre-Conditions

  1. ACME is running on the user's system.

Basic Path - User deletes one job

  1. The user uses the "List Jobs" use case
  2. The user selects one job they want to delete
  3. If security is enabled
    1. If the user does not have "delete" permission
      1. The system does not enable the Delete option for this job; stop here
    2. Else, if the user does have delete permission, continue
  4. Else, (if security is not enabled) continue
  5. The system makes the Delete option available to the user
  6. The user selects the Delete option
  7. If the system detects that a user has a lock on a module for this job:
    1. The system displays a message indicating "The job cannot be deleted at this time because the MODULE_NAME module is locked by 'USERNAME'"
    2. The use case is stopped here
  8. Else, if the system detects that a user has an information lock on the job:
    1. The system displays a message "The user 'USERNAME' currently has this job open, and it cannot be deleted."
    2. The use case is stopped here
  9. Else, continue
  10. The system prompts "You are about to delete 'JOBNAME' - are you sure? (y/n)"
  11. If the user selects "No"
    1. The system cancels the delete attempt
    2. The job in the list remains highlighted
  12. Else, if the user selects "Yes, I am sure", continue
  13. Else, the system removes the job and all job details from the database
  14. The system refreshes the list of jobs

Post-Conditions

  1. The selected job is removed from the ACME system
  2. The "job list" screen is updated if it is visible

Alternative Path #1, User selects multiple jobs to delete

  1. The user uses the "List Jobs" use case
  2. The user selects two or more jobs that they want to delete
  3. If security is enabled
    1. If the user does not have "delete" permission
      1. The system does not enable the Delete option
      2. (The use case stops here)
    2. Else, if the user has delete permission, continue
  4. Else, if security is not enabled, continue
  5. The user selects the "Delete Job" option
  6. The system prompts "You are about to delete the following jobs" (followed by a list of job names); "Are you sure?"
  7. If the user selects "No", the system cancels the delete attempt, and the jobs remain highlighted
  8. Else, if the user selects "Yes, I am sure"
  9. The system deletes all the jobs where no job or module locks exist
  10. If there are any jobs that have informational locks or module locks
    1. The system displays a message indicating "The following jobs are locked and cannot be deleted at this time", followed by the short description for each job, the module that is locked, and the user that has the lock
  11. The system refreshes the list of jobs

Post-Conditions

  1. One or more jobs are removed from the ACME system
  2. The "job list" screen is updated if it is visible
  3. Jobs with informational locks or module locks are not deleted

"Used" Use Cases

  1. Search/List Jobs

Other Requirements

  1. With security disabled all users have "Delete Job" permission
  2. With security enabled, certain users will have "Delete Job" permission. Those users can delete jobs:
    1. Created by themselves
    2. Created by other users such as Margaret, Ralph, etc.
    3. Created by Unknown User