Computer Science
Department of Mathematics and Computer Science
Professors:
- Albert J. Osei, Ph.D.
- Darayas Patel, Ph.D.
Associate Professors:
- Tara Young, Ed.D.
- Shushannah Smith, M.S., M.S.E. (Chair)
Assistant Professors:
- Joseph Jeries, M.S.
- Jea Joseph, M.S.
Affiliated Program: Engineering (B.S.) - Dual Degree Partnership Program
Purpose
The Department of Mathematics and Computer Science seeks to provide students with experiences that will assist them in defining their life and career objectives. Course offerings, advising, and day-to-day contact with faculty and other students contribute to this goal. The courses provide the necessary background to allow students to pursue graduate work, teach secondary school, obtain employment in government and industry, and acquire mathematical tools for use in the physical, social, life, and management sciences. The Department also functions as a service unit for the entire University, teaching such mathematics courses as other departments deem necessary for their programs. In addition to the students’ academic development, the Department provides an intellectual environment for fostering personal development, interpersonal skills, and self-understanding. These goals reflect the Department’s philosophy that our primary reason for being is to foster the intellectual growth and development of the students.
High School Preparation
Potential mathematics majors should follow the college preparatory program in high school. Students should take as many mathematics courses as possible to acquire the knowledge and skills in algebra, geometry, and trigonometry needed for college calculus.
Application for Admission
To be admitted as a major in the Department of Mathematics and Computer Science, students must have completed at least 32 hours of course work, including EN 112 Freshman Composition. Students must also have completed MA 171-172 Calculus I and II if a mathematics major, or CM 210-220 Computer Science I and II if a computer science or Computer Networks major. Applicants must have an overall minimum GPA of 2.00 and a minimum GPA of 2.25 in mathematics or computer science. Application forms must be obtained from and returned to the department.
Exit Examination
Majors in the Department of Mathematics and Computer Science are required to pass an exit examination with a minimum passing grade of C. The exit examination is administered during both the fall and spring semesters. See the exit examination policy and procedures in the departmental curriculum guide.
Career Opportunities
Since mathematical scientists use mathematics to solve real-world problems, a degree in mathematics, applied mathematics, or computer science prepares a student for a variety of positions in business, government, industry, and education (teaching K-12). The types of exciting and rewarding careers available include actuary, cryptologist, computer programmer, computer systems analyst, information scientist, mathematician, engineer, numerical analyst, operations research analyst, and statistician.
Degrees
-
Bachelor of Arts in Computer Networks, Bachelor of Arts -
Bachelor of Science in Computer Science, Bachelor of Science -
Bachelor of Science in Computer Science, Bachelor of Science -
Minor in Computer Science, Minor
Courses
CM 108: Introduction to Computational Tools
Credits 3The primary goal for this course is to teach students to solve problems of scale using a variety of computer tools. The course introduces STEM students to the fundamental principles of programming for solving computational problems. Languages may include MATLAB, EXCEL, and others as appropriate.
CM 210: Computer Science I with C++
Credits 3An introduction to computers and structured programming using the C++ programming language. Topics will include problem-solving methods and algorithms, data types, loops, arrays, functions, structures, character strings, pointers, operations on bits, files, and computer network sockets programming. Program design and program styles will be emphasized.
CM 220: Computer Science II Data Structures with C++
Credits 3A continuation of the study of data representation and algorithm design using C++. Principles of good programming style and step wise refinement will be emphasized. Topics will indicate string processing, searching and sorting, recursion, and dynamic data structures, and computer network sockets programming.
CM 340: Computer Logic Design
Credits 3Introduction to formal methods in design of computer logic circuits and systems, contemporary design practices, and devices used in the synthesis of digital logic systems. Topics will include combinational and sequential systems, gates, memory elements, registers, bus structure, timing and control, arithmetic and logical unit, I/O units and computer network layering design.
CM 350: Introductory Computer Architecture
Credits 3An introduction to the organization and structuring of major hardware components of digital computers. Includes a study of the following topics: information transfers and transformations which occur inside a computer; architecture-instruction sets; instruction formats; addressing modes; register usage; organization computer units–ALU, CPU, memory; I/O hardware description methodologies; and taxonomy of computer architectures. Studies of an assembly language and network architecture will be the case studies of the course.
CM 352: Operating Systems I
Credits 3An introduction to operating systems. Examines interrelationships between operating systems and computer hardware. Compares batch, real=time, and time-sharing operating systems. Process management, CPU scheduling, memory management, I/O management, file system, security, virtual memory and networking. Contemporary operating systems will be used as examples.
CM 353: Operating Systems II
Credits 3Continuation of <a href="/computer-science/cm-352">CM 352</a>. Introduces advanced topics in the design of operating systems, networking, device management and file management techniques, scheduling algorithms, security, and queuing theories. Comparison of existing operating systems for client-server. Networking of operating systems will be a case study in the course.
CM 367: Programming Languages
Credits 3Organization of programming languages, especially routine behavior of programs; formal study of programming language specification and analysis; study, comparison, and evaluation of commercially available programming. BNF and syntax diagrams, grammars, program constituents, scoping rules, precedence, binding, parameter passing, and compile-versus interpretation.
CM 370: Introduction to Object-Oriented Programming in Java
Credits 3This course is an introduction to the field of Object-Oriented Programming. The Java programming language will be used to implement the topics. Topics include classes, subclasses, inheritance, and overriding.
CM 381: Computer Networks
Credits 3This course will introduce data communication, base-band and broad-band local area networks, logical link control, Internet protocol, broad case protocol, and distributed processing.
CM 401: Discrete Structures
Credits 3Mathematical basis for students of computer science. Propositional logic and proof, set theory, algebraic structures, groups and semi groups, graph theory, lattices and Boolean algebra, and finite fields.
CM 402: Design and Analysis of Algorithms
Credits 3Topics studied include: Analysis tools-Turing and Markov algorithms, complexity measures, computational techniques; bound analysis of algorithms. Algorithms for internal and external searching/sorting. Network stack analysis. Optimality.
CM 480: Selected Topics in Computer Science
Credits 3Students will study special topics of interest which are not normally included in their major courses.
CM 481: Advanced Computer Networking
Credits 3Students will study advanced computer networking topics. Topics include Networking Protocols (RIP, IGRP, EIGRP, MPLS, and OSPF), Subnetting designs, LAN Switching and VLANS, and Spanning Tree Protocol.
CM 490: Research and Independent Study
Credits 1 Max Credits 3Formulation and solution of a selected problem in computer science. In this course students are required to demonstrate their ability to write, using standard English.
CM 491: Research and Independent Study
Credits 1 Max Credits 3Formulation and solution of a selected problem in computer science. In this course students are required to demonstrate their ability to write, using standard English.