Departments & Programs
Department of Computer and Information Science
Bachelor of Science
Students completing the undergraduate degree in computer and information science will have acquired a fundamental understanding of computing, information processing, and information communication. The department’s graduates serve in a variety of programming, software engineering, database administration, systems analysis, management, and research positions.
Degree Requirements
NOTE: These degree requirements are effective for students admitted beginning in the Fall of 2023.
See the School of Science requirements under "Undergraduate Programs" in this bulletin for the general and area degree requirements. Computer science majors are admitted only provisionally to the program until they have completed MATH 16500 and CSCI 23000 and 24000 with a grade point average of 2.7 or higher for the three courses. Please note that computer and information science courses below CSCI 23000 or CSCI-N305 with certain exceptions, mathematics courses below MATH 16500, and statistics courses below STAT 35000 are not credited toward the degree. Furthermore, the School of Science will not accept certain university courses for the computer science degree program. The Bachelor of Science degree program in computer science requires a minimum of 120 credit hours.
First-Year Experience Course Beginning freshmen and transfer students with fewer than 19 credit hours are required to take CSCI 12000 Windows on Computer Science (1 cr.) or an equivalent first-year experience course.
Area I English Composition and Communication Competency (9 cr.) See the School of Science requirements under "Undergraduate Programs" in this bulletin for details.
- ENG-W131 Reading, Writing and Inquiry
- COMM-R110 Fundamentals of Speech Communication
The second semester of English composition must be satisfied with:
- TCM 32000 Written Communication in Science and Industry
Area II World Language Competency No world language proficiency is required for a Bachelor of Science degree.
Area IIIA Arts and Humanities, Social Sciences, and Cultural Understanding Competencies (12 cr.) The information about the IIIA requirements in the School of Science "Undergraduate Programs" section of this bulletin lists courses that may be used to satisfy the requirements below. Students should consult a departmental advisor before registering for these courses.
- List H One course from Arts and Humanities List (3 cr.).
- List S One course from Social Sciences List (3 cr.)
- One additional course from either Arts/Humanities or Social Sciences List (3 cr.)
- List C One course from Cultural Understanding List (3 cr.).
For the most current list of courses in the areas of Arts and Humanities, Social Sciences and Cultural Understanding, please refer to the IUPUI General Education Curriculum.
Area IIIC Life and Physical Sciences Competency The Department of Computer and Information Science requires all computer science majors to take PHYS 15200 and three other physical science courses chosen from the areas of biology, chemistry, geology, and physics, or from certain courses in engineering. A single grade of D or D+ is acceptable in this Area. Otherwise, all courses must be completed with a C- or higher. Each course that counts as one of the physical science required courses must have a lecture component and be at least 3 credit hours. Courses that may not be used to fulfill Area IIIC requirements include: BIOL-N100, BIOL-N120, BIOL-N200; CHEM-C100, CHEM-C101, CHEM-C102; PHYS 01000, PHYS 10000, PHYS 14000, PHYS 20000, PHYS 21800, PHYS 21900, PHYS-P201, PHYS-P202; AST-A130; GEOL-G 103, GEOL-G130, GEOL-G132; and all agriculture and geography courses. Consult a departmental academic advisor concerning the acceptability of other courses. The following engineering courses may be applied toward Area IIIC requirements: ECE 20100, ECE 20200, and ECE 27000. Laboratory courses without a lecture component may be taken for credit, but do not count toward the four-course requirement.
Area IIID Analytical Reasoning Competency Computer Science majors are required a minimum of 17 credit hours of mathematical sciences. A single grade of D or D+ is acceptable in this Area. Otherwise, all courses must be completed with a C- or higher. Five course requirements are MATH 16500, MATH 16600, MATH 17100, MATH 35100 or MATH 51100, STAT 35000 or STAT 41600 or STAT 51100.
Area IV Major Requirements Minimum requirements include 26 credit hours of core computer science courses and at least 33 additional hours of computer science and supporting course electives. Core courses are: CSCI 23000, CSCI 24000, CSCI 34000, CSCI 36200, CSCI 40200, CSCI 40300, CSCI 48400, and CSCI 49500. Students who do not maintain a minimum GPA of 2.50 in MATH 17100, and in CSCI 23000, CSCI 24000, CSCI 34000, and CSCI 36200 will not be permitted to continue as departmental majors. All major courses must be completed with a grade of C- or better. Students must maintain a GPA of 2.0 or above in major courses.
Computer and Information Science Electives
Students are encouraged to focus their required electives in such areas as databases and data mining, software engineering, game and graphics, networking, and security. Students choose a minimum of 11 courses from among the list of computer science and supporting course electives. No more than 3 courses can be chosen from the select list of N-series courses; a minimum of 6 courses must be CSCI 40000-level or above, and no more than 2 courses can be chosen from an approved list of supporting electives outside of computer science.
CSCI-N-Series — Choose no more than three
- CSCI-N300 Mobile Computing Fundamentals
- CSCI-N305 C Language Programming
- CSCI-N311 Advanced Database Programming, Oracle
- CSCI-N317 Computation for Scientific Applications
- CSCI-N321 System and Network Administration
- CSCI-N335 Advanced Programming, Visual Basic
- CSCI-N341 Client Side Web Programming
- CSCI-N342 Server Side Web Development
- CSCI-N343 Object-Oriented Programming for the Web
- CSCI-N345 Advanced Programming, Java
- CSCI-N351 Introduction to Multimedia Programming
- CSCI-N355 Introduction to Virtual Reality
- CSCI-N361 Fundamentals of Software Project Management
- CSCI-N410 Mobile Computing Application Development
- CSCI-N420 Mobile Computing Cross Platform Development
- CSCI-N430 Mobile Computing and Interactive Applications
- CSCI-N431 E-Commerce with ASP.NET
- CSCI-N435 Data Management Best Practices with ADO.NET
- CSCI-N443 XLM Programming
- CSCI-N450 Mobile Computing with Web Services
- CSCI-N451 Web Game Development (Pending)
- CSCI-N452 3D Game Programming
- CSCI-N461 Software Engineering for Applied Computer Science
- CSCI-N499 Topics in Applied Computing (topic varies)
Computer Science Supporting Electives
Choose no more than 2 courses from the supporting elective list. Note that this list of courses is not all-inclusive. Other courses outside of computer science can be considered and can be counted with prior approval of the computer science undergraduate committee.
- NEWM-N220 Intro to Media Application Development
- NEWM-N230 Introduction to Game Design & Development
- NEWM-N255 Intro to Digital Sound
- NEWM-N285 Interactive Design
- NEWM-N320 Intermediate Media Application Development
- NEWM-N330 Game Design, Development, and Production
- NEWM-N335 Character Modeling and Animation
- CIT 40200 Design and Implementation of Local Area Networks
- CIT 40600 Advanced Network Security
- CIT 42000 Digital Forensics
- CIT 44000 Computer Network Design
- HER-L210 Visual Design for the Web
- HER-A261 Intro to Computer Imagery
- INFO-I300 Human Computer Interaction
- INFO-I310 Multimedia Arts: History, Criticism, and Technology
- INFO-I320 Distributed Systems and Collaborative Comp
- BUS-S302 Management Information Systems
- BUS-L203 Commercial Law I
- BUS-L303 Commercial Law II
- ECE 20400 Introduction Electrical and Electron Circuits
- ECE 27000 Introduction to Digital System Design
- ECE 36200 Microprocessor Systems and Interfacing
- ECE 47100 Embedded Systems
- MATH 26100 Multivariate Calculus
- MATH 26600 Ordinary Differential Equations
- MATH 35300 Linear Algebra II with Applications
- STAT 51400 Design of Experiments
CSCI 300-Level Electives
- CSCI 30000 Systems Programming
- CSCI 35500 Introduction to Programming Languages
- CSCI 36300 Principles of Software Design
CSCI 400 and 500 level Electives—Choose at least six courses
- CSCI 41400/MATH 41400 Numerical Methods
- CSCI 43200 Security in Computing
- CSCI 43300 Introduction to Internet of Things
- CSCI 43500 Multimedia Information Systems
- CSCI 43600 Principles of Computer Networking
- CSCI 43700 Introduction to 3D Game Graphics
- CSCI 43800 Advanced Game Development
- CSCI 44300 Database Systems
- CSCI 44800 Biometric Computing
- CSCI 45000 Principles of Software Engineering
- CSCI 45200 Object-Oriented Analysis and Design
- CSCI 46300 Analysis of Algorithms
- CSCI 47000 Automata and Formal Languages
- CSCI 47500 Scientific Computing I
- CSCI 47600 Scientific Computing II
- CSCI 47700 High Performance Computing
- CSCI 48100 Data Mining
- CSCI 48500 Expert System Design
- CSCI 48700 Artificial Intelligence
- CSCI 48900 Data Science
- CSCI 49000 Variable Title
- CSCI 500-level Electives per Approval
Bachelor of Science Sample Program (120 cr. required)
Freshman Year
First Semester | |
CSCI 12000 Windows on Computer Science | 1 |
CSCI 23000 Computing I | 4 |
ENG W131 Reading, Writing and Inquiry | 3 |
MATH 16500 Analytic Geometry and Calculus I | 4 |
Arts & Humanities (choose from list) | 3 |
Total | 15 |
Second Semester | |
CSCI 24000 Computing II | 4 |
CSCI 34000 Discrete Computational Structures | 3 |
MATH 16600 Analytic Geometry and Calculus II | 4 |
COMM-R110 Fundamentals of Speech Communication | 3 |
Social Sciences (choose from list) | 3 |
Total | 17 |
Sophomore Year
Third Semester | |
CSCI 36200 Data Structures | 3 |
CSCI Elective | 3 |
MATH 17100 Multidimensional Mathematics | 3 |
Life and Physical Science (approved elective) | 3 |
Arts & Humanities/Social Sciences (choose from list) | 3 |
Total | 15 |
Fourth Semester | |
CSCI 40200 Architecture of Computers | 3 |
CSCI elective | 3 |
MATH 35100 Elementary Linear Algebra | 3 |
Life and Physical Science (approved elective) | 3 |
Cultural Understanding (choose from list) | 3 |
Total | 15 |
Junior Year
Fifth Semester | |
CSCI 40300 Intro. to Operating Systems | 3 |
CSCI 400-level elective | 3 |
CSCI elective | 3 |
Statistics (approved elective) | 3 |
TCM 32000 Written Comm. in Science & Industry | 3 |
Total | 15 |
Sixth Semester | |
CSCI 400-level elective | 3 |
CSCI 400-level elective | 3 |
CSCI elective | 3 |
PHYS 15200 Mechanics | 4 |
General elective | 3 |
Total | 16 |
Senior Year
Seventh Semester | |
CSCI 48400 Theory of Computation | 3 |
CSCI 400-level elective | 3 |
CSCI 400-level elective | 3 |
CSCI elective | 3 |
General elective | 3 |
Total | 15 |
Eighth Semester | |
CSCI 49500 Explorations in Applied Computing (Capstone) | 3 |
CSCI 400-level elective | 3 |
Science elective | 3 |
General elective | 3 |
Total | 12 |