Curriculum: Computer Science, B.S.

Discovery Core

Foundations Credits:
FCWR 101 Writing I: Foundations of College Composition1 3
Prerequisite: Prerequisite: WRIT 100 or Writing Placement Exam

A course introducing students to the fundamentals of college composition. Topics include writing process, rhetorical strategies, basics of critical reading and thinking, analytical writing, and argumentative writing. This course serves as a foundation to prepare students to succeed in other academic writing contexts. Coursework includes a computer lab component.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
FCWR 151 Writing II: Foundations of Research Writing1 3
Prerequisite: Prerequisite: FCWR 101 or WRIT 101

Further development of the academic writing, critical thinking, and analytical reading skills taught in Writing I. An introduction to academic discourse in the four core seminar areas: literature, social sciences, behavioral sciences, and philosophy. Development of library skills leading to a documented research paper.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
FCSP 105 Foundations of Speech Communication 3
Study of the fundamentals of verbal communication including public speaking, interpersonal communication, and small group interaction. Training in methods of obtaining and organizing materials and ideas for effective verbal communication.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
FCIQ 101 Foundations of Inquiry 3
This course introduces you to the fundamentals of critical thinking. Topics include an overview of the research methods in various academic disciplines, reasoning, constructing an argument, and evaluating information. This course serves as a foundation for your continued development of critical thinking skills in other core classes, your major program coursework, and your personal and professional life.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
FCWR 304 Communication for Technical Professions 3
Prerequisite: Prerequisite: Take one course in each group: Group 1 (FCWR 101 or FCWR 111 or WRIT 101 or WRIT 111) and Group 2 (FCWR 151 or FCWR 161 or WRIT 151 or WRIT 161)

Building on courses taken in their majors, students will learn and apply concepts of effective written and oral expression appropriate for careers in the technology professions, such as engineering and computer science. In addition to modes of technical discourse (definition, description, analysis, interpretation), this course emphasizes strategies for effective business communication in the technical professions and stylistics of technical communication. Methods and procedures of research are explored in depth. Course work includes a computer lab component, oral presentation of final reports using presentation software, and exploration of appropriate technology for technical communication.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
    Total: 15 Credits
[1] Intensive English as a second language is not acceptable as a substitution for any of these requirements. The only permissible substitution is FCWR 111 and FCWR 161 in place of FCWR 101 and FCWR 151.
 
Seminars Credits:
ICLT 3XX Literature choice2 3


ICPH 3XX Philosophy choice2 3


ICBS 3XX Behavioral Science choice2 3


ICSS 309 Technology and Global Issues3 3
Prerequisite: Prerequisite: Take one course in each group: Group 1 (FCWR 101 or FCWR 111 or WRIT 101 or WRIT 111) and Group 2 (FCWR 151 or FCWR 161 or WRIT 151 or WRIT 161). Course is limited to juniors and seniors.

In this course the relationships between technology and global concerns are explored. Topics such as sustainable development, standards, ethics, environmental concerns and public policies related to design and development, energy, transportation, air and water facing both developed and developing nations will be discussed. Open to juniors and seniors only.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
    Total: 12 Credits
[2] Students are strongly encouraged to take at least one seminar course with an ethics component. Options are: ICLT 302, ICLT 303, ICPH 304, or ICPH 306. Depending on the choice, it will satisfy either the Literature or Philosophy core requirement.

[3] Cross-listed with IENG 400.
 
Math Credits:
MATH 170 Calculus I 4
Prerequisite: Prerequisite: MATH 140 or MATH 141 or TMAT 155 or Math Placement Exam

Study of lines and circles. Functions, limits, derivatives of algebraic functions, introduction to derivatives of trigonometric functions. Application of derivatives to physics problems, related rates, maximum-minimum word problems and curve sketching. Introduction to indefinite integrals. The conic sections.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 5-0-4
    Total: 4 Credits
 
Science (choose one course based on Sciences Group choice below) Credits:
PHYS 170 General Physics I 4
Co-Requisite: Co-requisite: MATH 170

A basic course covering vectors, Newton's laws of motion, particle kinematics and dynamics, work, energy, momentum, and rotational motion.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 4-2-4
CHEM 110 General Chemistry I 4
Co-Requisite: Co-requisite: MATH 135 or TMAT 135, MATH 136 or TMAT 155, MATH 141, MATH 161, or MATH 170

An introduction to theoretical and inorganic chemistry. Studies include: types of matter, atomic structure, the periodic table, chemical bonding, states of matter, solutions, chemical reactions, gas laws, and chemical calculations. Laboratory work illustrates common laboratory techniques as well as chemical principles.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-3-4
BIOL 110 General Biology I 4
The similarity in living things is demonstrated by a molecular and cellular approach to biology. After introductory biochemistry, the cell as the basic unit of life is studied structurally and metabolically. Life functions are examined from a cellular and from a vertebrate-organismic viewpoint. The central theme is the flow of energy between the biosphere and the ecosphere. The scientific method and hypothesis-testing are stressed as a means of investigation and forming conclusions. Collaborative laboratory assignments will include microscopic studies of the cell, its functions, and the dissection of a fetal pig.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-3-4
    Total: 4 Credits
 

Major Requirements

Engineering Technology Credits:
ETCS 105 Career Discovery4 2
The course experience provides the skills and tools necessary for a technical career while enabling students to develop confidence in their academic endeavors. The creative role in the multi-disciplinary design and development process is emphasized in addition to communication skills, ethical, legal, and professional responsibilities. This course may be waived for students with sophomore or higher status. This course replaces College Success Seminar for students in the College of Engineering and Computing Sciences.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 2-0-2
ETCS 108 Computer, Internet, and Society 3
This course covers the impact of computing on individuals, organizations and society. Topics include the history of computing, advances caused by computers, ethical and legal issues related to computing, privacy, security, social media and internet technologies.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
    Total: 3–5 Credits
[4] This course may be waived for students and transfer students with sophomore or higher status. All course substitutions must be approved by department chairperson.
 
Computer Science Credits:
CSCI 125 Computer Programming I 3
Prerequisite: Prerequisite: MATH 141 or higher

This course provides basic skills in problem solving and object-oriented programming using a high level language such as Java or C++. Topics include algorithm development, simple data types, expressions and statements, program flow control structures, objects, methods and arrays. Knowledge of Algebra

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-1-3
CSCI 135 Digital Logic Design Fundamentals 3
Prerequisite: Prerequisite: MATH 136 or MATH 140 or MATH 141 or MATH 170

The course introduces students to the modeling and design of fundamental digital circuits. Topics cover introduction to binary numbering, Boolean algebra, combinatorial and sequential logic circuits and memory elements (e.g. ROM, RAM and non-volatile computer memory). VHDL will be used in modeling, simulation and synthesis of digital circuits. Classroom Hours- Laboratory and/or Studio Hours- Course Credits: 3-0-3

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 155 Computer Organization and Architecture 3
Prerequisite: Prerequisite: CSCI 125, EENG 125 or CSCI 135 and MATH 161 or MATH 170

This course introduces students to the organization and architecture of modern computers. The students will learn a variety of concepts from the stored-program concept and the machine cycle, to the representation of code and data. The basic components of a computer and their functionality are analyzed including processor data path, pipelines, I/O devices, memory hierarchy, and interconnection networks. The instruction set architecture and its importance in reducing the gap between hardware and software is also discussed. Students will also learn how to evaluate computer performance.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 185 Computer Programming II 3
Prerequisite: Prerequisite: CSCI 120 or CSCI 125

This course provides advanced skills in object-oriented programming and problem solving techniques using a high level language such as Java C++. Topics include polymorphism, inheritance, exception handling, stream and file I/O, recursion, and dynamic data structures.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-1-3
CSCI 235 Elements of Discrete Structures 3
Prerequisite: Prerequisite: Take CSCI 185 and one course in this group: MATH 161 or MATH 170

This course provides students with an introduction to discrete structures with applications to computing problems. Topics include logic, sets, functions, relations, proof techniques, counting and algorithmic analysis in addition to graph theory and trees.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 260 Data Structures 3
Prerequisite: Prerequisite: Take one course in each group: Group 1 (MATH 161 or MATH 170) and Group 2 (CSCI 180 or CSCI 210 or CSCI 185)

The classic data structures, such as stacks, queues, linked lists, binary trees, etc. are studied. Sorting and searching are stressed. Computational analysis is also studied.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 270 Probability and Statistics for Computer Science 3
Prerequisite: Prerequisite: Take MATH 180 and one course in this group: CSCI 230 or CSCI 235

This course covers basic concepts in probability theory and illustrates its applications to computer science. The course covers probability spaces, random variables, distributions and density functions, expectations, sampling, limit theorems, statistical inference and hypothesis testing, as well as additional topics such as large deviations, client-server system and Markov chains, as they apply to computing.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 300 Database Management 3
Various data models, including hierarchical, network, relational, and object oriented, are introduced. The major part of the course is devoted to relational databases. Topics covered are the mathematical foundation, the three-level ANSI-SPARC architecture, and the SQL language. The SQL language includes the data manipulation and data definition components that are used to construct and query databases and also to provide access control to safeguard security. Entity-relationship modeling is presented and used to design the external level. Functional dependency and normalization techniques are used for the logical design of databases. Problems of concurrency control in multi-user database management systems are discussed.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 312 Theory of Computation 3
Prerequisite: Prerequisite: CSCI 235

The basic concepts of the theory of computation are studied including set theory, finite automata, context free and context-sensitive languages, Turing machines, Church's thesis, and uncomputability. The classes of computation complexity and their practical limitations are studied.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 318 Programming Language Concepts 3
Formal definition of programming languages including specification of syntax and semantics. A comparative analysis of various high-level programming languages with emphasis on the appropriateness of languages for certain applications.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 330 Operating Systems 3
Prerequisite: Prerequisite: Take CSCI 260 and one course in this group: CSCI 185 or CSCI 210

The design and implementation of an operating system is studied, including process states and synchronization, memory management strategies, processor scheduling, multiprocessing, parallel processing, hardware organization, disk scheduling and file management.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 335 Design and Analysis of Algorithm 3
Prerequisite: Prerequisite: CSCI 260

The fundamentals of designing computer algorithms are introduced. An overview of advanced data structures such as balanced trees, heaps and hash tables is presented. A discussion of algorithm design techniques will include, but not be limited to sorting and ordering, divide and conquer, shortest path and dynamic programming. The complexity of algorithms to various applications is discussed.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 345 Computer Networks 3
Prerequisite: Prerequisite: CSCI 330

This course introduces students to the fundamentals and applications of computer networks and layered architectures. Topics include the ISO reference 7-layer model, physical layer issues, data link layer protocols, medium access protocols, network layer, transport layer, and internetworking. A network-related programming final project is required.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 380 Introduction to Software Engineering 3
Formal approach to techniques of software design, development, testing and management. Design techniques considered include formal models of structured programming, stepwise refinement, segmentation, top-down design, data abstraction, information hiding and object-oriented development. A modern programming language will be used.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 455 Senior Project 3
In this course students undertake a computer science project under the guidance of a faculty advisor that draws significantly on knowledge and skills acquired in previous course work. Students work in teams on the design and implementation of a project with emphasis on constraints and trade-offs. Project topics may include computer graphics, computer and network security, and information management. Periodic written progress reports and oral presentations are used to track the ongoing course progress. A detailed final documentation, including a user manual for the developed application or project, together with a live demonstration are required. Approval of Chairperson. Open to Seniors only.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
    Total: 45 Credits

Concentration Options

Choose one: Network Security Concentration, Big Data Management and Analytics Concentration, or General Option.
 
Network Security Concentration (choose four courses from the following) Credits:
CSCI 352 Introduction to Network and Internet Security 3
Prerequisite: Prerequisite: CSCI 345 or CSCI 370

In this course, students are introduced to fundamental aspects of network and Internet security. The focus of the course is on network-based threats, their detection, preventions and analysis, as well as the integration of the tools and techniques employed in this effort. The students learn topics including: authentication; email, IP, and web security; security threats; malicious software; and firewalls.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 357 CISCO Academy Level I 3
This course prepares students with the knowledge and skills required to install, operate, and troubleshoot a small to medium size enterprise branch network. Topics include implementing network security, routing and switching fundamentals, the TCP/IP and OSI models, operating and configuring IOS devices, extending switched networks with VLANs, determining IP routes, managing IP routes, managing IP traffic with access lists and establishing point-to point and Frame Relay connections.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 2-2-3
CSCI 440 Network Security and Perimeter Protection 3
Prerequisite: Prerequisite: CSCI 345,

Co-Requisite: Co-requisite: CSCI 385.

This course will cover infrastructure security issues. Network operating systems and network architecture will be discussed together with the respective security related issues. The students will learn about the threats to computer networks through exploition of weaknesses in the design of network infrastructure and security flaws in the network infrastructure protocols. Issues related to the security of content and applications such as email, DNS, web servers will be discussed. Security techniques including intrusion detection, forensics, cryptography, authentication and access control are analyzed. Developmnets in IPSEC, transport protocols, secure mail, directory services, and multimedia services are discussed.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 445 Operating System Security 3
Prerequisite: Prerequisite: CSCI 330. CSCI 345

In this course students are introduced to advanced concepts in operating systems with emphasis on security. Students will study contemporary operating systems including UNIX and Windows. Topics include the application of policies for security administration, directory services, file system security, audit and logging, cryptographic enabled applications, cryptographic programming interfaces, and operating system integrity verification techniques.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 460 Special Topics I 3
Critical study of theory and research related to advanced topics in computer science such as computer graphics, artificial intelligence, performance evaluation, advanced systems programming or topics in computability, automata theory, etc. The specific topics of the seminar will be determined by the interest of both the students and the instructor.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 470 Special Topics II 3
Advanced topics in computer science of interest to both students and faculty will be covered.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 354 Principles of Information Security 3
Prerequisite: Prerequisite: CSCI 345

This course introduces students to a range of contemporary, applications-oriented, and advanced technical aspects of information security and assurance. Topics covered in this course are: the need and planning for security, information security maintenance, security technology, cryptography, and physical security. The course will also cover security policies, and legal and ethical issues. The course will also include a special project or paper as required and specified by the instructor and the SoECS graduate committee.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 362 Information System Security Engineering and Administration 3
Co-Requisite: Co-requisite: CSCI 354

In this course students will study the issues involved in structuring a computer-based information system to meet enterprise requirements and public policy regulations. Topics include the building blocks of an information system, emphasizing the security and administration aspects of each, as well as life-cycle considerations, and risk management. The course will also include a special project or paper as required and specified by the instructor and the SoECS graduate committee.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
    Total: 12 Credits
 
Big Data Management and Analytics Concentration (choose four courses from the following) Credits:
CSCI 401 Database Interfaces and Programming 3
Prerequisite: Prerequisite: CSCI 300

An advanced course in static and dynamic programming, embedded SQL using C. Open Database Connectivity (ODBC), interface to access data from various database management systems with Structured Query Language (SQL).

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 405 Distributed Database Systems 3
Prerequisite: Prerequisite: CSCI 300

Concepts underlying distributed systems: synchronization, communication, fault-tolerance. Concepts and architecture of distributed database systems. Distributed concurrency control and recovery. Replicated databases. Distributed Query Processing. Examples of commercial relational distributed DBMS.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 415 Introduction to Data Mining 3
Prerequisite: Prerequisite: CSCI 270, CSCI 300, and CSCI 335

This course introduces the concepts, techniques and applications of data mining. Topics include data preprocessing, clustering, data warehouse and online analytical processing (OLAP) technology, cluster and social network analysis, data classification and prediction, multimedia and web mining.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 426 Information Retrieval 3
Prerequisite: Prerequisite: CSCI 270 and CSCI 300

This course provides students with an introduction to the basics and techniques of information retrieval. Topics cover search engines, retrieval strategies such as vector space, extended Boolean, probabilistic models and evaluation methods including relevance-based measures, query processing, indexing and searching.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
CSCI 436 Big Data Analytics 3
Organizations today are generating massive amounts of data that are too large and unstructured to fit in relational databases. Existing platforms such as the Apache Hadoop allow for distributed and enterprise systems processing, of large data sets across clusters of computers, using the MapReduce programming model. In this course, students will gain an in-depth understanding of how MapReduce and Distributed File Systems work. In addition, they will be able to author Hadoop-based MapReduce applications in Java and use Hadoop subprojects Hive and Pig to build powerful data processing applications. Industry systems, such as IBM InfoSphere BigInsights and IBM InfoSphere Streams will be studied.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
    Total: 12 Credits
 
General Option Credits:
Select four CSCI/ITEC 300–400 level courses 12


    Total: 12 Credits
 
Mathematics Credits:
MATH 180 Calculus II 4
Prerequisite: Prerequisite: MATH 170. Students in BS Electrical and Computer Engineering and BS Mechanical Engineering must earn a grade of C or better in MATH 170.

Riemann sums, the definite integral, the fundamental theorem of the calculus. Area, volumes of solids of revolution, arc length, work. Exponential and logarithmic functions. Inverse trigonometric functions. Formal integration techniques. L'Hopital's rule, improper integrals. Polar coordinates.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 5-0-4
MATH 310 Linear Algebra 3
Prerequisite: Prerequisite: MATH 180

Matrices and systems of linear equations, vector spaces, change of base matrices, linear transformations, determinants, eigen-values and eigen-vectors, canonical forms.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-0-3
    Total: 7 Credits
 
Sciences (choose one grouping of courses from PHYS, CHEM, or BIOL) Credits:
PHYS 170 General Physics I (credits applied from Discovery Core Curriculum above) n/a
Co-Requisite: Co-requisite: MATH 170

A basic course covering vectors, Newton's laws of motion, particle kinematics and dynamics, work, energy, momentum, and rotational motion.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 4-2-4
PHYS 180 General Physics II 4
Prerequisite: Prerequisite: PHYS 170.

Co-Requisite: Co-requisite: MATH 180. Students in BS Electrical and Computer Engineering and BS Mechanical Engineering must earn a grade of C or better in PHYS 170.

A continuation of PHYS 170. Topics include fluids, wave motion, electric fields and electric potential, DC circuits, magnetic fields, capacitance and inductance, AC circuits, and electromagnetic waves.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 4-2-4
Life Science/Biology Elective 3


—OR—


CHEM 110 General Chemistry I (credits applied from Discovery Core Curriculum above) n/a
Co-Requisite: Co-requisite: MATH 135 or TMAT 135, MATH 136 or TMAT 155, MATH 141, MATH 161, or MATH 170

An introduction to theoretical and inorganic chemistry. Studies include: types of matter, atomic structure, the periodic table, chemical bonding, states of matter, solutions, chemical reactions, gas laws, and chemical calculations. Laboratory work illustrates common laboratory techniques as well as chemical principles.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-3-4
CHEM 150 General Chemistry II 4
Prerequisite: Prerequisite: CHEM 110

A continuation of CHEM 110. Topics to be covered include thermochemistry, chemical kinetics, chemical equilibria, acids and bases, ionic equilibria, oxidation-reduction reactions, and electrochemistry. Laboratory work illustrates the principles discussed in the lecture.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-3-4
Physics Elective 3


—OR—


BIOL 110 General Biology I (credits applied from Discovery Core Curriculum above) n/a
The similarity in living things is demonstrated by a molecular and cellular approach to biology. After introductory biochemistry, the cell as the basic unit of life is studied structurally and metabolically. Life functions are examined from a cellular and from a vertebrate-organismic viewpoint. The central theme is the flow of energy between the biosphere and the ecosphere. The scientific method and hypothesis-testing are stressed as a means of investigation and forming conclusions. Collaborative laboratory assignments will include microscopic studies of the cell, its functions, and the dissection of a fetal pig.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-3-4
BIOL 150 General Biology II 4
Prerequisite: Prerequisite: BIOL 110

The variety of living things is demonstrated by a study of representative plants and animals, emphasizing the viewpoints of taxonomy, phylogeny, morphology, and physiology. The continuity of life is demonstrated through studies in reproduction, genetics, and organic evolution. Scientific inquiry and critical thinking strategies are emphasized. Collaborative laboratory assignments include the dissection and study of fixed and living specimens representing the whole range of life.

Classroom Hours - Laboratory and/or Studio Hours – Course Credits: 3-3-4
Physics Elective 3


    Total: 7 Credits
 
Electives5 Credits:
Mathematics and Science Electives 6


General Elective 3


Liberal Arts Elective 3


    Total: 12 Credits
[5] All electives must be approved by the department.
 
Total Required Credits = 121–123