Computer Science Minor
The Computer Science Minor provides students in other disciplines with a solid foundation in computer science.
Required Courses for the Computer Science Minor
A student must successfully complete, at Fontbonne, a minimum of 50 percent of the credit hours required for the minor.
- CIS 160
Computer Science I4 credits
Emphasis on programming in C and introduction to C++, including structural programming concepts, simple data types and structures, C and C++ syntax, operators, controlstructures and pointers. Lab exercises include techniques of coding, program design, and debugging. Students in this course who are majoring in mathematics, computer science, cyber security or management information science must earn grades of B- or better in this course to progress to CIS 161 and/or CIS 210. Prerequisite: Grades of A- or better in MTH 095, or competency in arithmetic and algebra. For CS, Cyber Security or MIS majors, CIS120 is a pre- or co-requisite.
- CIS 161
Computer Science II4 credits
Continuation of Computer Science I, with extensive programming in C++ language and introduction to Java. Includes string handling, file I/O, storage and static variables, structures, bitwise operations, and C++ library. Students in this course who are majoring in mathematics, computer science, cyber security or management information systems must earn grades of B- or better to progress to CIS 210 and above. Prerequisite: CIS 160.
- CIS 210
Object-Oriented Programming (Java)4 credits
Introduction to concepts of abstract data type and inheritance. Topics include the fundamentals of objectoriented program design, object-oriented programming using Java. Lab exercises include introductory to intermediate level software analysis and design. Prerequisite: CIS 161.
- CIS 250
Algorithms and Data Structures4 credits
Introduction to the principles of algorithm analysis, abstract data types covering stacks, queues, lists, trees and recursion, algorithms of sorting and searching. Additional topics include graph algorithms, text compression, dynamic programming, and randomized algorithms. Prerequisite: CIS 210 and (MTH 120 or CIS 120).
Plus two of the following four courses:
- CIS 310
Computer Architecture and Assembly Language3 credits
Topics covering theoretical aspects and concepts of hardware and computer systems including logic gates, combinational and sequential circuits, memory and registers, control logic design, instructions and addressing. Teaches programming in one assembly language. Prerequisites: CIS 160; CIS 120 or MTH 120.
- CIS 340
Concepts of Telecommunications and Networking3 credits
Introduction to the principles and practice of data communication and computer networking. Topics include the theoretical aspects of various methods, media, protocols, data compression, and security in telecommunication. Also includes lab exercises of network and remote access configuration and data exchange. Prerequisites: CIS 160; CIS 120 or MTH 120; either MTH 150 or consent of the instructor.
- CIS 355
Principles of Operating Systems3 credits
Topics cover the theoretical aspects and concepts of operating systems including system structures, scheduling, concurrent processes and deadlock handling, storage and file management, system protection and security. Also includes lab exercises in UNIX system configuration. Prerequisites: CIS 160 and (CIS 120 or MTH 120).
- CIS 375
Software Engineering3 credits
Course introduces classical and object-oriented software engineering principles. Topics include the scope of software engineering, the software process, software life cycle models, documentation, tools, testing, quality assurance, project management, object-oriented analysis and design, system views, patterns, and modeling using UML, in the context of generic object-oriented development process. Students are required to design and build software projects through team effort. The projects cover the principal system development life-cycle phases. Prerequisite: CIS 160 or consent of instructor.
Questions? Contact our Office of Admission: 314-889-1400 or 1-800-205-5862 | email@example.com