Use Case Diagrams
Dean Ashton
05-10-04
1
Contents
1 High-level diagrams 1
1.1 Use Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Low-level diagrams 3
2.1 Start Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Open a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3 Save a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.4 Load File into Interpreter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.5 Send Evaluation to Interpreter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.6 Close a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.7 New File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.8 Add function, comment or datatype . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.9 Display Help System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.10 Display Options Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.11 Save Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.12 Exit Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2
1 High-level diagrams
1.1 Use Case
Figure 1 on the following page shows a high level overview of our use case diagrams.
1
Figure 1: High-level use case diagram
2
2 Low-level diagrams
2.1 Start Program
Goal To load the Heat program
Scope GUI
Preconditions
• Heat is installed
Success End Condition The program loads correctly and is ready for user input
Failure End Condition Program fails to load correctly and displays error message
Actors User
Trigger Clicking program icon on desktop/start menu, or running with java -jar heat.jar
Description
1. Action trigger
2. Display program splash screen
3. Display main window
Extensions
2a. Load program settings from settings file
2b. Create program GUI
Variations
None
3
2.2 Open a File
Goal To open a haskell source file in Heat
Scope GUI
Preconditions
• Heat is running
• No files are open
Success End Condition File loads and is displayed, syntax hightlighted in code window
Failure End Condition File fails to load and is not displayed
Actors User
Trigger Open File menu command or toolbar button is clicked
Description
1. Action trigger
2. File chooser window displayed
3. File selected, Ok button pressed
4. File contents are displayed (syntax highlighted) in the code window
Extensions
3a. Enable Close menu item and toolbar button
Variations
4a. File fails to open and an error message is displayed
4
2.3 Save a File
Goal To save haskell source code to a file
Scope GUI
Preconditions
• Heat is running
• File is open
Success End Condition Contents of code window are saved to a file
Failure End Condition Contents of code window are not saved to a file
Actors User
Trigger Save or Save As menu item or toolbar button is clicked
Description
1. Action trigger
2. Contents of code window are written to open file
Extensions
2a. If the file has not been saved a file save dialog will appear allowing them to choose the location
and file name
2a. If the Save As action was the trigger then a save dialog will always appear
Variations
2a. Contents fail to be written to the open file
5
2.4 Load File into Interpreter
Goal To load the open file into the Interperter
Scope GUI
Preconditions
• Heat is running
• A file is open
• The temporary file location is writable
Success End Condition The file is loaded into the Interpreter and the Interpreter output is
displayed in the output window
Failure End Condition The file fails to be loaded by the Interpreter
Actors User
Trigger Reload button is clicked
Description
1. Action trigger
2. Code window content is written to a temporary file
3. Temporary file is loaded by the Interpreter process
Extensions
2a. Interpreter process is stopped, output window is cleared, Interpreter process is started, Status
icon is set accordingly
Variations
2a. Write to temporary file fails and error dialog is displayed
6
2.5 Send Evaluation to Interpreter
Goal Send an evaluation to the Interpreter and receive the response in the output window
Scope GUI
Preconditions
• Heat is running
• There is code in the code window
Success End Condition Evaluation is sent to the interpreter and the response is displayed in
the output window
Failure End Condition An error message is displayed in the output window
Actors User
Trigger Send Evaluation button is clicked
Description
1. Action trigger
2. Send evaluation combobox contents sent to the Interpreter
3. Interpreter response displayed in output window
Extensions
2a. If there are differences between the code window contents and the temporary file contents
display reload confirmation dialog, if confirmed perform Reload file action
Variations
2. If evaluation is blank do nothing
7
2.6 Close a File
Goal To close an open file
Scope GUI
Preconditions
• Heat is running
• File is open
Success End Condition Heat windows are all initialised to defaults
Failure End Condition Some remnant of previous file is still displayed
Actors User
Trigger Close menu item is clicked
Description
1. Action trigger
2. Windows are cleared and Interpreter is restarted
Extensions
2a. If file has unsaved changes perform Save action
Variations
None
8
2.7 New File
We have adopted a single open document philosophy for Heat in keeping with our easy-to-use
guidelines, therefore the New menu item performs the same function as the close file action.
9
2.8 Add function, comment or datatype
Goal To add a function, comment or datatype to the code window
Scope GUI
Preconditions
• Heat is running
Success End Condition Desired declaration is added to code window
Failure End Condition Code window remains unchanged
Actors User
Trigger Add ... menu item or toolbar button is clicked
Description
1. Action trigger
2. Dialog is displayed prompting for declaration contents
3. Declaration is added to the code window
Extensions
None
Variations
3a. Contents of dialog are subject to basic error checking, on finding an error a message is displayed
on the dialog explaining the problem
10
2.9 Display Help System
Goal To display the help system
Scope GUI
Preconditions
• Heat is running
Success End Condition The help system is displayed
Failure End Condition The help system is not displayed
Actors User
Trigger Help menu item is clicked
Description
1. Action trigger
2. Help system is displayed
Extensions
None
Variations
None
11
2.10 Display Options Window
Goal To display the options window
Scope GUI
Preconditions
• Heat is running
Success End Condition Options window is displayed
Failure End Condition Options window is not displayed
Actors User
Trigger Options menu item is clicked
Description
1. Action trigger
2. Options window is displayed
Extensions
None
Variations
None
12
2.11 Save Options
Goal To save selected options
Scope GUI
Preconditions
• Heat is running
• Options window is displayed
Success End Condition Options are saved to options file
Failure End Condition Error dialog is displayed
Actors User
Trigger Save button is clicked
Description
1. Action trigger
2. Options are saved to file and dialog is displayed stating success
Extensions
None
Variations
2a. Settings manager fails to write settings file and an error dialog is displayed explaing this
13
2.12 Exit Program
Goal To exit Heat
Scope GUI
Preconditions
• Heat is running
Success End Condition Heat exits
Failure End Condition Heat fails to exit
Actors User
Trigger Exit menu item clicked
Description
1. Action trigger
2. Heat exits
Extensions
None
Variations
2a. If there are unsaved changes to code in the code window a dialog is displayed asking the user
if they wish to save changes, then Heat exits.
14