Welcome to CS 212 – Software Development. This course gives students experience designing, implementing, testing, debugging, and reviewing large programs. Students will also get advanced Java programming experience, covering topics such as inheritance, multithreading, networking, database programming, and web development.

Please check this website frequently for updates, lecture notes, and homework information.

CS Night

posted Dec 5, 2012, 1:34 PM by Sophie Engle

Tomorrow is 11th annual CS Night and our 1st annual CS Night Game Jam. I hope to see everyone there!

Last Office Hours

posted Dec 5, 2012, 11:28 AM by Sophie Engle

Since I will have back-to-back code reviews this evening, I am adding one more set of office hours on Thursday 12/6 from 2:30pm to 3:30pm for any last minute questions.

Search Engine Demo

posted Dec 4, 2012, 7:32 PM by Sophie Engle

If you are demonstrating a search engine on Friday 12/7, you may demonstrate your search engine on your own laptop. (Otherwise, we'll lose too much time to setup and configuration to get it running.)


posted Dec 3, 2012, 1:48 PM by Sophie Engle

In addition to the SUMMA evaluations, you can fill out optional surveys to provide feedback for this course. This gives you the opportunity to add comments and make suggestions for improvement. Go to the Feedback page for more information.

Partial Grades

posted Dec 2, 2012, 5:04 PM by Sophie Engle

Your partial project grades will be calculated as follows:

  • 50 points: Correct functionality
  • 50 points: Well-designed

Your code design will be graded on the following criteria:

  • 10 points: Code formatting and style
  • 10 points: Exception handling and input validation
  • 10 points: Generalized and object-oriented
  • 10 points: Encapsulated and data integrity
  • 10 points: Efficient runtime and memory usage

The remaining functionality points will be assigned differently for each project. The breakdown for project 2 will be:

  • 10 points: Single-word partial search
  • 20 points: Multiple-word partial search
  • 20 points: Sorting of search results

The breakdown for project 3 will be:

  • 10 points: Custom lock object
  • 10 points: Thread-safe inverted index
  • 15 points: Multithreaded index building
  • 15 points: Multithreaded index searching

The breakdown for project 4 will be:

  • 15 points: Downloading and parsing of web pages
  • 15 points: Parsing and storing of links
  • 20 points: Multithreaded crawling and searching

For the breakdown of points for project 5, please see the project page.

Last Project

posted Nov 28, 2012, 1:16 PM by Sophie Engle

I will hold interactive grading for your last project on Friday, December 7, 2012 between 12:00pm – 7:00pm. ALL STUDENTS MUST SIGN UP. You do NOT need to sign up for a pre-pass for this appointment.

If you do not receive a PASS on your last project, you will be assigned a partial grade instead. You will also have the opportunity to resubmit that project for an offline code review by December 13, 2012. Please note offline code reviews are only available for projects 1 through 4, and that this opportunity is only for those that do not receive a PASS on 12/7.

Final Retakes

posted Nov 24, 2012, 11:09 PM by Sophie Engle

Your final exam grades in Blackboard have been updated with the points you earned from the retake. I will have your exams in my office if you would like to review your exam and retake. The final exam average is now a 75.45%, or a C+ letter grade with the current curve.

Final Exam Grades

posted Nov 20, 2012, 10:16 PM by Sophie Engle   [ updated Nov 20, 2012, 10:21 PM ]

The grades for the final exam have been posted on Blackboard. 


There were 100 points possible, but this was scaled to 95 points (e.g. your score is calculated as your total out of 95 points). The average was a 61.28%.


You will have the opportunity to earn back 50% of the points you missed on the retake on Wednesday. If you did poorly on the final, it is still possible able to pass the exam by doing well on the retake!

If you miss the retake due to holiday travel, contact me privately to see if it is possible to make alternative arrangements.


The scale converting percentages to letter grades has been curved by half a letter grade. For example, before you had to have a 93% or above to receive an A+ and a 90% or above for an A. Now, you need a 90% for an A+ and a 87% for an A.

It is highly likely undergraduate students will receive an additional curve at the end of the semester.

Final Exam

posted Nov 15, 2012, 8:33 PM by Sophie Engle

The final exam review has been posted. The final exam will be next week, on Monday, November 19, 2012 during class.

Project 5

posted Nov 15, 2012, 8:26 PM by Sophie Engle

Details for Project 5 – Search Engine have been posted.

1-10 of 54