CORRECT FUNCTIONING: (80%)


1. configurable options for scraper: (total 12 pts)
    * fall vs. spring vs. summer (2 pts)
    * URL's of the three websites (must be persistent) (2 pts for option, + 2 pts for persistence)
    * output only to files (default) vs. output to files and database (2 pts, + 2 pts for correct default)
    * staging vs. production database (if database output selected) (2 pts)

2. scraper GUI must remain responsive; must report progress to the GUI (10 pts)

3. scraper must be able to be stopped before completion (confirmation is advisable) (5 pts)

4. By default, scraper must deposit all info into .csv files (6 pts)

5. if in database-update mode, scraper clears old data (6 pts)

6. scraper finds at least as many sections as my scraper (12 pts)
     deduction if less, extra credit if more

7. scraper GUI, when scraping has completed, shows: (total 7 pts)
   --num departments, courses and sections found (3 pts)
   --the URL which was scraped (2 pts)
   --the location of the output files (2 pts)


8. ASP.NET application which queries the database (good as Pat's) (15 pts)

9. two copies of the ASP.NET app: (total 7 pts)
    --1st pulls from a staging database
    --2nd pulls from a production database (5 pts)

    production site should never be allowed to appear "broken",
    either due to ASP.NET code or database issues (2 pts)