2003-04 Undergraduate Catalog
Indiana, Pennsylvania 15705
|
Chairperson: |
James L. Wolfe |
|
Faculty: |
Ali, Ezekiel, Micco, Oblitey, O’Neil, Shim, Shumba, Shubra |
|
P |
Tompkins |
Website: www.iup.edu/compsci
|
Bachelor of Science–Computer Science |
The programs in Computer Science at IUP lead to the B.S. or B.A. degree and are designed primarily to prepare graduates for productive work in highly computer-dependent areas of business, government, and industry. In recent years, majors graduating from the program have attained their first jobs in business applications, programming and systems analysis, computer software development, scientific and applied mathematical programming, and other computer-related areas and have gone to graduate school.
In a rapidly developing field such as Computer Science, it is important that the graduate’s education be broad and fundamental so that new trends can more readily be followed. Our goal is to balance fundamentality and breadth with sufficient supervised practice so that our graduates are productive at the time they graduate but ready and willing to change with the field.
Most applied computer scientists work in cooperation with professionals trained in other areas and with managers. Hence, the ability to work and communicate with others of different educational backgrounds is an important characteristic. To that end, we encourage Computer Science majors to take a strong minor (or area concentration) in a second area of interest. Some students may wish to double major. Majors in other disciplines at IUP are also welcome to take Computer Science courses for which they are qualified or a Computer Science minor.
Students majoring in Computer Science should set their goals beyond simple programming and should be preparing to:
1. program well, both in design and implementation phases, and document what they have programmed
2. analyze real-world problems in preparation for program design and implementation
3. manage activities that are strongly computer dependent
4. improve the tools that programmers and systems analysts use, i.e., to develop
a. better software systems
b. better graphical user interfaces
c. better languages for communicating with computers
d. better web-based interfaces and databases
e. better methods for solving intractable problems
5. teach about computers at college or high school level
6. advance the fundamental theory of digital information processors
7. increase awareness of information assurance education and issues.
|
Liberal Studies: As outlined in Liberal Studies section with the following specifications: Mathematics: MATH 123 (1) Liberal Studies Electives: 4cr, MATH 216 (1), no courses with COSC prefix |
50 |
||
| Major: | 36 | ||
| Required Courses: | |||
|
Fundamentals of Computer Science |
3cr |
||
|
Problem Solving and Structured Programming |
3cr |
||
|
Object-Oriented and GUI Programming |
3cr |
||
|
Applied Computer Programming |
4cr |
||
|
Assembly Language Programming |
3cr |
||
|
Data Structures and Algorithms |
3cr |
||
|
Introduction to Database Management Systems |
3cr |
||
|
Seminar on the Computer Profession |
1cr |
||
|
Seminar on Technical Topics |
1cr |
||
|
Controlled Electives: Select 6cr from the following: (2) |
|||
|
Introduction to Numerical Methods |
3cr |
||
|
Interactive Internet Programming with Java |
3cr |
||
| COSC 316 | Cybersecurity Basics (3) | 3cr | |
|
Software Engineering Concepts |
3cr |
||
|
Software Engineering Practice |
3cr |
||
|
Productivity Tools and Fourth Generation Languages |
3cr |
||
|
Data Communications |
3cr |
||
|
Testing and Controlling LANs |
3cr |
||
|
Computer Graphics |
3cr |
||
| COSC 356 | Network Security | 3cr | |
|
IBM Job Control Language |
1cr |
||
|
UNIX Systems |
3cr |
||
|
Special Topics in Computer Science |
1-4cr |
||
|
Independent Study |
1-4cr |
||
|
Internship in Computer Science (4) |
12cr |
||
|
Data Warehousing and Mining |
3cr |
||
| Upper-level Electives by Categories: (5) | 6cr | ||
|
Computer Architecture: COSC 410 Theory of Languages: COSC 419, 420, 424, 460 Systems Programming: COSC 430, 432 Numerical Methods: COSC 427, 450, 451 Artificial Intelligence: COSC 405 Database Management: COSC 415 |
|||
|
Other Requirements: |
6-12 | ||
|
Additional Writing: |
|||
| ENGL 322 |
Technical Writing |
3cr | |
| Foreign Language Intermediate Level | 0-6cr | ||
| Additional Mathematics: | |||
| MATH 219 | Discrete Mathematics | 3cr (1) | |
| Free Electives: | 22-28 | ||
| Total Degree Requirements: | 120 | ||
|
(1) MATH 123 can be substituted by taking both MATH 121 and 122. MATH 216 can be substituted by taking both MATH 214 and 417 or both MATH 217 and 417. The 3cr minimum applies to students who take MATH 123 and 216. The 9cr maximum applies to students who do not take MATH 123 and MATH 216 but choose alternatives in addition to MATH 219. (2) Select at least 6cr from the list of controlled electives. Note: Only 4cr of COSC 493 may be counted toward these 6cr. (3) COSC 316 cannot be counted for major credit if a student does an Information Assurance minor. (4) COSC 493 may be selected in either the second semester of the junior year or the first semester of the senior year. If COSC 493 is selected and approved, COSC 380 should be taken in the immediately preceding semester. (5) Select at least two additional courses, from at least two different categories, from the list of upper-level electives. |
|||
| Liberal
Studies: As outlined in Liberal Studies section with the following specifications: Mathematics: MATH 123 (1) Liberal Studies Electives: 4cr, MATH 216 (1), no courses with COSC prefix |
50 | ||
| Major: | 39 | ||
| Required Courses: | |||
|
Fundamentals of Computer Science |
3cr |
||
|
Problem Solving and Structured Programming |
3cr |
||
|
Object-Oriented and GUI Programming |
3cr |
||
|
Applied Computer Programming |
4cr |
||
|
Assembly Language Programming |
3cr |
||
|
Data Structures and Algorithms |
3cr |
||
|
Software Engineering Concepts |
3cr |
||
|
Introduction to Database Management Systems |
3cr |
||
|
Seminar on the Computer Profession |
1cr |
||
|
Seminar on Technical Topics |
1cr |
||
| Select one of the following two courses: (2) | |||
| COSC 304 | Interactive Internet Programming with JAVA |
3cr |
|
| COSC 344 | Productivity Tools and Fourth Generation Languages |
3cr |
|
| Select one of the following two courses: (3) | |||
| COSC 320 | Software Engineering Practice |
3cr |
|
| COSC 493 | Internship in Computer Science (4) |
12cr |
|
|
Controlled Electives: Select 3cr from the following: (5) |
|||
|
Introduction to Numerical Methods |
3cr |
||
| COSC 316 | Cybersecurity Basics (6) | 3cr | |
|
Data Communications |
3cr |
||
|
Testing and Controlling LANs |
3cr |
||
|
Computer Graphics |
3cr |
||
| COSC 356 | Network Security | 3cr | |
|
IBM Job Control Language |
1cr |
||
|
UNIX Systems |
3cr |
||
|
Special Topics in Computer Science |
1-4cr |
||
|
Independent Study |
1-4cr |
||
| IFMG 455 |
Data Warehousing and Mining |
3cr |
|
| Upper-level Electives by Categories: Select 3cr from the following: (7) | 3cr | ||
|
Computer Architecture: COSC 410 Theory of Languages: COSC 419, 420, 424, 460 Systems Programming: COSC 430, 432 Numerical Methods: COSC 427, 450, 451 Artificial Intelligence: COSC 405 Database Management: COSC 415 |
|||
|
Other
Requirements: |
6-12 | ||
| Additional Writing: | |||
| ENGL 322 |
Technical Writing |
3cr | |
| Foreign Language Intermediate Level | 0-6cr | ||
| Additional Mathematics: | |||
| MATH 219 | Discrete Mathematics | 3cr (1) | |
| Minor: Complete a minor from one of the following areas from: | 7-18 | ||
| Information Assurance | 18cr | ||
| Any department in the College of Natural Sciences and Mathematics | 7-18cr | ||
| Designated Business courses | 18cr | ||
| Designated Economics courses | 15cr | ||
| Designated Geography courses | 15cr | ||
| Designated Communications Media courses | 18cr | ||
| Free Electives: | 1-18 | ||
| Total Degree Requirements: | 120 | ||
|
(1) MATH 123 can be substituted by taking both MATH 121 and 122. MATH 216 can be substituted by taking both MATH 214 and 417 or both MATH 217 and 417. The 3cr minimum applies to students who take MATH 123 and 216. The 9cr maximum applies to students who do not take MATH 123 and MATH 216 but choose alternatives in addition to MATH 219. (2) Credit for both COSC 304 and 344 may be counted toward the degree, but only one will be counted toward the major requirements. (3) Credit for both COSC 320 and 493 may be counted toward the degree, but only one will be counted toward the major requirements. (4) COSC 493 may be selected in either the second semester of the junior year or the first semester of the senior year. if COSC 493 is selected and approved, COSC 380 may be taken in the immediately preceding semester. (5) Select at least 3cr from the list of controlled electives and/or the list of upper-level electives. (6) COSC 316 cannot be counted for major credit if a student does an Information Assurance minor. (7) Select at least one additional course from list of upper-level electives. |
|||
| Liberal
Studies: As outlined in Liberal Studies section with the following specifications: Mathematics: MATH 123 (1 ) Liberal Studies Electives: 4cr, MATH 124, no courses with COSC prefix |
50 | ||
| Major: | 42 | ||
| Required Courses: | |||
|
Fundamentals of Computer Science |
3cr |
||
|
Problem Solving and Structured Programming |
3cr |
||
|
Object-Oriented and GUI Programming |
3cr |
||
|
Applied Computer Programming |
4cr |
||
|
Assembly Language Programming |
3cr |
||
|
Data Structures and Algorithms |
3cr |
||
|
Software Engineering Concepts |
3cr |
||
|
Introduction to Database Management Systems |
3cr |
||
|
Seminar on the Computer Profession |
1cr |
||
| Seminar on Technical Topics | 1cr | ||
| Select 9cr from the following upper-level electives: | |||
|
Artificial Intelligence |
3cr |
||
|
Processor Architecture and Microprogramming |
3cr |
||
|
Modern Programming Languages |
3cr |
||
|
Compiler Construction |
3cr |
||
|
Introduction to Operating Systems |
3cr |
||
|
Theory of Computation |
3cr |
||
|
Controlled Electives: Select 6cr from the following: (2) |
|||
|
Introduction to Numerical Methods |
3cr |
||
|
Interactive Internet Programming with Java (3) |
3cr |
||
| COSC 316 | Cybersecurity Basics (4) | 3cr | |
|
Software Engineering Practice (5) |
3cr |
||
|
Productivity Tools and Fourth Generation Languages (3) |
3cr |
||
|
Data Communications |
3cr |
||
|
Testing and Controlling LANs |
3cr |
||
|
Computer Graphics |
3cr |
||
| COSC 356 | Network Security | 3cr | |
|
IBM Job Control Language |
1cr |
||
|
UNIX Systems |
3cr |
||
|
Internet Architecture and Programming |
3cr |
||
|
Software Development with Ada |
3cr |
||
|
Cryptography |
3cr |
||
|
Introduction to Systems Programming |
3cr |
||
|
Applied Numerical Methods |
3cr |
||
|
Numerical Methods for Supercomputers |
3cr |
||
|
Special Topics in Computer Science (as approved for majors) |
1-4cr |
||
|
Independent Study |
1-4cr |
||
|
Internship in Computer Science (5, 6) |
12cr |
||
|
Data Warehousing and Mining |
3cr | ||
|
Other
Requirements: |
13-19 | ||
| Additional Writing: | |||
| ENGL 322 | Technical Writing I | 3cr | |
| Foreign Language Intermediate Level | 0-6cr | ||
|
Mathematics: A minor in mathematics including the following: (7) |
10cr | ||
| MATH 123 |
Calculus I for Physics, Chemistry, and
Mathematics |
||
|
Calculus II for Physics, Chemistry, and Mathematics |
|
|
|
| MATH 171 | Introduction to Linear Algebra | ||
| MATH 216 | Probability and Statistics for Natural Sciences | ||
| MATH 219 | Discrete Mathematics | ||
| Free Electives: | 9-15 | ||
| Total Degree Requirements: | 120 | ||
|
(1) MATH 123 can be substituted by taking both MATH 121 and 122. (2) Select at least 6cr from the list of controlled electives. Note: Only 4cr of COSC 493 may be counted toward these 6cr. (3) Credit for both COSC 304 and 344 may be counted toward the degree, but only one will be counted toward the major requirements. (4) COSC 316 cannot be counted for major credit if a student does an Information Assurance minor. (5) Credit for both COSC 320 and 493 may be counted toward the degree, but only one will be counted toward the major requirements. (6) COSC 493 may be selected in either the second semester of the junior year or the first semester of the senior year. If COSC 493 is selected and approved, COSC 380 may be taken in the immediately preceding semester. (7) In addition to MATH 171, 216and 219, MATH 123 and 124 (taken as Liberal Studies requirement) are also counted towards the minor. |
|||
Bachelor of Science–Computer Science/Information Assurance Track
| Liberal
Studies: As outlined in Liberal Studies section with the following specifications: Mathematics: MATH 123 (2) Social Science: CRIM 101 (1) Liberal Studies Electives: 4cr, MATH 216 (2), no courses with COSC prefix |
50 | ||
| Major: | 42 | ||
| Required Courses: | |||
|
Fundamentals of Computer Science |
3cr |
||
|
Problem Solving and Structured Programming |
3cr |
||
|
Object-Oriented and GUI Programming |
3cr |
||
|
Applied Computer Programming |
4cr |
||
|
Assembly Language Programming |
3cr |
||
|
Data Structures and Algorithms |
3cr |
||
|
Software Engineering Concepts |
3cr |
||
|
Introduction to Database Management Systems |
3cr |
||
|
Seminar on the Computer Profession |
1cr |
||
| Seminar on Technical Topics | 1cr | ||
|
Information Assurance Required Courses: |
|||
| COSC 316 | Cybersecurity Basics |
3cr |
|
| COSC 356 | Network Security |
3cr |
|
| Select one of the following: | |||
| COSC 320 or | Software Engineering Practice or |
3cr |
|
| COSC 493 | Internship (Information Assurance) |
12cr (3) |
|
| Controlled Electives: Select 3cr from the following: | |||
| COSC 345 | Data Communications |
3cr |
|
| Testing and Controlling LANs |
3cr |
||
| COSC 362 |
Unix Systems |
3cr |
|
| COSC 481 |
Special Topics in Computer Science |
3cr |
|
| IFMG 382 | IT Audit and Control |
3cr |
|
| Upper Level Electives: Select 3cr from the following: | |||
|
Internet Architecture and Programming |
3cr |
||
|
Cryptography |
3cr |
||
|
Operating Systems |
3cr |
||
| COSC 482 | Independent Study |
3cr |
|
| COSC 400-level course with department approval | 3cr | ||
| Minor in Criminology | 15 (1) | ||
|
Other
Requirements: |
6-12 | ||
| Additional Writing: | |||
| ENGL 322 | Technical Writing | 3cr | |
| Foreign Language Intermediate Level | 0-6cr | ||
| Additional Mathematics: | |||
| MATH 219 | Discrete Mathematics | 3cr (2) | |
| Free Electives: | 1-7 | ||
| Total Degree Requirements: | 120 | ||
|
(1) CRIM 101 (taken as part of the social science requirement) is counted as part of the 18cr Criminology minor. 15 additional cr of CRIM are required. (2) MATH 123 can be substituted by taking both MATH 121 and 122. MATH 216 can be substituted by taking both MATH 214 and 417 or both MATH 217 and 417. The 3cr minimum applies to students who take MATH 123 and 216. The 9cr maximum applies to students who do not take MATH 123 and MATH 216 but choose alternatives in addition to MATH 219. (3) Only 4cr of COSC 493 may be counted towards the major. COSC 493 may be selected in either the second semester of the junior year or the first semester of the senior year. If COSC 493 is selected and approved, COSC 380 may be taken in the immediately preceding semester. |
|||
| Minor–Computer Science | 15 |
| Required Courses: | ||
| COSC electives (1, 2, 3) | 15cr | |
|
(1) The minor in Computer Science consists of 15cr of COSC electives. At least 9cr of the 15cr must be from COSC courses numbered higher than 200. (2) COSC 101 is an appropriate entry course for minors or for students who wish to take only one course. However, COSC 101 cannot be counted as part of a Computer Science minor by Management Information Systems (MIS) majors. (3) See Computer Science minor advisor for suggestions. |
||
| Minor–Information Assurance (1) | 18 |
| Required Courses: | |||
|
Problem Solving and Structured Programming (3) |
3cr |
||
|
Cybersecurity Basics |
3cr |
||
|
LAN Design and Installation |
3cr |
||
|
Crime and Justice Systems (2) or < | |||