Running Head: Lab 3 – LASI Prototype Test Plan and Procedure Lab 3 – Prototype Test Plan and Procedure Red Team Scott Minter April 16, 2013 Version 1 1 Lab 3 – LASI Prototype Test Plan Procedure 2 Table of Contents 1 Objectives ……………………………………………………………………….. 3 2 References ……………………………………………………………………….. 4 3 Test Plan …………………………………………………………………………. 4 3.1 Testing Approach ………………………………………………………... 4 3.2 Identification of Test Cases ……………………………………………... 5 3.3 Test Schedule ……………………………………………………………. 8 3.4 Fault Reporting and Data Recording ……………………………………. 9 3.5 Resource Requirements …………………………………………………. 9 3.6 Test Environment ………………………………………………………... 9 4 Test Responsibilities ………………………………………………………….... 10 5 Test Procedures ……………………………………………………………….... 10 5.1 6 Test Case and Identifier ……………………………………………….. 10 Traceability Requirements …………………………………………………….. 47 List of Figures Figure 1 ………………………………………………………………………………….. 5 Figures 2 through 45 ……………………………………………………….. 10 through 46 Lab 3 – LASI Prototype Test Plan Procedure 3 1 Objectives Linguistic Analysis for Subject Identification (LASI) is the name of The Red Team’s project. LASI is being developed as a requirement in the Professional Workforce Development I & II courses at Old Dominion University. Linguistic Analysis, in the scope of LASI, is the contextual study of written works and how the words combine to form an overall meaning. LASI will be a decision support tool to assist users in determining common themes across multiple documents. The themes that LASI will produce are going to be subject-object-verb relationships. Themes are important because they help the reader to comprehend what has just been read. Then, if the reader has comprehended what was read, then the reader can summarize the material. Comprehension and summarization are important because they assist the reader in communicating the content of the material with other people. It is the primary object of the LASI prototype will be able to identify themes with a reduced amount of analysis. However, it will be doing so without fully associating all words inside a document. The LASI prototype will attempt to use lower level associations such as word counting, POS tagging, adjective to noun, and adverb to verb in order to correctly identify themes. It will be leaving out more difficult associations such as pronoun to noun. (This space intentionally left blank.) Lab 3 – LASI Prototype Test Plan Procedure 4 2 References Minter, Scott. (2013). Lab I – LASI Product Description. Hampton, VA: Author. Minter, Scott. (2013). Lab 2 - Prototype Product Specification Red Team. Hampton, VA: Author. Hester, P.T., Meyers, T. (2012). Enterprise AID: A performance measurement system for enterprise assessment, improvement, and design (NCSOSE-TR-12-001). Norfolk, VA: National Centers for System of Systems Engineering. 3 Test Plan This section describes test cases used to demonstrate the workings of LASI’s algorithms and GUI. 3.1 Testing Approach The test cases are meant to show LASI’s performance and GUI features. The tests breakdown into the following categories: user interface, file manager, tagged file parser, word association, and weighting. Those listed categories fit into two levels of testing: integration and system. For the integration level the user interface is the only category of testing involved. All other categories of testing goes with the system level of testing. In order to display these tests we will utilize the command line prompt from Microsoft Visual Studio as well as the GUI. The data displayed for our tests will all be real data produced from LASI’s analysis. (This space intentionally left blank.) 5 Lab 3 – LASI Prototype Test Plan Procedure 3.2 Identification of Tests Figure 1 is an overview of the LASI tests and gives a description and an objective for each. Category ID 1 Description Test Case Description Objective 1.1 Splash Screen Navigation 1 Verify that the user has the ability to create a new project from the Splash Screen. 1.2 Splash Screen Navigation 2 Verify that the user has the ability to load a new project from the Splash Screen. 1.3 File Type Verify that DOC, DOCX, and TXT are the only file type that can be added to the project. 1.4 Document Limit Verify that only 5 documents may be added to a single project. 1.5 Document Queue Documents added to the project will be displayed in a document queue and documents can be removed from the document queue. 1.6 Field Verification Verify that all fields must be completed to create a new project. 1.7 Document Display Verify that when a project is created the user will be navigated to the loaded project page and the documents added to the project are displayed. 1.8 Adding Documents Verify that the user can add documents to the project once it is created. Project is still limited to 5 documents at any time. Removing Documents Verify that the user can remove documents from the project once it is created. Project is still limited to 1 document to start analysis. User Interface 1.9 6 Lab 3 – LASI Prototype Test Plan Procedure 2 1.10 Canceling Analysis Verify that the Processing Screen displays a visual indication that analysis is in progress and that user has the ability to cancel analysis. 1.11 Results Screen Verify that the Results Screen displays the results in multiple views. 1.12 Top Results View Verify that the top results view provides a visual summary of the analysis in both the individual and collective document scopes. 1.13 Top Results Graph Verify that the top results view provides the user with the ability to change the graphical view of the top results. 1.14 Word Relationships View Verify that the Word Relationships View displays visuals to show all relationships and bindings of words throughout each document. 1.15 Word Count & Weighting View Verify that the Word Count and Weighting view is presented with the quantitative data used in the analysis and that the user can switch between individual and collective document scope. 1.16 Export Results Verify that the user is able to export results. 2.1 Input File Path Verification The File Manager shall only accepts existent files in supported formats 2.2 Conversion of .DOC to .DOCX files The file manager must be able to convert a DOC file to DOCX. 2.3 Conversion of .DOCX to TXT files The file manager must be able to convert a DOCX file to TXT file. 2.4 Converting .TXT to .TAGGED The File Manager shall invoke the SharpNLP tagger to process each TXT file. File Manager 7 Lab 3 – LASI Prototype Test Plan Procedure 3 4 5 Tagged File Parser Word Association Weighting 2.5 Backups to Project Directory The file manager shall provide functionality to backup up the entire project directory. 3.1 Tagged File Parser Accepted Formats The Tagged File Parser shall only attempt to parse the contents of a .TAGGED file. 3.2 Tagged File Parser at Word Level The Tagged File Parser shall only attempt to parse the contents of a .TAGGED file. 3.3 Tagged File Parser at Phrase Level The Tagged File Parser shall only attempt to parse the contents of a .TAGGED file. 4.1 Subject Binder Test The Subject binder determines which noun phrases are the subjects of verb phrases. 4.2 Object Binder Test The Object binder determines which noun phrases are the direct objects and indirect objects of verb phrases 4.3 Object Binder Fail test The Object binder test makes sure that sentences not containing a direct or indirect object are not bound as having one. 4.4 Thesaurus Test The Thesaurus correctly identifies synonyms. 4.5 Adverb Binder Test The Adverb binder binds adverb phrases to the adjective or verb they modify 5.1 Word Weight Instantiation A test for the initial equivalent weights of each Word. 5.2 Phrase Weight Instantiation A test for the initial equivalent weights of each Phrase. 5.3 Word Weight Duplicates A test for weighting multiple instances of the same Word. 5.4 Synonyms 5.5 Word Associations A test for weighting Synonyms of the same Word. A test for incrementing the weight of a Word for each association to/from. 8 Lab 3 – LASI Prototype Test Plan Procedure 5.6 Word weight increase on phrase association. The weight of a word shall be increased when a phrase is associated with it. 5.7 Phrase weight increase on word association. The weight of a phrase shall be increased when a word is associated with it. 5.8 Phrase weight increase on phrase association. The weight of a phrase shall be increased when another phrase is associated with it. 5.9 Common word weight exclusion The weights of commonly used words such as “the”, “a”, “to”, etc. shall be excluded. 5.10 Distance as weight modifier The distance between words and phrases shall be used as a weight modifier. 5.11 Word weight for individual document. Each word shall store its weight in respect to the individual document containing it. 5.12 Word weight for project. Each word shall store its weight in respect to all the documents in the project 5.13 Phrase weight for individual document. Each phrase shall store its weight in respect to the individual document containing it. 5.14 Phrase weight for project. Each phrase shall store its weight in respect to all the documents in the project. 5.15 Aggregate weight There shall be an aggregate weight computed across all documents in the project. Figure 1: List of Test Cases 3.3 Test Schedule There is an hour allotted for our prototype demonstration. During that hour we will demonstrate the abilities of LASI through both the GUI and a command prompt. These test cases are integrated into that demonstration and many of them will be demonstrated through normal operation of the software. Lab 3 – LASI Prototype Test Plan Procedure 9 3.4 Fault Reporting and Data Recording There is built in architecture that handles recording of output statements. This output can be displayed to a screen or output to a file. We have also built exception handling into LASI so that when errors and problems occur the program will continue to operate without crashing. 3.5 Resource Requirements The LASI prototype will run on a consumer level machine with four to eight gigabytes of RAM and a multi-core processor. The machine will need to be running a 64 bit version of Windows 7 or higher. To demonstrate the abilities of LASI a few short documents containing various text will be required. They will need to be short in length to allow them to be read by those in attendance to compare their results with those that LASI finds. Everyone in the Red group will be involved in the demonstration. Individually, they will be presenting the sections of the project with which they spent the most time developing. 3.6 Test Environment We will be using Microsoft Visual Studio and the GUI for this demonstration. We will use the command prompt to demonstrate any tests that the GUI does not demonstrate. (This space intentionally left blank.) 10 Lab 3 – LASI Prototype Test Plan Procedure 4 Test Responsibilities The members of our group will assist in demonstrating the sections of LASI with which they spent the most time developing. Brittany Johnson will assist with demonstrating the user interface. Aluan Haddad will help demonstrating the capabilities of the file manager and tagged file parser. Dustin Patrick will demonstrate the subject, object, and adverb binding algorithms. Erik Rogers will demonstrate the capabilities of the thesaurus and word weighting. Scott Minter will assist in demonstrating the word weighting. Richard Owens will assist Brittany in demonstrating the user interface. 5 Test Case Name and Identifier Figures 2 through 45 are an exhaustive list of our test cases. They show how to set up the test and what results to expect from them. Test Category: Integration Test Case: 1.1 Description: Verify that the user has the ability to create a new project from the Splash Screen. Case Name: Splash Screen Version: 1 Written By: Brittany Johnson Navigation 1 Purpose: Verify that the user has the ability to create a new project from the Splash Screen. Requirements Fulfilled: 3.1.1.1.1 Setup Conditions: LASI must be on the Splash Screen Test Case Activity 1 Click the Create New Project button. Pass/Fail Comments Expected Result User is navigated to the Create New Project screen. (This space intentionally left blank.) 11 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.2 Description: Verify that the user has the ability to load a new project from the Splash Screen. Case Name: Splash Screen Version: 1 Written By: Brittany Johnson Navigation 2 Purpose: Verify that the user has the ability to load a new project from the Splash Screen. Requirements Fulfilled: 3.1.1.1.2 Setup Conditions: LASI must be on the Splash Screen Test Case Activity Pass/Fail Comments 1 Click the Load Project button. Test Category: Integration Test Case: 1.3 Expected Result User is given the option to load a LASI project file. Description: Verify that DOC, DOCX, and TXT are the only file type that can be added to the project. Case Name: File Type Version: 1 Written By: Brittany Johnson Purpose: Verify that DOC, DOCX, and TXT are the only file type that can be Requirements Fulfilled: 3.1.1.2.1, added to the project. 3.1.1.2.2 Setup Conditions: Test Case 1.1 must be fulfilled. The fields for project name and project location must be completed. Test Case Activity 1 Click the Browse button next to the Document field. Pass/Fail Comments Expected Result User is given the option to add a file. 2 Add a non-supported file. 3 Click Create. Project will not be created and the user will be notified that the document is not supported. 12 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.4 Description: Verify that only 5 documents may be added to a single project. Case Name: Document Version: 1 Written By: Brittany Johnson Limit Purpose: Verify that only 5 documents may be added to a single project. Requirements Fulfilled: 3.1.1.2.3 Setup Conditions: Test Case 1.1 must be fulfilled. The fields for project name and project location must be completed. Test Case Activity Pass/Fail 1 Click the Browse button next to the Document field. Comments Expected Result User is given the option to add a file. 2 Add a document to the project. 3 Repeat four times. After the fifth document is added the user will not have the option to add another document. (This space intentionally left blank.) 13 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.5 Description: Verify that documents added to the project will be displayed in a document queue and documents can be removed from the document queue. Case Name: Document Version: 1 Written By: Brittany Johnson Queue Purpose: Verify that documents added to the project will be displayed in a document queue and documents can be removed from the document queue. Requirements Fulfilled: 3.1.1.2.4, 3.1.1.2.5 Setup Conditions: Test Case 1.1 must be fulfilled. The fields for project name and project location must be completed. Test Case Activity Pass/Fail Comments Expected Result 1 Click the Browse button next to the Document field. User is given the option to add a file. 2 Add a document to the project. Document will be displayed in the document queue. 3 Click 'x' next to the document in the display. Document will be removed from the document queue. (This space intentionally left blank.) 14 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.6 Description: Verify that all fields must be completed to create a new project. Case Name: Field Version: 1 Written By: Brittany Johnson Verification Purpose: Verify that all fields must be completed to create a new project. Requirements Fulfilled: 3.1.1.2.6 Setup Conditions: Test Case 1.1 must be fulfilled. Test Case Activity Pass/Fail Comments Expected Result 1 Do not fill out the field for the project name. 2 Fill out the fields for all other fields. 3 Click Create. Project will not created and the user will be notified that fields are not completed and will indicate which fields are incomplete. 4 Repeat for all fields. (This space intentionally left blank.) 15 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.7 Description: Verify that when a project is created the user will be navigated to the loaded project page and the documents added to the project are displayed. Case Name: Document Version: 1 Written By: Brittany Johnson Display Purpose: Verify that when a project is created the user will be navigated to the loaded project page and the documents added to the project are displayed. Requirements Fulfilled: 3.1.1.3.1 Setup Conditions: Test Case 1.1 must be fulfilled. All fields must be completed correctly. Test Case Activity Pass/Fail 1 Click Create. Comments Expected Result A project is created and the user is navigated to the Loaded Projects page. 2 Check that each document is displayed in its own individual tab. 3 Check that each tab title corresponds to the name of the document added. 4 Check that each tab displays the text of the corresponding document. (This space intentionally left blank.) 16 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.8 Description: Verify that the user can add documents to the project once it is created. Project is still limited to 5 documents at any time. Case Name: Adding Version: 1 Written By: Brittany Johnson Documents Purpose: Verify that the user can add documents to the project once it is created. Project is still limited to 5 documents at any time. Requirements Fulfilled: 3.1.1.3.2 Setup Conditions: Test Case 1.7 must be fulfilled. Test Case Activity Pass/Fail Comments Expected Result 1 Click the add document button. User is given the option to add a file. 2 Add a document to the project. The document should show up in its own tab. 3 Repeat until there are a maximum of 5 documents in the project. The option to add another document is disabled while there are 5 documents. (This space intentionally left blank.) 17 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.9 Description: Verify that the user can remove documents from the project once it is created. Project is still limited to 1 document to start analysis. Case Name: Removing Version: 1 Written By: Brittany Johnson Documents Purpose: Verify that the user can remove documents from the project once it is created. Project is still limited to 1 document to start analysis. Requirements Fulfilled: 3.1.1.3.3 3.1.1.3.4 Setup Conditions: The project should start off with 5 documents. The option to add another document must be disabled at this time. Test Case Activity Pass/Fail Comments Expected Result 1 Click on the document tab that will be removed. The document will be in focus. 2 Click the remove document button. The document that is in focus will be removed from the project. 3 Repeat for all other documents. The option to start analyzing the project is disabled 4 Click the add document button. User is given the option to add a file. 5 Add a document to the project. The document should show up in its own tab and the option to start analysis will be enabled. (This space intentionally left blank.) 18 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.10 Description: Verify that the Processing Screen displays a visual indication that analysis is in progress and that user has the ability to cancel analysis. Case Name: Canceling Version: 2 Written By: Brittany Johnson Analysis Purpose: Verify that the Processing Screen displays a visual indication that analysis is in progress and that user has the ability to cancel analysis. Requirements Fulfilled: 3.1.1.4.1 3.1.1.4.2 Setup Conditions: Test Case 1.9 must be fulfilled. Test Case Activity Pass/Fail Comments Expected Result 1 Click the Start Analysis button The user is navigated to the Processing Screen and there is a visual indication that analysis is in progress. 2 Click the Stop Analysis button Analysis will be canceled and the user is navigated back to the Loaded Project Screen. Test Category: Integration Test Case: 1.11 Description: Verify that the Results Screen displays the results in multiple views. Case Name: Results Screen Version: 1 Written By: Brittany Johnson Purpose: Verify that the Results Screen displays the results in multiple Requirements Fulfilled: 3.1.1.5.1 views. Setup Conditions: Have a project already loaded and already have analysis running Test Case Activity 1 Analysis Ends Pass/Fail Comments Expected Result The Results screens renders a Top Results View, a Word Relationships View, and a Word Count & Weighting View (This space intentionally left blank.) 19 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.12 Description: Verify that the top results view provides a visual summary of the analysis in both the individual and collective document scopes. Case Name: Top Results Version: 1 Written By: Brittany Johnson View Purpose: Verify that the top results view provides a visual summary of the analysis in both the individual and collective document scopes. Requirements Fulfilled: 3.1.1.5.2 Setup Conditions: Test Case 1.11 must be fulfilled. Test Case Activity Pass/Fail Comments Expected Result 1 Click on the Top Results Tab The Top Results view displays a graphical view of the results in a sub tab for collective results. 2 Click the sub tab for an individual document. Display should switch to the top results for that specific document. (This space intentionally left blank.) 20 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.13 Description: Verify that the top results view provides the user with the ability to change the graphical view of the top results. Case Name: Top Results Version: 1 Written By: Brittany Johnson Graph Purpose: Verify that the top results view provides the user with the ability to change the graphical view of the top results. Requirements Fulfilled: 3.1.1.5.2 Setup Conditions: Test Case 1.11 must be fulfilled. Test Case Activity Pass/Fail Comments Expected Result 1 Click on the Top Results Tab The Top Results view displays a graphical view of the results in a sub tab for collective results. 2 Click the pie chart button located in the toolbar to the left of the document view. The type of graph being used to view the results will be changed to a pie chart. 3 Repeat for other chart types. 4 Click the sub tab for an individual document. Display should switch to the top results for that specific document. 5 Click the pie chart button located in the toolbar to the left of the document view. Display should switch to the top results for that specific document. 6 Repeat for other chart types. (This space intentionally left blank.) 21 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.14 Description: Verify that the Word Relationships View displays visuals to show all relationships and bindings of words throughout each document. Case Name: Word Version: 1 Written By: Brittany Johnson Relationships View Purpose: Verify that the Word Relationships View displays visuals to show all relationships and bindings of words throughout each document. Requirements Fulfilled: 3.1.1.5.3 Setup Conditions: Have a project pre analyzed and in the Results view. Test Case Activity Pass/Fail Comments 1 Click on the Word Relationships tab. Test Category: Integration Test Case: 1.15 Requirements Fulfilled: 3.1.1.5.4 Expected Result The Word Relationships tab displays all of the words in an individual document with color codes for each part of speech and links between words. Description: Verify that the Word Count and Weighting view is presented with the quantitative data used in the analysis and that the user can switch between individual and collective document scope. Case Name: Word Count & Version: 1 Written By: Brittany Johnson Weighting View Purpose: Verify that the Word Count and Weighting view is presented with the quantitative data used in the analysis and that the user can switch between individual and collective document scope. Setup Conditions: Have a project pre analyzed and in the Results view. Test Case Activity Pass/Fail Comments Expected Result 1 Click on the Word Count & Weighting Tab The Word Count & Weighting displays the data for what the word count and weight for the results in a sub tab for collective results. 2 Click the sub tab for an individual document. Display should switch to the Word Count & Weighting results for that specific document. 22 Lab 3 – LASI Prototype Test Plan Procedure Test Category: Integration Test Case: 1.16 Description: Verify that the user is able to export results. Case Name: Export Results Version: 1 Written By: Brittany Johnson Purpose: Verify that the user is able to export results. Requirements Fulfilled: 3.1.1.5.5 Setup Conditions: Have a project pre analyzed and in the Results view. Test Case Activity Pass/Fail Comments Expected Result 1 Click Export Results Prompt for the type to export to will appear. 2 Choose PDF. Results should then be able to be saved as a PDF. 3 Repeat for all other export types. Test Category: System Test Case: 2.1 Description: The File Manager shall only accepts existent files in supported formats Case Name: Input File Path Version: 1 Written By: Aluan Haddad Verification Purpose: To verify that the File Manager locates an input file provided as via operating system file path only accepts it if the file type is supported, and if it exists, copies it to the appropriate project subdirectory. Requirements Fulfilled: 3.1.2.1 3.1.2.2 Setup Conditions: Locate arbitrary .doc, .docx, .txt, and .html files on a local or removable storage medium and verify their absolute paths. Test Case Activity 1 Invoke the AddFile method of the File Manager passing it the .doc file. Pass/Fail Comments Expected Result The running list of .doc input files contains the .doc file. The .doc is added to the File Manager’s respective set and copied to the project’s doc directory. 23 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 2.2 Description: The file manager must be able to convert a DOC file to DOCX. Case Name: Conversion of Version: 1 Written By: Aluan Haddad .DOC to .DOCX files Purpose: To verify that the File Manager correctly converts a .DOC file to a .DOCX file. Requirements Fulfilled: 3.1.2.3 Setup Conditions: Add a .doc file to the project via the File Manager’s AddFile method. Test Case Activity Pass/Fail Comments 1 Invoke the ConvertDocFilesmethod of the File Manager. Expected Result The running list of .docx input files contains the converted.DOC file. The .DOCX file exists in to the project’s docx subdirectory directory. A .DOCX version of the .DOC file is added to the File Manager’s set of .DOCX files and exists in to the project’s docx subdirectory directory. Test Category: System Test Case: 2.3 Description: The file manager must be able to convert a DOCX file to TXT file. Case Name: Conversion of Version: 1 Written By: Aluan Haddad .DOCX to TXT files Purpose: To verify that the File Manager correctly converts a .DOCX file to a .TXT file. Requirements Fulfilled: 3.1.2.4 Setup Conditions: Add a .docx file to the project via the File Manager’s AddFile method. Test Case Activity 1 Invoke the ConvertDocXFiles method of the File Manager. Pass/Fail Comments Expected Result The running list of .text input files contains the converted .DOCX file. The .TXT file exists in to the project’s text subdirectory directory. A .TXT version of the .DOCX file is added to the File Manager’s set of .TXT files and exists in to the project’s text subdirectory directory. 24 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 2.4 Description: The File Manager shall invoke the SharpNLP tagger to process each TXT file. Case Name: Converting Version: 1 Written By: Aluan Haddad .TXT to .TAGGED Purpose: To verify that the File Manager correctly converts a .TXT file to a .TAGGED file. Requirements Fulfilled: 3.1.2.5 Setup Conditions: Add several .TXT files to the project via the FileManager’sAddFile method. Test Case Activity Pass/Fail Comments 1 Invoke the TagTextFiles method of the File Manager Expected Result The running list of .TAGGED input files contains each converted .TAGGED file. The .TAGGEDconversion of each file exists in project’s tagged subdirectory directory. A syntax annotated .TAGGEDversion of each .TXTfile is added to the File Manager’s set of .TAGGED files and exists in to the project’s tagged subdirectory Test Category: System Test Case: 2.5 Description: The file manager shall provide functionality to backup up the entire project directory. Case Name: Backups to Version: 1 Written By: Aluan Haddad Project Directory Purpose: To verify that the File Manager correctly creates a fully recursive, bitwise backup of the project directory. Requirements Fulfilled: 3.1.2.6 Setup Conditions: Add several .DOC, .DOCX, .TXT and .TAGGED files to the project via the FileManager’sAddFile method. Test Case Activity 1 Invoke the Backup method of the File Manager. Pass/Fail Comments Expected Result A fully recursive, bitwise backup of the entire project directory is created and placed in the relative path “..\backup\” 25 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 3.1 Description: The Tagged File Parser shall only attempt to parse the contents of a .TAGGED file. Case Name: Tagged File Version: 1 Written By: Aluan Haddad Parser Accepted Formats Purpose: To verify that the Tagged File Parser only attempts to parse files in the .TAGGED file format. Requirements Fulfilled: 3.1.3.1 Setup Conditions: Seed an error condition by locating or creating a file containing raw text in the format .TXT Test Case Activity Pass/Fail Comments 1 Invoke the LoadDocument method of the TaggedFileParser passing it an InputFile wrapper object around the path of the raw text file. Test Category: System Test Case: 3.2 Expected Result An appropriate, UnsupportedOperationException is raised when attempting to parse the contents of a file not in the supported .TAGGED format. Description: The Tagged File Parser shall only attempt to parse the contents of a .TAGGED file.. Case Name: Tagged File Version: 1 Written By: Aluan Haddad Parser at Word Level Purpose: To verify that the Tagged File Parser correctly parses the wordlevel lexical contents of a .TAGGED file. Requirements Fulfilled: 3.1.3.2 Setup Conditions: Manually read through and annotate the word level contents of a document, embedding the syntactic annotations into the file in accordance with the specification for a .TAGGED file. Test Case Activity 1 Invoke the LoadDocument method of the TaggedFileParser passing it an InputFile wrapper object around the path of the manually created .TAGGED file. Pass/Fail Comments Expected Result Each instance of the Word class created by the parser corresponds to exactly one of the annotated words in the.TAGGED file. Said instance is of the Word class subtype designed to encapsulate the type of the syntactic annotation embedded for its literal. 26 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 3.3 Description: The Tagged File Parser shall only attempt to parse the contents of a .TAGGED file.. Case Name: Tagged File Version: 1 Written By: Aluan Haddad Parser at Phrase Level Purpose: To verify that the Tagged File Parser correctly parses the phrase-level lexical contents of a .TAGGED file. Requirements Fulfilled: 3.1.3.3 Setup Conditions: Manually read through and annotate the word and phrase level contents of a document, embedding the syntactic annotations into the file in accordance with the specification for a .TAGGED file. Test Case Activity 1 Invoke the LoadDocument method of the TaggedFileParser passing it an InputFile wrapper object around the path of the manually created .TAGGED file. Pass/Fail Comments Expected Result Each instance of the Phrase class created by the parser corresponds to exactly one of the annotated phrase in the.TAGGED file. Said instance is of the Phrase class subtype designed to encapsulate the type of the syntactic annotation embedded for its literal. Said Phrase instance’s word level constituents are correctly nested within it. (This space intentionally left blank.) 27 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: The Subject binder determines which noun phrases are the subjects of verb phrases. Test Case: 4.1 Case Name: Subject Version: 1 Written By: Dustin Binder Test Patrick Purpose: To ensure that every sentence properly binds the subject and primary verb phrase together for weighting purposes Requirements Fulfilled: 3.1.4.1 Setup Conditions: Test sentence must have been parsed for Part of Speech. Test sentence must contain a Subject Test Case Activity Pass/Fail Comments Expected Result 1 Load test sentence Sentence loaded properly into memory 2 Run subject binder Subject binder returns nothing, but executes without any exceptions 3 Check the associated noun phrases for the primary verb phrase from test sentence Verb phrase associates with noun phrase identified as the subject of test sentence 4 Check the associated verb phrases for the noun phrase identified as the subject from test sentence Noun Phrase associates with verb phrase identified as primary verb phrase of test sentence (This space intentionally left blank.) 28 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 4.2 Description: The Object binder determines which noun phrases are the direct objects and indirect objects of verb phrases Case Name: Object Binder Version: 1.0 Written By: Dustin Test Patrick Purpose: To ensure that every sentence containing a direct or indirect object has the noun phrase of that object associated with the primary verb phrase of a sentence for weighting purposes. Requirements Fulfilled: 3.1.4.2 3.1.4.3 3.1.4.6 3.1.4.7 3.1.4.8 Setup Conditions: Test sentence must have been parsed for Part of Speech. Test sentence must contain both a direct object and an indirect object. Test Case Activity Pass/Fail Comments Expected Result 1 Load test sentence containing a direct and indirect object Sentence loaded properly into memory 2 Run object binder Object binder returns nothing, but will execute without any exceptions 3 Check the associated noun phrases of the verb phrase identified as the primary verb phrase of the test sentence Verb phrase associates with the noun phrase identified as the direct and/or indirect object of the test sentence 4 Check the associated verb phrases of the noun phrase identified as the direct or indirect object Noun phrase(s) associate(s) with the verb phrase identified as the primary verb phrase in the test sentence (This space intentionally left blank.) 29 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 4.3 Description: The Object binder test makes sure that sentences not containing a direct or indirect object are not bound as having one. Case Name: Object Binder Version: 1 Written By: Dustin Fail test Patrick Purpose: To ensure that sentences not containing either a direct or indirect object are not associated with having one for weighting purposes Requirements Fulfilled: 3.1.4.3 Setup Conditions: Test sentence must have been parsed for Part of Speech. Test sentence must contain neither a direct object nor an indirect object Test Case Activity Pass/Fail Comments Expected Result 1 Load test sentence not containing a direct and indirect object Sentence loaded properly into memory 2 Run object binder Object binder runs and fails, but does not return anything, nor does it throw an exception (This space intentionally left blank.) 30 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 4.4 Description: The Thesaurus correctly identifies synonyms. Case Name: Thesaurus Version: 1 Written By: Dustin Test Patrick Purpose: To ensure that every synonym is properly identified and associated with the word with which it has a root identified. Requirements Fulfilled: 3.1.4.4 Setup Conditions: Test document must have been parsed for Part of Speech. Test document must contain at least one noun that has a synonym in the document and at least one verb that has a synonym in the document. Test Case Activity Pass/Fail Comments Expected Result 1 Load test document containing synonyms Document loaded properly into memory 2 Run Thesaurus Thesaurus returns nothing, but will execute without any exceptions 3 Check the associated words of the noun identified as the root noun of the synonymous noun of the test document Root noun associates properly with the noun identified as the synonym 4 Check the associated words of the verb identified as the root verb of the synonymous verb of the test document Root verb associates properly with the verb identified as the synonym (This space intentionally left blank.) 31 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 4.5 Description: The Adverb binder binds adverb phrases to the adjective or verb they modify Case Name: Adverb Binder Version: 1 Written By: Dustin Test Patrick Purpose: To ensure that every sentence containing an adverb associates that adverb with the adjective or verb to which it modifies. Requirements Fulfilled: 3.1.4.9 Setup Conditions: Test document must have been parsed for Part of Speech. Test document must contain an adverb phrase modifying a verb phrase. Test document must contain an adverb phrase modifying an adjective phrase Test Case Activity Pass/Fail Comments Expected Result 1 Load test document Document loaded properly into memory 2 Run adverb binder Adverb binder returns nothing, but will execute without any exceptions 3 Check the associated adjective phrases of the adverb phrase identified as modifying the adjective phrase. Adverb phrase associates with the adjective phrase 4 Check the associated verb phrases of the adverb phrase identified as modifying the verb phrase. Adverb phrase associates with the verb phrase (This space intentionally left blank.) 32 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 5.1 Description: A test for the initial equivalent weights of each Word. Case Name: Word Weight - Version: 1 Written By: Erik Rogers Instantiation Purpose: Ensures that each Word instance shall start with an equivalent initial weight. Requirements Fulfilled: 3.1.5.1 Setup Conditions: Document(s) that contain Words, or Paragraph(s) that contain Words, or Sentence(s) that contain Words Test Case Activity Pass/Fail Comments Expected Result 1 Parse the Document(s) with LASI up until the weighting section of algorithms to obtain Words The Document(s) will be parsed and tagged properly. 2 Check that every Word possesses a weight Every Word has a weight. 3 Compare each Word’s weight against the assumed initial weight value Each Word’s weight matches the assumed initial weight value. (This space intentionally left blank.) 33 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 5.2 Description: A test for the initial equivalent weights of each Phrase. Case Name: Phrase Weight Version: 1 Written By: Erik Rogers - Instantiation Purpose: Ensures that each Phrase instance shall start with an equivalent initial weight. Requirements Fulfilled: 3.1.5.2 Setup Conditions: Document(s) that contain Phrases, or Paragraph(s) that contain Phrases, or Sentence(s) that contain Phrases Test Case Activity Pass/Fail Comments Expected Result 1 Parse the Document(s) with LASI up until the weighting section of algorithms to obtain Phrases The Document(s) will be parsed and tagged properly. 2 Check that every Phrase possesses a weight Every Phrase has a weight. 3 Compare each Phrase’s weight against the assumed initial weight value Each Phrase’s weight matches the assumed initial weight value. (This space intentionally left blank.) 34 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 5.3 Description: A test for weighting multiple instances of the same Word. Case Name: Word Weight - Version: 1 Written By: Erik Rogers Duplicates Purpose: Ensures that each Word’s weight is incremented if said Word is encountered again Requirements Fulfilled: 3.1.5.3 Setup Conditions: Document(s), Paragraph(s), or Sentence(s) that contain Words but where no Words have a duplicate instance Document(s), Paragraph(s), or Sentence(s) from above, where one Word now has a single duplicate instance Test Case Activity Pass/Fail Comments Expected Result 1 Parse the Document(s) with LASI up until the weighting section of algorithms to obtain Words The Document(s) will be parsed and tagged properly. 2 Check that every Word possesses a weight Every Word has a weight. 3 Check that the duplicate Word’s weight in the second Document is higher than its weight in the first document The weight of the duplicate Word in the second document will be larger than in the first document. (This space intentionally left blank.) 35 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 5.5 Description: A test for incrementing the weight of a Word for each association to/from. Case Name: Word Associations Version: 1 Written By: Erik Rogers Purpose: Ensures that each Word’s weight is incremented for each Requirements Fulfilled: 3.1.5.5 association to said Word. Setup Conditions: Document(s) that contain Words, one of which has two or more associations, or Paragraph(s) that contain Words, one of which has two or more associations, or Sentence(s) that contain Words, one of which has two or more associations Test Case Activity Pass/Fail Comments Expected Result 1 Parse the Document(s) with LASI up until the weighting section of algorithms to obtain Words The Document(s) will be parsed and tagged properly. 2 Check and store the initial weight of the Word that has two or more associations The Word has an initial weight and the weight is stored. 3 Allow the weighting algorithm to discover one of the associations and store the new weight The weighting algorithm sees the association and increment’s the Word’s weight. 4 Allow the weighting algorithm to discover the second (and any further associations) and store the new weight(s) The weighting algorithm sees the association and increment’s the Word’s weight. 5 Compare the weights from Steps 2-4 to ensure that Step 2’s weight is lower than Step ¾’s and that Step 3’s weight is lower than Step 4’s weight The weight after each successive discovered association is higher than the previous discovery iteration. (This space intentionally left blank.) 36 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 5.4 Description: A test for weighting Synonyms of the same Word. Case Name: Synonyms Version: 1 Written By: Erik Rogers Purpose: Ensures that each Word’s weight is incremented if said Word has a Requirements Fulfilled: 3.1.5.4 synonymous Word Setup Conditions: Document(s), Paragraph(s), or Sentence(s) that contain a Word as well as a Synonym of that word Test Case Activity Pass/Fail Comments Expected Result 1 Parse the Document(s) with LASI up until the weighting section of algorithms to obtain Words The Document(s) will be parsed and tagged properly. 2 Check and store the planted Word’s weight The Word has a weight and it is stored. 3 Check and store the planted Word’s Synonym Word’s weight The Word has a weight and it is stored. 4 Allow the weighting algorithm to pass and assign weights to only the planted Word The planted Word’s weight is updated. 5 Allow the weighting algorithm to pass and assign weights to both the planted Word and Synonym Word Both Word’s weights are updated. 6 Check the weight in Step 4 and compare it to the new Word weight The new Word weight is higher. 7 Compare the weight of both Words to ensure they are equal Both weights are equal. (This space intentionally left blank.) 37 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: The weight of a word shall be increased when a phrase is associated with it. Test Case: 5.6 Case Name: Word weight Version: 1 Written By: Scott increase on phrase Minter association. Purpose: To test that the weight of a word is increased when a phrase is associated with it. Requirements Fulfilled: 3.1.5.5 Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm. Words and phrases will be assigned weights. 5 Verify that the weight of a word has been increased after it has been associated with a phrase. The weight of a word will have been increased. (This space intentionally left blank.) 38 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: The weight of a phrase shall be increased when a word is associated with it. Test Case: 5.7 Case Name: Phrase weight Version: 1 Written By: Scott increase on word Minter association. Purpose: To test that the weight of a phrase is increased when a word is associated with it. Requirements Fulfilled: 3.1.5.6 Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm Words and phrases will be assigned weights. 5 Verify that the weight of a phrase has been increased after it has been associated with a word The weight of a phrase will have been increased. (This space intentionally left blank.) 39 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: The weight of a phrase shall be increased when another phrase is associated with it. Test Case: 5.8 Case Name: Phrase weight Version: 1 Written By: Scott increase on phrase Minter association. Purpose: To test that the weight of a phrase is increased when another phrase is associated with it. Requirements Fulfilled: 3.1.5.6 Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm Words and phrases will be assigned weights. 5 Verify that the weight of a phrase has been increased after it has been associated with another phrase. The weight of a phrase will have been increased. (This space intentionally left blank.) 40 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Test Case: 5.9 Description: The weights of commonly used words such as “the”, “a”, “to”, etc. shall be excluded. Case Name: Common word weight exclusion Version: 1 Written By: Scott Minter Purpose: To test that the weight of commonly used words are excluded. Requirements Fulfilled: 3.1.5.7 Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm Words and phrases will be assigned weights. 5 Verify that the weight of commonly used words has been excluded. The weight of commonly used words will have been excluded. (This space intentionally left blank.) 41 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: The distance between words and phrases shall be used as a weight modifier. Test Case: 5.10 Case Name: Distance as weight modifier Version: 1 Written By: Scott Minter Purpose: To test that the weight of a word or phrase is modified based on the Requirements Fulfilled: 3.1.5.8 distance to the word or phrase it is associated with. Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm Words and phrases will be assigned weights. 5 Verify that the weight of the words/phrases associated are modified based on the association and the distance to the word/phrase it is associated with. The weight of associated words/phrases will be modified based on distance. (This space intentionally left blank.) 42 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: Each word shall store its weight in respect to the individual document containing it. Test Case: 5.11 Case Name: Word weight for individual document. Version: 1 Written By: Scott Minter Purpose: To test that the weight of a word is stored in respect to the Requirements Fulfilled: 3.1.5.9 individual document containing it. Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm Words and phrases will be assigned weights. 5 Verify that the weight of words are stored for the individual document containing it. . The weight of a word will be stored with respect to the document containing it. (This space intentionally left blank.) 43 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: Each word shall store its weight in respect to all the documents in the project. Test Case: 5.12 Case Name: Word weight for project. Version: 1 Written By: Scott Minter Purpose: To test that the weight of a word is stored in respect to all the Requirements Fulfilled: 3.1.5.9 documents in the project. Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm Words and phrases will be assigned weights. 5 Verify that the weight of words are stored for all the documents in the project. The weight of a word will be stored with respect to all the documents in the project. (This space intentionally left blank.) 44 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: Each phrase shall store its weight in respect to the individual document containing it. Test Case: 5.13 Case Name: Phrase weight for individual document. Version: 1 Written By: Scott Minter Purpose: To test that the weight of a phrase is stored in respect to the Requirements Fulfilled: 3.1.5.10 individual document containing it. Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm Words and phrases will be assigned weights. 5 Verify that the weight of a phrase is stored for the individual document containing it. The weight of a phrase will be stored with respect to the document containing it. (This space intentionally left blank.) 45 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: Each phrase shall store its weight in respect to all the documents in the project. Test Case: 5.14 Case Name: Phrase weight for project. Version: 1 Written By: Scott Minter Purpose: To test that the weight of a phrase is stored in respect to all the Requirements Fulfilled: 3.1.5.10 documents in the project. Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through weighting algorithm Words and phrases will be assigned weights. 5 Verify that the weight of a phrase is stored for all the documents in the project. The weight of a phrase will be stored with respect to all the documents in the project. (This space intentionally left blank.) 46 Lab 3 – LASI Prototype Test Plan Procedure Test Category: System Description: There shall be an aggregate weight computed across all documents in the project. Test Case: 5.15 Case Name: Aggregate weight Version: 1 Written By: Scott Minter Purpose: To test that there will be an aggregate weight across all documents Requirements Fulfilled: 3.1.5.11 in the project. Setup Conditions: Convert file to TXT Run through POS tagger Test Case Activity Pass/Fail Comments Expected Result 1 Create a TXT file with text the user wishes to test. A plain text document to test. 2 Run test file through POS tagger. Results in a list of paragraphs, sentences, phrases and words with words and phrases tagged for their corresponding POS. 3 Send through association algorithm Words and phrases will be associated with other words and phrases. 4 Send through association algorithm Words and phrases will be associated with other words and phrases. 5 Verify that there is an aggregate weight across all documents in a project. There will be an aggregate weight across all the documents in a project. (This space intentionally left blank.) Lab 3 – LASI Prototype Test Plan Procedure 6 Traceability to Requirements Our traceability requirements can be seen in the included file “Traceability_Matrix_v1.xlsx”. In this file you will find a matrix that summarizes our requirements and tests. 47