Interested in a PLAGIARISM-FREE paper based on these particular instructions?...with 100% confidentiality?

Order Now

1. Introduction As outlined in the Task 1 document, both task (Task 1 and Task 2) comprise parts of one project. Task 1 focused on loading data from three files, validating, displaying a crozzle and its score. Task 2 will focus on loading data from three similar files for your program to automatically create a valid crozzle that has the highest possible score that your program can achieve, and within a particular time period. Creating a new valid crozzle is where you write nearly all of your new code for Task 2. Your code needs to determine which subset of words from the wordlist, that when connected in some arrangement, produces a high or maximum score, and adheres to all constraints and configurations. Creating one new crozzle must be based on: a) a crozzle CZL text file b) a configuration CFG text file c) a word list WLS text file d) the crozzle constraints e) the configuration constraints f) the word constraints g) the time constraints h) the scoring constraints 2. Software Requirements Your software solution for Task 2 can be an extension of your Task 1 solution. It requires functionality to: 1. Read a crozzle CZL text file, a configuration CFG text file, and a WLS text file of words for your program to automatically create a new crozzle. These files are hosted on both an IIS server managed by the School of IT, and Microsoft Azure. The URLs for the first group of test files are: http://www.it.deakin.edu.au/SIT323/Task2/Test1.czl http://www.it.deakin.edu.au/SIT323/Task2/Test1.cfg http://www.it.deakin.edu.au/SIT323/Task2/Test1.wls http://sit323.azurewebsites.net/Task2/Test1.czl http://sit323.azurewebsites.net/Task2/Test1.cfg http://sit323.azurewebsites.net/Task2/Test1.wls Your code should initially attempt to open a particular file on the IIS server hosted at www.it.deakin.edu.au in order to read the file contents. However, if that fails, your code should try the same file on Azure. Your code for accessing such files can be based on the WebClient demo’s from Class 6. Your code for reading the details of these files can be based on your code from Task 1. Clearly, each group of three text files (cfg, czl and wls) provide the following data, characteristics and constraints, which your program will depend on to automatically create a new crozzle and determine its score: a. crozzle dimensions b. a list of words c. points per word d. points for each intersecting letter e. points for each non-intersecting letter f. limits to the number of rows and columns in a crozzle g. limits to the number of word groups permitted in a crozzle h. and so on 2. Compute and display the score of a new crozzle. This code might be based on your code from Assessment Task 1 where: a. this score must be accurate b. a score for an invalid crozzle cannot be determined, and the appropriate configuration value shall be used in such invalid cases 3. Create a valid crozzle based on a word list, constraints and configurations. In general, there might be thousands or millions of crozzles that can be created from a list of words, grid size, other configuration values and constraints. Ideally your algorithm should find one of these crozzles with the maximum score, but practically this might be impossible in cases with large grids and a large number of words. As your algorithm might not meet this ideal goal, your program must attempt to obtain a large score within a 300 second time period. That is, after 300 seconds of runtime, your program must: • stop looking for other crozzles • display the highest scoring crozzle that your program found • display the score of that crozzle 4. Request the number of word groups from a Remote Service hosted on Azure. Your valid crozzle must adhere to many constraints and configurations such as the number of word groups must be within the minimum and maximum limit, inclusive. Your code, for Task 2, will use a ‘service reference’ to a remote service. Such a remote service can host 0 or more remote methods. The service URL is currently: http://sit323.azurewebsites.net/WordGroupService.svc One remote method at this service takes an array of strings, one string for each row of your crozzle, computes the number of word groups in those strings, and returns this number to your program. For example, in the following code, the remote Count() method, that runs on Azure, would return the value of 4. string[] grid = { “WATERFALLS”, “A A O “, “INK A MAN”, “T ELM E “, ” T”, “SEEN HER”, “O O Y” }; WordGroupServiceClient wsAzure = new WordGroupServiceClient(); int numberOfGroups = wsAzure.Count(grid); 5. Save a created crozzle to a CZL text file. Based on Assessment Task 1, your Task 2 program should also be able to open and display a new crozzle that your Task 2 program has saved to a new CZL text file. Crozzle Text File (.CZL) The format of the crozzle CZL text file is the same as that for Task 1. However, a .czl file extension will be used instead of a .txt extension. As you are creating a new crozzle from an empty grid, ROW and COLUMN items will not be provided in crozzle CZL text files for Task 2. Word List Text File (.WLS) The format of the word list WLS text file is as follows. • A .wls file extension will be used instead of a .txt extension. • A valid word list file does not contain duplicate words. • Comma separated words are placed on the first and only line of a WLS text file. This line can contain 1 or more words. There shall be no commas before the first word, and no commas after the last word. Some valid examples are: APPLE APPLE,BANANA APPLE,BANANA,CHERRY APPLE,BANANA,CHERRY,LIME,LEMON,ORANGE,BLUEBERRY • A regular expression pattern will define allowable characters in a word. This pattern is specified in the configuration CFG text file. For example, WORD_REGEX_PATTERN=”[a-zA-Z]{2,}” Configuration Text File (.CFG) The format of the configuration CFG text file is effectively the same as that for Task 1. However, a .cfg file extension will be used instead of a .txt extension. This file will contain two additional key-value pairs: 1. a runtime limit such as: RUNTIME_LIMIT=300 // 300 seconds 2. a regular expression pattern such as: WORD_REGEX_PATTERN=”[a-zA-Z]{2,}” Constraints Your software solution for Task 1 requires constraints and configuration values to be considered and adhered to when creating and validating a crozzle and determining a crozzle score. These constraints are: 1. A valid crozzle must conform to all configuration settings. 2. Each sequence of two or more horizontal (vertical) characters delimited by spaces or the crozzle edge must form a word that can be found in the wordlist. 3. A horizontal word can only run from left to right. 4. A vertical word can only run from high to low. 5. Diagonal sequences of characters, which can be formed by horizontal and vertical words, are not pertinent to scoring or validity. Portfolio Document Similarly to Task 1, you must produce a Word document of professional quality showing inputs and outputs of your program. In general, you need to show your GUI output (such as your new crozzle and its score) related to each of the three assessment tests. The related file names will be: 1. Marking Test 1.cfg Marking Test 1.czl Marking Test 1.wls 2. Marking Test 2.cfg Marking Test 2.czl Marking Test 2.wls 3. Marking Test 3.cfg Marking Test 3.czl Marking Test 3.wls Your Portfolio Document must include the following: 1. a title page 2. a contents page 3. an introduction page 4. document body 5. an appendix The document body contains sections, one section for each test. A section will include a brief summary and the outputs of a particular test such as: 1. a snapshot of your GUI, and 2. the saved crozzle CZL text file. The appendix contains sections too, one section for each test. A section will include copies of the input data files of a particular test such as: 1. the crozzle CZL text file, 2. the word list WLS text file, and 3. the configuration CFG text file.

 

1.  Introduction

As outlined in the Task 1 document, both task (Task 1 and Task 2) comprise parts of one project. Task 1 focused on loading data from three files, validating, displaying a crozzle and its score.

Task 2 will focus on loading data from three similar files for your program to automatically create a valid crozzle that has the highest possible score that your program can achieve, and within a particular time period.

Creating a new valid crozzle is where you write nearly all of your new code for Task 2. Your code needs to determine which subset of words from the wordlist, that when connected in some arrangement, produces a high or maximum score, and adheres to all constraints and configurations. Creating one new crozzle must be based on:

  1. a crozzle CZL text file
  2. a configuration CFG text file
  3. a word list WLS text file
  4. the crozzle constraints
  5. the configuration constraints
  6. the word constraints
  7. the time constraints
  8. the scoring constraints

 

 

2.  Software Requirements

Your software solution for Task 2 can be an extension of your Task 1 solution. It requires functionality to:

  1. Read a crozzle CZL text file, a configuration CFG text file, and a WLS text file of words for your program to automatically create a new crozzle.

 

These files are hosted on both an IIS server managed by the School of IT, and Microsoft Azure. The URLs for the first group of test files are:

 

http://www.it.deakin.edu.au/SIT323/Task2/Test1.czl http://www.it.deakin.edu.au/SIT323/Task2/Test1.cfg http://www.it.deakin.edu.au/SIT323/Task2/Test1.wls

 

http://sit323.azurewebsites.net/Task2/Test1.czl http://sit323.azurewebsites.net/Task2/Test1.cfg http://sit323.azurewebsites.net/Task2/Test1.wls

 

Your code should initially attempt to open a particular file on the IIS server hosted at www.it.deakin.edu.au in order to read the file contents. However, if that fails, your code should try the same file on Azure.

 

Your code for accessing such files can be based on the WebClient demo’s from Class 6. Your code for reading the details of these files can be based on your code from Task 1.

 

Clearly, each group of three text files (cfg, czl and wls) provide the following data, characteristics and constraints, which your program will depend on to automatically create a new crozzle and determine its score:

  1. crozzle dimensions
  2. a list of words
  3. points per word
  4. points for each intersecting letter
  5. points for each non-intersecting letter
  6. limits to the number of rows and columns in a crozzle
  7. limits to the number of word groups permitted in a crozzle
  8. and so on

 

  1. Compute and display the score of a new crozzle.

 

This code might be based on your code from Assessment Task 1 where:

  1. this score must be accurate
  2. a score for an invalid crozzle cannot be determined, and the appropriate configuration value shall be used in such invalid cases

 

  1. Create a valid crozzle based on a word list, constraints and configurations.

 

In general, there might be thousands or millions of crozzles that can be created from a list of words, grid size, other configuration values and constraints.

 

Ideally your algorithm should find one of these crozzles with the maximum score, but practically this might be impossible in cases with large grids and a large number of words.

As your algorithm might not meet this ideal goal, your program must attempt to obtain a large score within a 300 second time period. That is, after 300 seconds of runtime, your program must:

  • stop looking for other crozzles
  • display the highest scoring crozzle that your program found
  • display the score of that crozzle

 

 

  1. Request the number of word groups from a Remote Service hosted on Azure.

 

Your valid crozzle must adhere to many constraints and configurations such as the number of word groups must be within the minimum and maximum limit, inclusive.

 

Your code, for Task 2, will use a ‘service reference’ to a remote service. Such a remote service can host 0 or more remote methods. The service URL is currently:

 

http://sit323.azurewebsites.net/WordGroupService.svc

 

One remote method at this service takes an array of strings, one string for each row of your crozzle, computes the number of word groups in those strings, and returns this number to your program.

 

For example, in the following code, the remote Count() method, that runs on Azure, would return the value of 4.

string[] grid = {                 “WATERFALLS”,

                “A A O     “,                 “INK A  MAN”,                 “T ELM  E  “,                 ”         T”,                 “SEEN   HER”,                 “O  O     Y” };

 

WordGroupServiceClient wsAzure = new WordGroupServiceClient();

 

int numberOfGroups = wsAzure.Count(grid);

 

  1. Save a created crozzle to a CZL text file.

 

Based on Assessment Task 1, your Task 2 program should also be able to open and display a new crozzle that your Task 2 program has saved to a new CZL text file.

 

 

Crozzle Text File (.CZL)

The format of the crozzle CZL text file is the same as that for Task 1. However, a .czl file extension will be used instead of a .txt extension.

As you are creating a new crozzle from an empty grid, ROW and COLUMN items will not be provided in crozzle CZL text files for Task 2.

 

Word List Text File (.WLS)

The format of the word list WLS text file is as follows.

  • A .wls file extension will be used instead of a .txt extension.
  • A valid word list file does not contain duplicate words.
  • Comma separated words are placed on the first and only line of a WLS text file. This line can contain 1 or more words. There shall be no commas before the first word, and no commas after the last word. Some valid examples are:

 

APPLE

APPLE,BANANA

APPLE,BANANA,CHERRY

APPLE,BANANA,CHERRY,LIME,LEMON,ORANGE,BLUEBERRY

 

  • A regular expression pattern will define allowable characters in a word. This pattern is specified in the configuration CFG text file. For example,

 

WORD_REGEX_PATTERN=”[a-zA-Z]{2,}”

 

 

 

 

 

Configuration Text File (.CFG)

The format of the configuration CFG text file is effectively the same as that for Task 1. However, a .cfg file extension will be used instead of a .txt extension.

This file will contain two additional key-value pairs:

  1. a runtime limit such as:

RUNTIME_LIMIT=300    // 300 seconds

 

  1. a regular expression pattern such as:

WORD_REGEX_PATTERN=”[a-zA-Z]{2,}”

Constraints

Your software solution for Task 1 requires constraints and configuration values to be considered and adhered to when creating and validating a crozzle and determining a crozzle score. These constraints are:

  1. A valid crozzle must conform to all configuration settings.
  2. Each sequence of two or more horizontal (vertical) characters delimited by spaces or the crozzle edge must form a word that can be found in the wordlist.
  3. A horizontal word can only run from left to right.
  4. A vertical word can only run from high to low.
  5. Diagonal sequences of characters, which can be formed by horizontal and vertical words, are not pertinent to scoring or validity.

 

Portfolio Document

Similarly to Task 1, you must produce a Word document of professional quality showing inputs and outputs of your program. In general, you need to show your GUI output (such as your new crozzle and its score) related to each of the three assessment tests. The related file names will be:

  1. Marking Test 1.cfg Marking Test 1.czl

Marking Test 1.wls

  1. Marking Test 2.cfg Marking Test 2.czl

Marking Test 2.wls

  1. Marking Test 3.cfg

Marking Test 3.czl

Marking Test 3.wls

Your Portfolio Document must include the following:

  1. a title page
  2. a contents page
  3. an introduction page
  4. document body
  5. an appendix

The document body contains sections, one section for each test. A section will include a brief summary and the outputs of a particular test such as:

  1. a snapshot of your GUI, and the saved crozzle CZL text file.

The appendix contains sections too, one section for each test. A section will include copies of the input data files of a particular test such as: 1. the crozzle CZL text file,

  1. the word list WLS text file, and 3. the configuration CFG text file.

 

Interested in a PLAGIARISM-FREE paper based on these particular instructions?...with 100% confidentiality?

Order Now