Victa, Charles Xue, Huan Tsang, Hubert
Electronic Virtual Assistant (E.V.A) User interface (UI) Heuristic decision core (HDC) System Security Module (SSM) Audio response Voice Command Video response Touch Screen Launch Specified program Keypad Figure 1.1 Level 0 DFD (Context Diagram)
Heuristic Decision Core 2.1 User Interface 2.1 User Interface Command Request 2.2 Heuristic Decision Core 2.1 User Interface 2.1 User Interface Standard input Module (SIM) Voice Command, Touch Screen, Keypad, LCD Screen Confirmation response Command Parameters File Status Response Sound/Text To Speech Pre-rendered Sprites 2.3 System Security Module Audio Output Video Output Figure 2.1: Level 1 DFD
The user interface is a module between user and the HDC. 2.1 User Interface 2.1 User Interface Standard input Module (SIM) The user interface is a module between user and the HDC. It receives and analyzes audio, motion, keyboard input from user. Sends the discerned commands to the HDC. When it gets confirmation responses from the HDC, it sends them to user by audio and video output.
Confirmation response Voice Command Input Instruction 2.1.1 Input Designator Module 2.1.1 Input Designator Module 2.1.2 Function Command Module Touch Screen Input Instruction Input Instruction Variables Keypad Input Instruction 2.1.3 Output Designator Module Output Instruction Variables Command Request Confirmation response Sound/Text To Speech Pre-rendered Sprites Touch Screen Audio Speakers
Input Designator Module 2.1.1.1 Input Designator Module shall receive all inputs from the Standard Input module 2.1.1.2 Input Designator Module shall accept voice as a valid input 2.1.1.3 Input Designator Module shall accept text as a valid input 2.1.1.4 Input Designator Module shall accept coordinate function class as a valid input 2.1.1.5 Input Designator Module shall decipher each input as a separate object class 2.1.1.6 Input Designator Module shall create a object handler data type for each object class 2.1.1.7 Input Designator Module shall create a log entry object data type and send to the Function Command Module 2.1.1.8 Input Designator Module shall determine the input is valid
Confirmation response Voice Command Input Instruction 2.1.1 Input Designator Module 2.1.2 Function Command Module 2.1.2 Function Command Module Touch Screen Input Instruction Input Instruction Variables Keypad Input Instruction 2.1.3 Output Designator Module Output Instruction Variables Command Request Confirmation response Sound/Text To Speech Pre-rendered Sprites Touch Screen Audio Speakers
Function Command Module 2.1.2.1 Function Command Module shall receive all inputs from module Input Designator Module 2.1.2.2 Function Command Module shall send all outputs to module Output Designator Module 2.1.2.3 Function Command Module shall send all object handler data types to the Heuristic Decision Core Module 2.1.2.4 Function Command Module shall create a wrapper object data types for all log entry data types 2.1.2.5 Function Command Module shall send wrapper object data types to the Heuristic Decision Core Module 2.1.2.6 Function Command Module shall receive output command entry from the Heuristic Decision Core Module 2.1.2.7 Function Command Module shall create a wrapper object data types for all command entry data types 2.1.2.8 Function Command Module shall be able to send a termination signal to the Output Designator Module
Confirmation response Voice Command Input Instruction 2.1.1 Input Designator Module 2.1.2 Function Command Module Touch Screen Input Instruction Input Instruction Variables Keypad Input Instruction 2.1.3 Output Designator Module 2.1.3 Output Designator Module Output Instruction Variables Command Request Confirmation response Sound/Text To Speech Pre-rendered Sprites Touch Screen Audio Speakers
Output Designator Module 2.1.3.1 Output Designator Module shall open ports for internet access 2.1.3.2 Output Designator Module shall receive wrapper object data types 2.1.3.3 Output Designator Module shall decrypt the wrapper object 2.1.3.4 Output Designator Module shall give memory space to the wrapper object 2.1.3.5 Output Designator Module shall create a run instance 2.1.3.6 Output Designator Module shall be able to accept a signal of termination from module Function Command Module 2.1.3.7 Output Designator Module shall be able to wait for a signal of termination 2.1.3.8 Output Designator Module shall be able to suspend memory allocation 2.1.3.9 Output Designator Module shall be able to terminate the program
Heuristic Decision Core 2.2 Heuristic Decision Core 2.1 User Interface Command Request 2.2 Heuristic Decision Core 2.2 Heuristic Decision Core 2.1 User Interface Standard input Module (SIM) Voice Command, Touch Screen, Keypad, LCD Screen Confirmation response Command Parameters File Status Response Sound/Text To Speech Pre-rendered Sprites 2.3 System Security Module Audio Output Video Output Figure 2.1: Level 1 DFD
The HDC is the command center of EVA. Command Request 2.2 Heuristic Decision Core 2.2 Heuristic Decision Core 2.1 User Interface Standard input Module (SIM) Voice Command, Touch Screen, Keypad, LCD Screen Confirmation response The HDC is the command center of EVA. It records user habits and analyzes the commands from the UI according to the recorded habits. When it understands the commands, it sends orders to the OSC and returns the responses to the UI. When it cannot understand the commands, it will give options to the UI to get more specific commands.
Confirmation Response 2.2.1 Command Analyzer 2.2.1 Command Analyzer Commands Request Command Parameters Confirmation Response Get User Habits Confirmation Response Record User Habits 2.2.2 System Response Translator File Status Response User Habits Database
Command Analyzer Module 3.2.1.1 Command Analyzer shall receive the text commands from the User Interface. 3.2.1.2 Command Analyzer shall check whether the commands can be done. 3.2.1.3 Command Analyzer shall analyze the commands with user habits data. 3.2.1.4 Command Analyzer shall get the user habits data from the user habits database. 3.2.1.5 Command Analyzer shall ask the user interface for more detailed commands when it does not understand the commands. 3.2.1.6 Command Analyzer shall give a command confirmation back to user interface when it understands the commands. 3.2.1.7 Command Analyzer shall give one or more options to the user for choosing. 3.2.1.8 Command Analyzer shall analyze the habits of the user after a command has been accepted.
Confirmation Response 2.2.1 Command Analyzer Commands Request Command Parameters Confirmation Response Get User Habits Confirmation Response Record User Habits 2.2.2 System Response Translator 2.2.2 System Response Translator File Status Response User Habits Database
System Response Translator 3.2.2.1 System response translator shall get the file status response from the System Security Module and translate it to parameters. 3.2.2.2 System response translator shall send the fixed parameters to the Command Analyzer.
Heuristic Decision Core 2.1 User Interface Standard input Module (SIM) Command Request 2.2 Heuristic Decision Core 2.1 User Interface Standard input Module (SIM) Voice Command, Touch Screen, Keypad, LCD Screen Confirmation response Command Parameters File Status Response Sound/Text To Speech Pre-rendered Sprites 2.3 System Security Module 2.3 System Security Module Audio Output Video Output Figure 2.1: Level 1 DFD
Receives orders from the HDC Command Request 2.2 Heuristic Decision Core 2.1 User Interface Standard input Module (SIM) Voice Command, Touch Screen, Keypad, LCD Screen Confirmation response Command Parameters File Status Response Receives orders from the HDC Runs a check of the file against an internal database of known malicious files and safe files. If the files are not in the database it would then ask for confirmation whether to run the file or to preform further testing. 2.3 System Security Module 2.3 System Security Module
Proposed file(s) to run File Names Malicious File List 2.3.1 File Validation Checker 2.3.1 File Validation Checker File Status Response File Test Result 2.3.3 Micro Virtual Machine File Test Request Safe Files File Names Proposed file(s) to run Safe File List 2.3.2 HDC Command Interpreter System Commands System Command List Command Parameters
File Validation Checker 3.3.1.1 File Validation Checker shall run files on override confirmation 3.3.1.2 File Validation Checker shall have search capability for folders in the system 3.3.1.3 File Validation Checker shall have read capability for folders in the system 3.3.1.4 File Validation Checker shall have search capability for files in the system 3.3.1.5 File Validation Checker shall have read capability for files in the system 3.3.1.6 File Validation Checker shall have have run capability for files in the system 3.3.1.7 File Validation Checker shall check files for malicious code 3.3.1.8 File Validation Checker shall notify HDC of malicious code