Study Life's Complexity

In concert with the mission of the University, Computer Science faculty foster the professional development of students through academic excellence, and provide educational opportunities to students to be competitive in a technological society.    

  • Opportunities exist for undergraduate research experience, both on campus and through summer internships.
  • All faculty hold PhDs and bring real-word experience to the classroom. 
  • All students benefit from small-class settings and one-on-one mentoring from professors. 

Program map

    • Meet with FSYSS Advisor
    • Begin General Education Requirements
    • Complete Prerequisites for CS Major Courses
    • Begin CS Major Courses
    • Begin Math and Industrial Tech Requirements
    • Complete Writing Requirements
    • Begin CS Electives
    • Explore Undergraduate Research/Internships
    • Get Assigned to Major Advisor
    • Conduct 90 Credit Degree Audit with Advisor
    • Complete Math and Industrial Tech Requirements
    • Explore Undergraduate Research/Internships
    • Attend Career Fairs
    • Take Professional Exams (e.g., GRE)
    • Apply to Graduate or Professional Schools
    • Complete CS Major Courses
    • Complete CS Electives
    • Complete General Education Requirements
    • Apply to Graduate/Professional Programs
    • Acceptance into Graduate or Professional Programs
    • Attend Career Fairs and Apply for Jobs
    • Graduate
  • Year 4+

    • Degree Awarded
    • Post Graduate Surveys
    • Begin Your Post-CSU Experience

Computer Science Course Descriptions


  • CPS 1000. Ethics in Computer Science (I, II; 1)
    This course explores ethical issues that arise due to widespread use of computer technology. Students will become familiar with issues related to professional ethics, ethical use of the internet, privacy issues, property rights of software, accountability and social implications of information technology. Prerequisite: None.


    CPS 1110. Computer Literacy (I, II, III; 2)
    This course presents students with a study of various systems and methods of problem-solving by computers and other means through use of examples, simple exercises and theory. Further topics include using computer systems for word processing, Internet browsing, PC spreadsheets and databases, and other desk top publishing techniques. Prerequisite: None..

     

    CPS 1120. Introduction to Computer Applications and Ethics (I, II,; 3) 

    This course explores basic computer applications and problem-solving techniques such as word processing, spreadsheets, and presentation software.  Students will learn about ethical issues in computer technology, including privacy, property rights of software, and social implications of information technology. This course also introduces foundational concepts of Artificial Intelligence (AI) and its ethical implications across industries. Prerequisite: None.


    CPS 1191. Computer Programming I (I, II; 4)
    This course is designed to provide an introduction to programming using C++. Topics include algorithms, flow-chart, pseudo-code, top-down design, branching, looping, arrays strings, basic input and output (I/O) operations, scientific applications using C++ programming language. Prerequisite: MTH 1750 or permission of the instructor.


    CPS 1192. Computer Programming II (II; 4)
    Importance of program design, modular function and object-oriented programming; flow-charting, pseudo-code, and top-down design, use of text files, binary files, and fundamentals of higher languages such as C/ C++. Prerequisite: CPS 1191.


    CPS 2215. Internet and Web Essentials (I, II; 3)
    This course teaches students topics pertaining to World Wide Web (WWW) fundamentals, contemporary Web browsers, Web editors, Web development tools, Internet tools and services, Internet searching, web site design, web page publishing, JavaScript, Java Applets, CGI, Web security, creating dynamic web pages using a database and other web enabling tools. Prerequisite: None.


    CPS 2236. Contemporary Operating Systems (I, II; 2)
    The objective of this course is to teach basics of an operating system from the point of view of both end-users and programmers. Existing popular operating systems such as Windows, Linux and Mac OS will be used as practical examples to work with. Students will learn about the history of Operating Systems, Computer Security Basics, Desktop Virtualization, Disk Operating System (DOS) and the Command-Line Interface, Windows, Linux, and Mac OS X. Prerequisite: None.


    CPS 2271. Data Structures (I; 3)
    This course introduces students to data structures, including topics on linked lists, doubly linked lists, circular lists, stacks, queues, search strategies, hashing, internal sorting algorithms, external sort / merge algorithms, binary trees, B-trees, B +- trees, sequential files, random access files, file update algorithms, bit maps, and memory management algorithms. Prerequisite: CPS 1192.


    CPS 2300. Cyber Security I (I, II; 3)
    The objective of this course is to introduce students to the field of cybersecurity, network and internet architecture. Students will study technologies, security protocols, policies and practices designed to protect networks, computers, programs, and data from attacks. The students will also learn about viruses and other vulnerabilities, and cyberattacks and the techniques for identifying, detecting and defending against cybersecurity threats. Prerequisite: CPS 1191.


    CPS 3200. Computer Algorithms (II; 3)
    This course covers the modern theory of algorithms, common algorithmic paradigms, the relationship between algorithms and programming, basic performance measures and analysis techniques for real world problems. The course goal is to provide a solid background in algorithms for computer science students, in preparation either for a job in industry or for more advanced courses at the graduate level. Prerequisite: CPS1192.


    CPS 3300. Cyber Security II (I, II; 3)
    This is the second cyber security course after Cyber Security I. The student will learn contemporary security technologies and issues, infrastructure security management processes, risk analysis, security planning, analysis and safeguards, industrial espionage, cyber terrorism, information warfare, security policies, contingency planning, incidence handling and response, and security standards. Prerequisite: CPS 2300.


    CPS 3316. Computer Networks (I, II; 3)
    This course teaches students fundamentals of computer networks, covering topics on local and wide area networks, media, topologies, layered networking models, hardware and software; network setup and administration, network architecture, communication protocols, and aspects of network administration that include server folders and permissions. Prerequisites: CPS 1191 or its equivalent.


    CPS 3320. Database Systems (I, II; 3)
    The objective of this course is to introduce relational database systems and provide practical experience in using a popular database package. Contemporary database systems such as Oracle and Microsoft Access will be used extensively in this course. Students will learn about relational database principles, the SQL query language, application development using forms, creating and using tables and queries, database design and implementation issues. Prerequisites: CPS 1192 or permission of instructor.


    CPS 3325. Java Programming (I, II; 3)
    The objective of this course is to teach the basics of Java programming and object-oriented programming. Students will learn both Applets and Application programming in Java. The topics covered include compilers and interpreters, objects and primitive data, control flow, writing classes, enhancing classes, arrays and vectors, inheritance, exceptions, I/O streams, software engineering, recursive programming, and implementation of data structures. Prerequisites: CPS 1191 or its equivalent.


    CPS 3340. Computer Architecture (I, II; 3)
    The goal of this course is to give students a solid foundation in the fundamental concepts of CPU, memory system and I/O system design, and to expose them to a number of more advanced topics in these areas. Instruction set architecture, memory subsystem organization, interfacing concepts and issues arising in managing communication with the processor. Prerequisite: CPS 1192.

     

    CPS 3550. Python Programming (I, II; 3)

    This course will introduce Python as one of the fundamental programming languages. Topics include basic programming concepts, such as variables, lists, classes and loops, basic math and text operation, variants of arrays, dictionary and set objects, and functions and parameter passing. This course will also include advanced topics on objects, classes, and object-oriented features. In addition to that the course will cover how to handle powerful Python libraries, packages, and tools for game design, visualization, and web applications frameworks. Prerequisite: CPS 1191.

     

    CPS 3370. Programming Languages (I, II; 3) 

    This course teaches students fundamental concepts and constructs in several contemporary programming languages including topics on evolution of major programming languages, implementing subprograms, abstract data types, support for object-oriented programming in C++, Java, and Ada, exception handing, Functional Programming Languages, and Logic Programming Languages. Prerequisite: CPS 1192.

     

    CPS 3381. Principles of Operating Systems (I, II; 3) 

    This course teaches students fundamental concepts and principles of operating systems and their structures, including topics on concurrency, semaphores, classes, deadlocks, CPU scheduling algorithms, memory management, disk management and file systems. Prerequisite: CPS 2271 or permission of the instructor.


    CPS 3465. High Performance Computing (I, II; 3)
    Fundamentals of parallel computing including shared memory paradigm, semaphores, and dead lock; distributed memory paradigm including point-to-point and collective message passing constructs in MPI, parallel I/O, vector and structure derived data types; speed-up and scalability, checkpoint restart, parallel debugging; techniques, performance profiling, graphical and visualization techniques; parallel libraries, and systems modeling applications in high performance computing. Prerequisite: CPS 2271 and MTH 2503 or permission of the instructor.

     

    CPS 4200 Fundamentals of Quantum Computing (I, II; 3) 

    The objective of this class is to provide a strong foundation on quantum computing to students of Computer Science major in CSU. The students will be introduced to qubits, various quantum gates and its logical models, and basic operations on quantum gates. They will also be familiar with concepts of superposition and entanglement and be able to build simple quantum circuits including circuits with Bell State. The students will have a thorough knowledge of standard quantum algorithms, and they will be able to implement these algorithms in simulators and real quantum computers. Prerequisites: CPS 3200.

     

    CPS 4201 Quantum Algorithms (I, II; 3) 

    This course will discuss commonly used techniques for designing quantum algorithms and some of the important quantum algorithms developed to date. Topics will include Grover’s algorithm, Quantum Fourier Transform, Shor’s algorithm, Quantum Machine Learning algorithms, Quantum Walk Algorithm, Quantum Error Correction Codes. Quantum Algorithm for solving Linear System of Equations and Quantum Approximate Optimization Algorithm. This course will also include basic quantum complexity theory which are related to quantum algorithms. Prerequisite: CPS 4200.


    CPS 4210. Artificial Intelligence (I, II; 3)
    Introduction to concepts, principles, challenges and research in major areas of technical AI research. Areas of discussion include: natural language and vision processing, machine learning, machine logic and reasoning, expert systems, and robotic. Prerequisite: CPS 2271.


    CPS 4420. Software Engineering (I, II; 3)
    This course teaches students design and implementation issues for large software systems, software life cycle, requirements definition and specification, prototyping, verification, validation, equivalence classes and testing, fault-tolerance, social and ethical issues of commercial software, user interface, design, portability, and management. The goal of this course is to introduce students to methods for producing large-scale commercial software. They learn techniques for managing hardware, software, and personnel systems using a group-oriented project production paradigm. Prerequisite: CPS 2271.


    CPS 4460. Advanced Topics (I, II; 1-3)
    This course is designed to meet the needs of advanced students as a preparation for graduate study or students who are interested in modern topics that are not presented in other courses. Projects required in CPS 4460 must be distinguished from those in other courses. Prerequisite: CPS 1192.


    CPS 4895. Senior Project (I, II; 3)
    Students work under the mentorship of a faculty member to design, implement and present a capstone computer science project. Each student selects a topic for the project subject to approval of the faculty mentor, conducts a feasibility study and prepares a project design using flowcharts, structure charts and pseudo-code along with documentation and references. Each student must implement the project design and submit all program listings, data files, and report listing showing results of appropriate test runs. Each student must write a paper on the project from the external documentation and prepare appropriate visual aids for an oral presentation of the project to the Department. Prerequisite: CPS4420 or permission of the instructor.

     

    MTH 1550. Modern Applications of Mathematics (I, II; 3) A study of the use and importance of mathematics to real world problems. Topics include logic, finance, probability and statistics, geometry, graphical representation of data, linear and exponential modeling, and mathematics in music, art, and voting systems. This course is not intended for students majoring in a discipline requiring advanced mathematics. This course fulfills a general education requirement. 

     

    MTH 1750. College Algebra (I, II; 3) Topics include functions, rational expressions, systems of linear equations, Factor and Remainder Theorem, operations on functions, radical equations, inequalities, matrices, variations and exponential and logarithmic functions, sequences, series, and the binomial theorem. Equivalent to TAG TMM001.

     

    MTH 2001. Probability and Statistics I (I, II; 3) Topics include measures of central tendency, measures of dispersion, probability models, conditional probability, combinations, distributions, estimation and hypothesis testing. Prerequisite: MTH 1750.

     

    MTH 2002. Probability and Statistics II (II; 3) Topics include testing populations means, proportions, variances, contingency tables, regression, ANOVA, computer applications and non- parametric statistics. Prerequisite: MTH 2001.

     

    MTH 2500. Pre-Calculus (I, II; 4) This is an accelerated course in College Algebra and Trigonometry. Topics include linear, quadratic, polynomial, rational, radical, root, piecewise, exponential, logarithmic, trigonometric and inverse trigonometric functions; graphs and transformations; equations and inequalities; systems of equations; sequences and series; vectors and applications. Prerequisite: placement exam.

     

    MTH 2501. Trigonometry (I, II; 3) Topics include conic sections, exponential and logarithmic functions, trigonometric functions, inverse trigonometric functions, identities and equations, lines, polar coordinates, vectors in the plane, application problems, and complex numbers. Equivalent to TAG TMM003. Prerequisite: MTH 1750 or placement tests

     

    MTH 2502. Calculus I (I, II; 4) Topics include limits of functions, infinite limits, derivative and techniques of differentiation, implicit differentiation, higher derivatives, graphing, maxima and minima, plane curves, motion, anti- derivatives, indefinite, and definite integrals, and Fundamentals Theorem of Calculus. Equivalent to TAG TMM005. Prerequisite: MTH 2500 or MTH 2501. 

     

    MTH 2503. Calculus II (I, II; 5) Topics include the fundamental theorem of calculus, the definite integral, techniques and applications of integration. Evaluation of improper integrals, indeterminate forms, graphs of 248 polar equations, area in polar coordinates and parametric equations. Differentiation and integration a power series, Taylor and MacLaurin series. Calculation and application of the dot and cross products of vectors. Equivalent to TAG OMT006. Prerequisite: MTH 2502. 

     

    MTH 2540. Foundations in Mathematics (I, II; 3) This course is an introduction to mathematical proof, symbolic logic, induction, set theory, relations, functions, countability, and selected topics in number theory. Equivalent to TAG OMT006. Prerequisite: MTH 2502. 

     

    MTH 3000. Geometry for Teachers (II; 3) Topics include definitions, axioms, plane figures, triangle theorems, similar triangles, areas, computation of areas, solids, volumes, computation of volumes, and history of geometry. Prerequisite: MTH 1750.

     

    MTH 3001. Linear Algebra (I; 3) Topics include matrices, determinants, linear systems, vector spaces, linear transformations, eigen values and eigenvectors. Prerequisite: MTH 2502.

     

    MTH 3002. Calculus III (II; 4) Topics include the theory of infinite series, analytic geometry of space, vector in space, partial derivatives, and multiple integrals. Prerequisite: MTH 2503.

     

    MTH 3003 Mathematical Modeling (I, II; 3) This course introduces the principles and practice of mathematical modeling. Students learn to express real-world problems in mathematical form, build and analyze continuous and discrete models, and interpret and communicate their results. Computational tools are used for analysis and visualization. Prerequisite: MTH 2502.

     

    MTH 3004 Introduction to Financial Mathematics (I, II; 3) This course introduces the mathematical foundations of financial theory, emphasizing the use of mathematical techniques and models to solve financial problems. Topics include time value of money, annuities, loans, bonds, general cash flows and portfolios, and immunization. Prerequisite: MTH 2502.

     

    MTH 3110. Differential Equations and Discrete Dynamical Systems (I; 4) First and second order, linear, simultaneous equations with descriptions of solution methodology, Laplace transforms, applications, and solutions methodology for nonlinear differential equations and nonlinear difference equations. Prerequisite: MTH 2503 or permission of the instructor.

     

    MTH 3310. Numerical Methods (II, On Demand; 3) Solutions of equations, successive approximations, Newton- Raphson Method, roots of polynomials, error analysis and process graphs; simultaneous linear and nonlinear equations, factorization methods, iterative methods for solving linear systems; description and solution of eigenvector problems, interpolation methods with and without spline functions; numerical solutions for ordinary differential equations, numerical solutions for partial differential equations, and applications of Monte Carlo methods. Prerequisites: MTH 2503 or permission of instructor.

     

    MTH 3430. Operations Research (I/Odd Years;3) Topics include stochastic processes, linear programming, transportation problems, inventory control, and network theory. Prerequisites: MTH 3001

     

    MTH 3520. Abstract Algebra (I, II; 3) Topics include properties of integers, groups, subgroups, quotient groups, group actions, products, homomorphisms, isomorphisms, and finite abelian groups. Prerequisite: MTH 2540.

     

    MTH 3521. Abstract Algebra II (II; 3) Topics include rings, ideals, integral domains, fields, Euclidean domains, principal ideal domains, vector spaces, polynomial rings, and field extensions. Prerequisite: MTH 3520.

     

    MTH 3530. Mathematical Writing and Research (II; 2) Topics include the mathematical research process, technical writing, and communication in mathematics. Prerequisite: MTH 2540.

     

    MTH 3610. Introduction to Discrete Structure (II, On Demand; 3) Topics include review of set algebra including mappings and relations, elements of the theory of directed and undirected grams, symbolic logic, and applications of these structures to various areas of the computer. Prerequisite: MTH 1750 or higher.

     

    MTH 4030. History of Mathematics (I; 3) The development of mathematics from ancient times to the twentieth century. Prerequisite: Junior standing.

     

    MTH 4110 Partial Differential Equations (I, II; 3) This course provides an introduction to partial differential equations (PDEs) and their applications in modeling real-world physical phenomena. Students study the formulation, classification, and solution of first and second order PDEs, including transport, wave, diffusion, and Laplace equations, under various initial and boundary conditions. Topics include well-posedness, energy methods, separation of variables, Fourier series, Green’s functions, and fundamental principles such as the maximum and Dirichlet principles. Prerequisite: MTH 3110.

     

    MTH 4120. Introduction to Real Analysis (I; 3) Topics include the system of real numbers, functions, sequences, limits, the theory of continuity, differentiation, Riemann integration; sequences of functions, and infinite series. Prerequisite: MTH 2540

     

    MTH 4600. Capstone: Selected Topics in Mathematics (II; 3) This course is designed to meet the needs of advanced students as a preparation for graduate study or employment in mathematics related fields. Possible topics include, but are not limited to, topology, group theory, projective geometry, real analysis: probability, mathematical statistics, combinatorial analysis, and operations research. Prerequisite: Permission of the instructor.

     

    MTH 4730. Functions of a Complex Variable (II, even years only; 3) Topics include complex numbers, elementary functions, power series, analytic functions, integrals, residues, Cauchy's Theorem, and Moreara's Theorem. Prerequisites: MTH 2503 or permission of the instructor

     

    MTH 4897. Mathematics for Graduate Studies (I, II; 3) Topics include calculus, linear algebra, complex variables, abstract algebra, and differential equations. Prerequisites: MTH 4120 and MTH 4730

Dr. Deng Cao

What we are using here now, are specifically designed, or customized neural-networks to recognize a specific type of weed, from crops such as soybeans, or sweet corn, or hemp.

Dr. Deng Cao

Experiences and Opportunities

Learning doesn’t stop when class ends. Opportunities to increase your knowledge and expand your network include hands-on research for all students, and top speakers from the field.

  • At CSU, even undergraduate biology majors do research, whether it’s at the campus lab or off-campus at an internship. You’ll work with professors and research scientists, and some students present and publish nationally. 

  • You’ll hear about research, the bedrock of the field from guest speakers throughout the year. And you’ll begin to imagine the career paths you can take with your degree and the impact you’ll be able to have. 

  • Students who qualify for induction have access to national speakers and networks in the discipline.  

Explore More Programs

Thanks to our vocational approach, you’ll graduate ready for certification and employment in growing fields like training, coaching, rehabilitation and exercise physiology.

You’ll gain invaluable hands-on experience teaching in Dayton or Xenia public schools as you prepare for certification.

Ohio’s only Sustainable Agricultural major will equip you to help address the resource needs brought by climate change.