This use case documents two sequences of events related to the saving a job for an external user, specifically:
- Job | Save
- The Administrator has been removed as an actor for this use case
- External User
- The ACME Editor is open
- The user has a job open in read-write mode, and it is in a "dirty" state (i.e., the Job Characteristics have been changed)
An implication here is that the user has Edit access in the "Save Job" functional area
- When the system enters a dirty state, the system enables the "Save Job" option
- The user selects the "Save Job" option
- The system saves the job details for this job
- The system saves the "last maintained by" information:
At the job level
At the module level
- The system changes the Editor state to "clean"
- The system disables the "Save Job" option
- If the user exits the Job Information module, the Job Information lock for this job is cleared
- Else, the Job Information lock for this job is not cleared
- The job is saved to the database
- The Editor state is changed to "clean"
- The lock for the Job Information module is released if the user disposes that screen
If the user has "Job - Edit", the system enables the "Save Job As ..." option
- The user selects the "Save Job As ..." option
- The system prompts the user for a short description for the job
- Note - no other job-related criteria can be modified here
- If the short description is not unique:
- Note: Whether or not the job was created by the current user, continue (many changes here)
- If the user does not have "delete job" authority
- The system prompts the user "
The short description you have supplied is not unique, and you do not have permission to overwrite a job." The use case is stopped.
- Else, if the user has "delete job" authority, continue
- The system displays a message: "A job already exists with this name; overwrite, cancel?"
- If the user selects cancel, they are returned to the previous screen where they enter the short description
- Else, if the user selects "overwrite"
- The system deletes the old job details, and creates a new job with the current job information
- Else, if the short description is unique, the system saves the job with that name
- The job in the Editor is now the job with the new short description
- The new short description is displayed in ACME's title bar
- The originating job is closed, and none of the changes are saved to that job
- The original job data is saved to the database under a new short description
- The "new" job is now in the ACME Editor
- Note: the process of prompting the user to save changes to the originating job is specifically not desired
- The Save option is only activated when a job is dirty
- "Save As" and Overwrite imply the ability to delete previous jobs, hence the need for delete permission
In single-user mode, the Unknown User can delete Unknown User jobs
In multi-user mode, assuming that a user has Edit access to the "Job - Delete" functional area:
- Margaret can delete Ralph jobs, etc.