Homework 5 - Option 4
When sending large files via e-mail or USENET, one often needs to divide a file into smaller parts due to per-message size limits. There are several ways in which a file can be partitioned. However, once a file is partitioned, you need to have all the parts to reassemble the original file. Or do you...

As it turns out, there are ways in which you can send recovery data along with the data itself. This idea appears in many places in the CS world - parity bits, RAID drives, etc... In the domain of files, one technique is to take a file, create a partitioned RAR of it (a RAR file is basically a compressed version of the original) and then create some PAR files (parity files that can be used to recreate missing files) and post all of those. Then, if you are missing a file, you might be able to recreated it from the ones you have. (The inner details are not important for the homework, but if you are curious, I'll be happy to discuss them after the homework is due.)

In this homework, you will use two different programs that allow a user to take a bunch of parititioned rar files and one or more par files and (sometimes) recreate missing rar files. I have posted a zip file that contains a README file and three directories. One directory has the two pieces of software that you are going to be using. The other two directories contain RAR and PAR files for a GIF and a JPG. You will need to use each piece of software to attempt to recreate the missing RAR files for each of the two image files.

You will need to submit a heuristic evaluation for each of the two pieces of software. They should be written relative to the task that I have presented here - recovering missing RAR partition files. The audience for each report is the chief software engineer at the company that produces that software. The evaluations should be turned in at class time in the form of a report.