Undergraduate StudentsGraduate StudentsFacultyResourcesAlumniMY MSCS

print

Computer Science Handbook for 2007 - 2008

Updated November 27, 2007

INTRODUCTION | ADVISING and PRE-REGISTRATION | COURSE SELECTION | COMBINED MAJORS AND MINORS | REQUIREMENTS | SAMPLE CURRICULUM | STUDENT COMPUTING FACILITIES

INTRODUCTION

The Department seeks to provide each of its majors with a broad understanding of computer science. This broad understanding serves as a coherent framework in which the student can place his or her developing knowledge and technical skill. Moreover, the Department seeks to provide each student with a solid foundation in the central ideas and methods of modern computer science. It seeks to produce computer scientists who know, understand and can apply these central ideas and methods to real problems.

Computer science is dynamic. It grows constantly. It evolves continuously. It regularly experiences revolutionary transformation. The Department seeks, therefore, to produce computer scientists who can adapt and grow along with their chosen profession.

The Department does not seek to train its majors in any particular hardware device, software product or conceptual methodology. Rather, the goal is to provide its majors with the power to succeed in today's computer environment as well as tomorrow's. Students will however, acquire ample specific knowledge during their education.

ADVISING and PRE-REGISTRATION

A student planning to complete a major in computer science should enroll in COSC 060 and MATH 090 in the first semester of his or her freshman year and in COSC 061 and MATH 071 in the second semester. As soon as he or she has decided to major in the Department, the student should report to the Department office (room 340 of Cudahy Hall) to declare a major and to be assigned a departmental advisor. From this time on the student meets with his advisor to discuss course selections for the next semester and general academic progress. Access to preregistration through the TVR system is also handled through the departmental advisor.

COURSE SELECTION

A computer science major must satisfy the requirements for the major the graduation requirements of the College of Arts and Sciences as described in the University Undergraduate Bulletin. Both the requirements for the major and the general requirements of the College are flexible enough to allow each student to select a variety of courses. The following comments are intended to aid students in making these selections.

Students interested in careers in data processing or management information systems, should consider taking COSC 153 (Database Systems) and COSC 158 (Software Development).

A student more interested in the scientific aspects of computer science will want to include COSC 157 (Formal Languages) and COSC 159 (Artificial Intelligence).

In addition, the Department occasionally offers special courses not yet part of the regular curriculum. These will be listed in the Schedule of Classes as COSC 198 (Topics in Computer Science).

A student interested in the mathematical aspects of computer science, including both mathematical modeling and numerical analysis, should seriously consider a major or minor in mathematics to go with his or her major in computer science, or perhaps a major in computational mathematics. The requirements for combined programs are described later in this document. If interested in applications, a student should select mathematics electives such as: MATH 083 or MATH 140 (Differential Equations), MATH 146 (Numerical Analysis), MATH 167 (Theory of Optimization), MATH 164 (Statistical Methods), or the sequence MATH 160 (Theory of Probability), MATH 161 (Mathematical Statistics). If interested in theory, electives may include MATH 124 (Abstract Algebra), MATH 112 (Topology), MATH 120 (Number Theory).

A student interested in applications of computing in business may consider completing the requirements for the Minor in Business Administration described in the University Undergraduate Bulletin and outlined in the sample curriculum which appears later in this document.

Computer science students should consider taking PHIL 099 (Modern Logic) as part of their core curriculum requirements. This course is particularly beneficial for students planning to take COSC 153 or COSC 159.

Both the College of Engineering and the College of Business Administration offer a number of computer related courses. Computer science majors may find some of these useful as general education electives. Normally, courses from other Colleges may not be used to satisfy the requirements for a major in computer science

For electives outside the Department, courses that enhance communication and reasoning skills are the most beneficial to the computer science professional. There are a number of such courses to be found in the offerings of the Departments of English and Philosophy.

COMBINED MAJORS AND MINORS


Major in COMPUTER SCIENCE and MINOR in MATHEMATICS:

A student who majors in computer science and wishes to minor in mathematics should take MATH 080 (in place of MATH 071), MATH 081, MATH 082, and one upper division MATH elective (in addition to the requirements for the COSC major).

Major in COMPUTER SCIENCE and MATHEMATICS:

A student with a major in mathematics needs to complete the computer science requirements for the computer science major, which are: thirty-eight hours of COSC courses, including: COSC 060, 061, 065, 066, 125, 126, 152, and fifteen additional hours of upper division COSC courses. One of these courses may be used to satisfy the COSC requirement for the major in mathematics. MATH 080 will substitute for the MATH 071 requirement of the COSC major, and MATH 147 is required as a MATH elective.

Major in MATHEMATICS and MINOR in COMPUTER SCIENCE:

A student with a major in mathematics needs to complete the computer science requirements for the computer science minor, which are: COSC 060, 061, 065, 066, and six additional hours of upper division COSC courses. One of these may be used to satisfy the COSC requirement for the major in mathematics.

Major in MATHEMATICS and MINOR in SOFTWARE DEVELOPMENT:

A student with a major in mathematics needs to complete the computer science requirements for the software development minor, which are: COSC 060, 061, 066, 162, and six additional hours of upper division COSC courses. One of these may be used to satisfy the COSC requirement for the major in mathematics.

REQUIREMENTS FOR THE COMPUTER SCIENCE MAJOR

All students must take the following seven courses:

COSC 060

Object-Oriented Programming

4 sem. hrs.

COSC 061

Object-Oriented Software Design       

4 sem. hrs.

COSC 065

Hardware Systems

3 sem. hrs.

COSC 066

Data Structures & Algorithms 1

3 sem. hrs.

COSC 125

Operating Systems

3 sem. hrs.

COSC 126 Data Structures & Algorithms 2
3 sem. hrs.

COSC 152

Programming Languages

3 sem. hrs.

In addition, all students must take the following four mathematics courses: (MATH 080 can be used as a substitute for MATH 071, and should be taken by students interested in a MATH major or minor)

MATH 071

Elements of Calculus 1

3 sem. hrs.

MATH 090

Discrete Mathematics

3 sem. hrs.

MATH 147

System Modeling and Analysis

3 sem. hrs.

Upper division MATH elective

3 sem. hrs.

ELECTIVES

To complete the major, 15 semester hours of upper-division COSC courses are required. A partial list of available choices is given below:

COSC 146

Numerical Analysis

3 sem. hrs.

COSC 153

Principles of Database Systems

3 sem. hrs.

COSC 158

Software Design and Analysis

3 sem. hrs.

COSC 159

Artificial Intelligence

3 sem. hrs.

COSC 170

Compiler Construction

3 sem. hrs.

COSC 174 Programming Computer Games

3 sem. hrs.

COSC 176 Data Mining
3 sem. hrs.

BACHELOR OF SCIENCE (FOR COMPUTER SCIENCE MAJORS)


F r e s h m a n

First Term Sem. Hr.(16-17)
COSC 060 4

ENGL 001

3

Foreign Language

3-4

HIST 001 or 002

3

MATH 071 2,3

3

Second Term Sem. Hr.(16-17)
COSC 061 4

ENGL 002

3

Foreign Language
3-4

History/Social-Behavioral Science

3

MATH 090

3

S o p h o m o r e

First Term Sem. Hr.(15)
COSC 065 3

COSC 066

3

Social-Behavioral Science

3

THEO 001

3

Elective

3

Second Term Sem. Hr.(15)
COSC 125 3
COSC 126 3

PHIL 050

3

Literature

3

Elective

3

J u n i o r

First Term Sem. Hr.(16)
COSC 152
3

Computer Science elective

3

Literature

3

Natural Science

4

Mathematics elective

3

Second Term Sem. Hr.(16)

Computer Science electives

6

PHIL 104

3

Natural Science
4

Elective

3

S e n i o r

First Term Sem. Hr.(15-18)
Computer Science elective 3

MATH 147

3

Philosophy (upper division)

3

Theology (second level)

3

Electives

3-6

Second Term Sem. Hr.(15-18)
Computer science elective
3

Theology (third level)

3

Diverse Cultures elective

3

Electives

6-9

  1. Taking the minumum number of hours each term will not accumulate sufficient hours for graduation in four years.
  2. Potential computer science majors who have taken a university level calculus course in high school should discuss with the department the possibility of credit by examination for MATH 071.
  3. MATH 080, which is a required course in the MATH major and MATH minor, fulfills the MATH 071 requirement.

Computer Science Major with a Businesss Administration Minor

F r e s h m a n

First Term Sem. Hr.(16-17)
COSC 060 4

ENGL 001

3

Foreign Language

3-4

HIST 001 or 002

3

MATH 090

3

Second Term
Sem. Hr.(15-16)
COSC 061 3

ENGL 002

3

Foreign Language

3-4

MATH 0712,3

3

Elective

3

S o p h o m o r e

First Term Sem. Hr.(18)
COSC 065 3

COSC 066

3

THEO 001

3

ACCO 030

3

PHIL 050

3

Elective

3

Second Term Sem. Hr.(18)
COSC 125 3

COSC 126

3

Literature
3

PHIL 104

3

ACCO 031
3

Elective

3

J u n i o r

First Term Sem. Hr.(15-16)
COSC 152 3

Computer Science elective

3

Literature

3

Natural Science

3-4

ECON 043

3

Second Term Sem. Hr.(15-16)
Computer Science electives 6

MATH 164

3

Natural Science 3-4

ECON 044

3

S e n i o r

First Term Sem. Hr.(18)
Computer Science elective 3
MATH 147

3

Philosophy (upper division)

3

Theology (second level)

3

MARK 140 3

FINA 180

3

Second Term Sem. Hr.(15)
Computer Science elective
3
Theology (third level)

3

MANA 156

3

Diverse Cultures elective

3

Elective

3

  1. Taking the minimum number of hours each term will not accumulate sufficient hours for graduation in four years.
  2. Potential computer science majors who have taken a university level calculus course in high school should discuss with the department the possibility of credit by examination for MATH 071.
  3. MATH 080, which is a required course in the MATH major and MATH minor, fulfills the MATH 071 requirement.

STUDENT COMPUTING FACILITIES

Katherine Reed Cudahy Hall houses the University's central computing facility, maintained by Information Technology Services (ITS) in room 108, as well as the MSCS Department's computing facilities on the first, third, or fourth floors.

Each student enrolled at Marquette is granted an account on the Emarq/CheckMarq systems maintained by ITS. Accounts on the Emarq are obtained by applying in Room CU 293 and are maintained throughout the student's enrollment at Marquette. Additional information regarding University computing facilities can be obtained by calling ITS Help Desk at 288-7799.

Students enrolled in MSCS courses or registered as majors are also given access to the MSCS computing facilities (CU 101; 301 or 310; 410 or 412) available within the department. The MSCS computing facility consists of a network of SUN computers running the UNIX operating system, and PCs running Windows and Linux. Access to the MSCS computers is available directly through the first, third, and fourth floor laboratories of Cudahy Hall. The department also provides computing resources specifically to particular undergraduate and graduate courses (e.g., networks, hardware) and faculty research.

Although students may have their own computing equipment, the resources provided by the department are all that are required for course work. Students are encouraged to use the department's facilities since it is through these efforts that they learn the ins and outs of the UNIX/Linux/Windows operating systems, gain access to the Internet, and conveniently submit homework assignments.