software slide
TRANSCRIPT
SOFTWARE REQUIREMENTS SPECIFICATION
Tittle : SCIMITAR Graphical User Interface
MATHEMATICS 3TR1413
NUR HASANAH BINTI SARIJUDINA141979
TK2
1.0 : STATEMENT OF FUNCTIONAL REQUIREMENT
1- PREPARE SCENE
• Description:– The user chooses a scene file from the file system or via a
Metafile entry, sets its resolution parameters and makes the scene active in the system. The user can optionally save or retrieve parameters from a workspace file.
• Precondition:– SCIMITAR base window is displayed.
• Trigger Condition:– The user selects the Open Scene option under the File
menu.
2- SET RESOLUTION
• Description:– The user sets the appropriate resolution parameters for the
scene to be displayed as active. The user can either enter the data or loaded it from the Metafile database.
• Precondition:– The user selects a file or a metafile entry on the Open Scene
window.• Trigger Condition:
– The user clicks the Open button on the Open Scene window.– The user clicks the Left-Arrow button on the Open Scene
window.
3- UPDATE METAFILE
• Description:– The user creates a new metafile entry for a new scene file
and stores its resolution parameters.• Precondition:– The Open Scene window is displayed and a file is selected
from the Browse area.• Trigger Condition:– The user clicks the Left-Arrow button on the Open Scene
window.
4- SET WORKSPACE
• Description:– The user saves the resolution parameters that have been
set for the active workspace or restores parameters from the loaded workspace file.
• Precondition:– SCIMITAR Base scene is displayed.
• Trigger Condition:– The user selects the Save Workspace scene from the File
menu.– The user clicks the Restore to Defaults button on the
Footprints tab under the Detection window.
5- ADD OBSCURANT
• Description:– The user adds obscurants to the active scene. The user can add White
Phosphorous obscurant or run the COMBIC92 and PILOT81 obscurant routines to add other types of obscurants.
• Precondition:– There is an active scene loaded in the system.
• Trigger condition:– The user selects White Phosphorous from the Obscurants walking
menu under the Image Tools menu.– The user selects COMBIC92 from the Obscurants walking menu under
the Image Tools menu.– The user selects PILOT81 from the Obscurants walking menu under
the Image Tools menu.
6- CHANGE RESOLUTION
• Description:– The user changes the resolution of the active scene.
• Precondition:– There is an active scene loaded in the system.
• Trigger condition:– The user selects the Change Resolution option under the
Image Tools menu.
7- ANALYZE SCENE
• Description:– The user runs detection routines on an active scene and
obtains detection data that can be saved to image files (for Aimpoint viewing) or result files (for exporting to Excel worksheets). The user can modify the active scene prior to detection run by adding obscurants and/or changing its resolution.
• Precondition:– The Base window is displayed; a scene has been loaded.
• Trigger condition:– User selects Detection under the Image Tools menu.
8- SET FOOTPRINTS
• Description:– The user sets one or more footprints by specifying their
size and position(s) over the active scene.• Precondition:– There is an active scene loaded in the system and the user
has selected a detection.• Trigger condition:– The user selects the Footprints tab under the Detection
window.
9- SET TARGETS
• Description:– The user sets targets by specifying their size, outline and
location over the active scene. • Precondition:– There is an active scene loaded in the system and the user
has selected a detection.• Trigger condition:– The user selects the Targets tab under the Detection
window.
10- VIEW AIMPOINTS
• Description:– The user views thumbnails of detection results and selects
each one to see the full-sized version. The user can save the result images to a bitmap file.
• Precondition:– There is an active scene loaded on the system, a detection
routine has been run and the detection results have not been cleared.
• Trigger condition:– The user clicks the View Aimpoints button under the
Detection tab of the Detection window.
11- SAVE DETECTION RESULTS
• Description:– The user saves the detection results to a results file
that can be further exported into an Excel worksheet.• Precondition:– There is an active scene loaded on the system, a
detection routine has been run and the detection results have not been cleared.
• Trigger condition:– The user clicks the Save Results button under the
Detection tab of the Detection window.
2.0 : MATHEMATICAL STATEMENT OF THE FUNCTIONAL
REQUIREMENT
1- PREPARE SCENE
• Propositional Calculus:open_scene: the user chooses a scene filefile_system: from file systemmetafile_entry: from metafile entryopen_scene => file_system metafile_entry⊻
set_scene: the user set opened sceneset_resolution_parameters: set scene resolution parametersscene_active: makes scene active in the systemset_scene => set_resolution_parameters ^ scene_active
• Predicate Calculus:open(scene): the user chooses a scene fileselect(file_system): from file systemselect(metafile_entry): from metafile entryopen(scene) => select(file_system) select(metafile_entry)⊻
set(scene): the user set opened sceneset(resolution_parameters): set scene resolution parametersactive(scene): makes scene active in the systemset(scene) => set(resolution_parameters) ^ active(scene)
2- SET RESOLUTION
• Propositional Calculus:set_resolution: the user set resolutionset_resolution_parameters: set scene resolution parametersscene_active: makes scene active in the systemset_resolution => set_resolution_parameters ^ scene_active
set_resolution_parameters: set scene resolution parametersenter_parameters: enter resolution parametersload_metafile: load parameters from metafile databaseset_resolution_parameters => enter_parameters ⊻load_metafile
• Predicate Calculus:set(resolution): the user set resolutionset(resolution_parameters): set scene resolution parametersactive(scene): makes scene active in the systemset(resolution) => set(resolution_parameters) ^ active(scene)
set(resolution_parameters): set scene resolution parametersenter(parameters): enter resolution parametersload(metafile): load parameters from metafile databaseset(resolution_parameters) => enter(parameters) ⊻load(metafile)
3- UPDATE METAFILE
• Propositional Calculus:create_metafile: the user creates a new metafile entryenter_resolution_parameters: enter resolution parametersstore_resolution_parameters: enter resolution parameterscreate_metafile => enter_resolution_parameters ^ store_resolution_parameters
• Predicate Calculus:create(metafile): the user creates a new metafile entryenter(resolution_parameters): enter resolution parametersstore(resolution_parameters): enter resolution parameterscreate(metafile) => enter(resolution_parameters) ^ store(resolution_parameters)
4- SET WORKSPACE
• Propositional Calculusset_active_workspace: the user set for active workspacesave_resolution_parameters: save the resolution parameters that have been setrestore_resolution_parameters_: restore resolution parameters from loaded workspace fileset_active_workspace => save_resolution_parameters v restore_resolution_parameters
• Predicate Calculusset(active_workspace): the user set for active workspacesave(resolution_parameters): save the resolution parameters that have been setrestore(resolution_parameters): restore resolution parameters from loaded workspace fileset(active_workspace) => save(resolution_parameters) v restore(resolution_parameters)
5- ADD OBSCURANT
• Predicate Calculusadd_obscurant: the user adds obscurants to the active sceneadd_white_phosphorous: add white phosphorous obscurantrun_COMBIC92: run COMBIC92 obscurant routinesrun_PILOT81: run PILOT81 obscurant routinesadd_obscurant => add_white_phosphorous v (run_COMBIC92 ^ run_PILOT81)
• Predicate Calculusadd(obscurant): the user adds obscurants to the active sceneadd(white_phosphorous): add white phosphorous obscurantrun(COMBIC92): run COMBIC92 obscurant routinesrun(PILOT81): run PILOT81 obscurant routinesadd(obscurant) => add(white_phosphorous) v (run(COMBIC92) ^ run(PILOT81))
6- CHANGE RESOLUTION
• Propositional Calculuschange_resolution: the user changes the resolution of the active sceneset_new_resolution: set new resolutionchange_resolution => set_new_resolution
• Predicate Calculuschange(resolution): the user changes the resolution of the active sceneset_new(resolution): set new resolutionchange(resolution) => set_new(resolution)
7- ANALYZE SCENE
• Propositional Calculusobtain_detection: the user obtains detection datasave_as_image_files: save detection data to image filessave_as_result_files: save detection data to result filesobtain_detection => save_as_image_files v save_as_result_files
modify_active_scene: the user modify the active sceneadd_obscurant: adding obscurantschange_resolution: changing active scene resolutionmodify_active_scene => add_obscurant v change_resolution
• Predicate Calculusobtain(detection): the user obtains detection datasave_as(image_files): save detection data to image filessave_as(result_files): save detection data to result filesobtain(detection) => save_as(image_files) v save_as(result_files)
modify(active_scene): the user modify the active sceneadd(obscurant): adding obscurantschange(resolution): changing active scene resolutionmodify(active_scene) => add(obscurant) v change(resolution)
8- SET FOOTPRINTS
• Propositional Calculusset_footprint: the user sets one or more footprintsspecify_size: specifying footprint sizespecify_position: specifying footprint positionset_footprint => specify_size ^ specify_position
• Predicate Calculusset(footprint): the user sets one or more footprintsspecify(size): specifying footprint sizespecify(position): specifying footprint positionset(footprint) => specify(size) ^ specify(position)
9- SET TARGETS
• Predicate Calculusset_target: the user sets targetsspecify_size: specifying target sizespecify_outline: specifying target outlinespecify_location: specifying target locationset_target => specify_size ^ specify_outline ^ specify_location
• Predicate Calculusset(target): the user sets targetsspecify(size): specifying target sizespecify(outline): specifying target outlinespecify(location): specifying target locationset(target) => specify(size) ^ specify(outline) ^ specify(location)
10- VIEW AIMPOINTS
• Propositional Calculusview_aimpoint: the user view full-sized aimpointsview_thumbnail: view thumbnails of detection resultsselect_thumbnail: select each one thumbnailview_aimpoint => view_thumbnail ^ select_thumbnail
• Predicate Calculusview(aimpoint): the user view full-sized aimpointsview(thumbnail): view thumbnails of detection resultsselect(thumbnail): select each one thumbnailview(aimpoint) => view(thumbnail) ^ select(thumbnail)
11- SAVE DETECTION RESULTS
• Propositional Calculusobtain_result_file: the user obtain results filesave_detection: saves the detection resultsobtain_result_file => save_detection
obtain_excel_worksheet: the user obtain excel worksheetexport_result_file: saves the detection resultsobtain_excel_worksheet => export_result_file
• Predicate Calculusobtain(result_file): the user obtain results filesave(detection): saves the detection resultsobtain(result_file) => save(detection)
obtain(excel_worksheet): the user obtain excel worksheetexport(result_file): saves the detection resultsobtain(excel_worksheet) => export(result_file)
3.0 : COMMENT ABOUT THE TRANSLATION PROCESS FROM NATURAL
LANGUAGES STATEMENTS TO MATHEMATICAL STATEMENTS.
• The translation process from natural language statements to mathematical statements are widely used in computer programming:
- Mathematical language act as problem solving for programmer to do programming by translating the mathematical statements into high-level language.
- We need to identify the idea first before we could translate the natural language statement into mathematical statements
- After we know the mathematical statements, then we can compile it into high-level language and do the programming.