Skip to Content Find it Fast

This browser does not support Cascading Style Sheets.

Undergraduate Course Catalog 2008-2009

College of Engineering and Physical Sciences

» http://www.ceps.unh.edu


Computer Science (CS)

» http://www.cs.unh.edu

» Click to view course offerings

Chairperson: Philip J. Hatcher
Professor: R. Daniel Bergeron, Pilar de la Torre, Philip J. Hatcher, Ted M. Sparr, Colin Ware
Associate Professor: Radim Bartos, Michel Charpentier, Robert D. Russell, Elizabeth Varki, James L. Weiner
Affiliate Associate Professor: Jason H. Moore, Sylvia Weber Russell, Elise H. Turner, Roy M. Turner
Assistant Professor: Wheeler Rumi
Instructor: Michael Gildersleeve, Brian L. Johnson, Israel J. Yost
Lecturer: Mark L. Bochert, Ellen M. Hepp, Linda Kenney, Karl Shump

Computer scientists are concerned with all aspects of the design and implementation of computer software. They are concerned with problem solving in general, with particular emphasis on the design of computer-efficient solutions. This involves detailed understanding of the nature of algorithms (a set of rules for solving a problem), the software implementation techniques necessary to utilize algorithms on computers, and a knowledge of how algorithms can be combined in a structured manner to form highly complex software systems.

The broad objectives for the B.S. in computer science are to produce graduates who:

1.  are competent in formulating and solving computer science problems including the development of non-trivial software systems;

2.  understand computer science fundamentals along with supporting mathematics and science sufficiently well to be prepared for a wide range of jobs and to pursue advanced degrees;

3.  are able to function in the workplace with the necessary technical skills and with appropriate oral and written communication skills; and

4.  have a broad education that promotes professional advancement, lifelong personal development, and social responsibility.

Computer science majors must obtain an overall grade-point average of 2.00 or better in all required computer science, mathematics, and electrical engineering courses in order to graduate. If at the end of any semester, including the first, a student’s cumulative average in these courses falls below 2.00, the student may not be allowed to continue as a CS major.

If a student wishing to transfer into the computer science major has taken any other coursework that is applicable to the major, the grades in those courses must satisfy the minimum requirements for the B.S. degree in computer science. The student must have an overall grade-point average of 2.00 or better in all courses taken at UNH.

Bachelor of Science in Computer Science
The standard program leads to a B.S. in computer science and is designed to prepare students for both employment and graduate study in the field. The program emphasizes the application of computer science theory and principles but also includes a broad background in basic mathematics and an introduction to computer hardware. Most courses require heavy use of the computer, and the laboratories stress hands-on experience with building software systems.

The B.S. in Computer Science program is accredited by the Computing Accreditation Commission of ABET, 111 Market Place, Suite 1050, Baltimore, MD 21202-4012; telephone: (410) 347-7700.

Requirements
1.    Satisfy general education requirements. The following courses are required and may be used to fulfill requirements in the appropriate general education group: PHYS 407-408, General Physics I and II; MATH 425, Calculus I; and PHIL 424, Science, Technology and Society.

2.    Two additional technology or science courses, one of which may satisfy a general education requirement, chosen from the following list:

Biology
BIOL 411, Principles of Biology I
BIOL 412, Principles of Biology II
BIOL 413, Principles of Biology I (a UNHM course)
BIOL 414, Principles of Biology II (a UNHM course)
HMP 501, Epidemiology and Community Medicine
MICR 501, Public Health Microbiology
PBIO 412, Introductory Botany
PBIO 421, Concepts of Plant Growth
ZOOL 412, Principles of Zoology

Physical Science
CHEM 401-402, Introduction to Chemistry
CHEM 403-404, General Chemistry
CHEM 405, General Chemistry
ESCI 405, Global Environmental Change
ESCI 409, Environmental Geology
ESCI 501, Introduction to Oceanography
NR 504, Freshwater Resources

Technology
PHIL 447, Computer Power and Human Reason

3.    Two additional approved courses chosen from the humanities, social sciences, and arts. These courses are in addition to any courses used to satisfy general education requirements.

4.    One core course, CS 415, Introduction to Computer Science I, which must be passed with a grade of B- or better.

5.    Ten additional core courses, which must be passed with a grade of C- or better. Before taking a course having any of these ten courses as a prerequisite, the prerequisite course(s) must be passed with a grade of C- or better: CS 416, Introduction to Computer Science II; CS 515, Data Structures; CS 516, Introduction to Software Design and Development; CS 520, Assembly Language Programming and Machine Organization; CS 620, Operating System Fundamentals; CS 671, Programming Language Concepts and Features; MATH 425 and MATH 426, Calculus I and II; MATH 531, Mathematical Proof; MATH 532, Discrete Mathematics.

6.    CS 595, Computer Science Seminar (two credits).

7.    One computer science theory course chosen from: CS 645, Introduction to Formal Specification and Verification; or CS 659, Introduction to the Theory of Computation.

8.    CS 719, Object-oriented Methodology.

9.    Two approved computer science courses chosen from CS courses numbered above 640 or ECE 777, Collaboration Engineering, or ECE 649, Embedded Microcomputer Based Design.

10.    One approved writing intensive course chosen from CS courses numbered above 640.

11.    One course in probability and statistics: MATH 644, Statistics for Engineers and Scientists or MATH 539, Introduction to Statistical Analysis.

12.    Two electrical and computer engineering courses: ECE 543, Introduction to Digital Systems, and ECE 562, Computer Organization.

Bachelor of Science in Computer Science, Bioinformatics Option
The aim of the bioinformatics option is to provide a tailored program for undergraduate students who wish to apply computer science expertise in the life sciences. The bioinformatics field is an increasingly important subdiscipline in computer science. The demand for computer science graduates who can apply their knowledge in the life sciences is large, and is expected to continue to grow.

The bioinformatics option has the same core as the B.S. program but requires the appropriate coursework in chemistry, biology, biochemistry, and statistics. The bioinformatics option of the baccalaureate-level program in computer science is not yet accredited because it has not yet been through the entire review process. A complete review will be conducted in Fall 2008.

The option requirements are:
1.    Satisfy general education requirements. The following courses are required and may be used to fulfill requirements in the appropriate general education group: CHEM 403-404, General Chemistry; BIOL 411, Principles of Biology I; MATH 425, Calculus I; and PHIL 424, Science, Technology and Society.

2.    Three science courses: BIOL 412, Principles of Biology II; BIOL 604, Genetics; and BCHEM 711, Genomics and Bioinformatics.

3.    Two approved courses chosen from the humanities, social sciences, and arts. These courses are in addition to any courses used to satisfy general education requirements.

4.    One core course, CS 415, Introduction to Computer Science I, which must be passed with a grade of B- or better.

5.    Ten additional core courses, which must all be passed with a grade of C- or better. Before taking a course having any of these ten courses as a prerequisite, the prerequisite course(s) must be passed with a grade of C- or better: CS 416, Introduction to Computer Science II; CS 515, Data Structures; CS 516, Introduction to Software Design and Development; CS 520, Assembly Language Programming and Machine Organization; CS 620, Operating System Fundamentals; CS 671, Programming Language Concepts and Features; MATH 425 and MATH 426, Calculus I and II; MATH 531, Mathematical Proof; MATH 532, Discrete Mathematics.

6.    CS 595, Computer Science Seminar (two credits).

7.    One computer science theory course chosen from: CS 645, Introduction to Formal Specification and Verification; or CS 659, Introduction to the Theory of Computation.

8.    Two required senior-level courses: CS 719, Object-Oriented Methodology, and CS 775, Database Systems.

9.    One additional senior-level course chosen from CS 730, Introduction to Artificial Intelligence; CS 767, Interactive Data Visualization; CS 770, Computer Graphics; or CS 696, Independent Study. The chosen course must include a project that addresses bioinformatics issues.

10.    At least one of the three senior-level computer science courses must be writing intensive.

11.    Two courses in probability and statistics: MATH 539, Introduction to Statistical Analysis or MATH 644, Statistics for Engineers and Scientists, and a follow-up course chosen from MATH 739, Applied Regression Analysis; MATH 742, Multivariate Statistical Methods; or MATH 755, Probability and Stochastic Processes with Applications.

12.    One course in electrical and computer engineering: ECE 543, Introduction to Digital Systems.

» Click to view course offerings

^ back to top