+CSCI 101. Computers in Society • 3 credits
This course will focus on the effects of computer integration and connectivity in our everyday lives, including: human-human interaction, human-device interactions, social and behavioral effects, ethical considerations, and legal concerns that contemporary societies face in the age of continuously connected computing. Core topics will include: personal and social responsibilities with social media, individual privacy, personal and information security, and cyber-activism.
CSCI 120. Introduction to Computing • 3 credits
Survey of computer systems, the role of the computer in different disciplines. Applications covered include an office suite (word processing, spreadsheet, and database), web browsing, and Internet research.
CSCI 140. Foundations of Computer Science • 3 credits
This course introduces the software and hardware components that comprise modern computer systems. It approaches problem solving through algorithms and their implementation in programming languages. It presents elementary concepts of computer architecture and the constraints such architectures impose on the representation of data and on the efficiency of operations. It provides a brief overview of networking, security, and representative software applications. CIS Department majors/minors must pass this course with a C or better.
CSCI 185. Script Programming • 3 credits
Introduces the fundamental concepts of script programming with an emphasis in automating common system management tasks. Topics include simple data types, control structures, arrays, and string handling.
CSCI 195. Object-Oriented Programming I • 3 credits
Introduces the fundamental concepts of programming from an object-oriented perspective. Topics include simple data types, control structures, an introduction to array and string data structures and algorithms, and debugging techniques. The course emphasizes good software engineering principles and developing fundamental programming skills in the context of a language that supports the object-oriented paradigm. CIS Department majors/minors must pass this course with a C or better.
CSCI 270. Networks and Data Communications • 3 credits
Introduction to computer networks. Covers principles of the OSI model, network topologies, physical networks and connection schemes, protocols, error handling, security and local area networks. CIS Department majors/minors must pass this course with a C or better.
+CSCI 281. Discrete Structures • 3 credits
Introduction to discrete mathematics as it is used in computer science. Topics include propositional and the predicate logic, simple circuit logic, elementary number theory, sequences and summations, methods of proof (direct, by contradiction, by contraposition, by induction), set theory, graph theory, combinatorics, and discrete probability.
CSCI 294. Contemporary Programming · 3 credits
Addresses the design, implementation, and testing of computer programs using a contemporary programming language different than that used in CSCI-195. The specific programming language used may vary among course offerings. This course may be repeated for credit provided the programming language is not repeated. Prerequisite: CSCI 185 or 195, with a minimum grade of C.
CSCI 295. Object-Oriented Programming II • 3 credits
Continues the investigation of object-oriented programming concepts. Students examine advanced programming language techniques as they apply to problem solving. Topics included inheritance and multi-threading, network programming, recursion, and an introduction to data structures. All topics stress good software engineering practices and debugging techniques. Prerequisite: CSCI 195, with a minimum grade of C.
CSCI 300. Systems Analysis and Design • 3 credits
Develops ability to analyze and design business information systems. A structured approach to the systems development life cycle (SDLC) is emphasized as a methodology for developing information systems requirements and design specifications. The use of modeling techniques throughout the SDLC is explored through the use of CASE technologies. Prerequisite: CSCI 360, with a minimum grade of C.
CSCI 310. Data Structures • 3 credits
Introduces the fundamental concepts of data structures and the algorithms that proceed from them. Topics include recursion, fundamental data structures (including stacks, queues, linked lists, hash tables, trees, and graphs) searching and sorting, and the basics of algorithmic analysis. Prerequisite: CSCI 295, MATH 095 or high school equivalency or appropriate placement.
CSCI 320. Computer Architecture • 3 credits
Introduces the organization and architecture of computer systems, beginning with the standard von Neumann model and then moving forward to more recent architectural concepts. Topics include Boolean functions, logic design, combinational and sequential circuits, basic computer organization (CPU, memory, and input/output) microprogramming, pipeline architecture, multiprocessing. Prerequisite: CSCI 140, with a minimum grade of C; CSCI 281.
CSCI 330. Web Programming • 3 credits
CSCI 360. Database Management Systems • 3 credits
Introductory course stressing the role of databases and database management systems in contemporary organizations. Relational database design, implementation, and maintenance techniques are introduced through the use of Entity-Relationship diagrams, structured query language and normalization processes. Prerequisite: CSCI 195, with a minimum grade of C..
CSCI 365. TCP/IP Fundamentals • 3 credits
A study of the Transmission Control Protocol/Internet Protocol (TCP/IP) and its auxiliary protocols. Topics include - TCP/IP TCP functions, IP addressing, ARP, DHCP, DNS, ssh, firewalls, routing, subnetting and supernetting, VLANs, and Internet security. Prerequisite: CSCI 140, 270, with a minimum grade of C.
CSCI 375. Network Forensics • 3 credits
An introduction to network-based incident handling, investigative methods, tracking, evidence collecting on network-based systems. Detailed analysis of log and system files. Intrusion detection/protection techniques will be introduced. Hands-on work with compromised systems and case studies of computer break-ins. Prerequisite: CSCI 270, with a minimum grade of C; CSCI 365.
CSCI 390. Application Programming in COBOL • 3 credits
A structured programming course in developing programmed solutions to common business problems emphasizing searching, sorting, sequential files and indexed files access, database access, and processing tables and arrays. Prerequisite: CSCI 275 or 295.
CSCI 393. Algorithm Design and Analysis • 3 credits
Introduces formal techniques to support the design and analysis of algorithms, focusing on both the underlying mathematical theory and practical considerations of efficiency. Topics include algorithm design techniques (brute force, divide and conquer, dynamic programming, and greedy), asymptotic complexity bounds, recurrence relations, sorting, searching, basic graph algorithms, and NP-completeness. Prerequisite: CSCI 195, with a minimum grade of C; CSCI 281.
CSCI 400. Programming Language Concepts • 3 credits
Study of theoretical aspects of programming languages. Topics include general syntax and semantics, axiomatic semantics, context free grammars, regular expressions, finite automata, Turing machines, parameter passing. Imperative, Functional and Logic programming paradigms will be explored. Prerequisite: CSCI 185 or 195, with a minimum grade of C.
CSCI 410. Operating Systems • 3 credits
Introduces the fundamentals of operating systems design and implementation. Topics include an overview of the components of an operating system, mutual exclusion and synchronization, implementation of processes, scheduling algorithms, memory management, concurrency, and file systems. Prerequisites: CSCI 195, with a minimum grade of C.
CSCI 415. Computer and Network Security • 3 credits
Presents the basic concepts and techniques for securing a computer system and for securing information systems in a network environment. Topics include site security, security management, intrusion detection/protection, integrity management, and event recovery. Prerequisite: CSCI 270, with a minimum grade of C.
CSCI 425. Computer Forensics • 3 credits
An introduction to computer forensics including: investigative methods and evidence collecting techniques appropriate for detailed and analysis of storage media. Students participate in hands-on work with comprised systems and case studies of data storage images. Prerequisite: CSCI 140 and 270, with a minimum grade of C.
WI-CSCI 435. Legal and Ethical Issues in Computing • 3 credits
Explores legal, ethical and social implications of computing from the perspectives of the citizen and the computing professional. Examines ethical theory in the context of computing, ethical codes for computing professionals, and current law and court precedents as they pertain to ownership of software and digital creations, privacy, free expression, and data security. Topics include the impact of electronic media on intellectual property, privacy threats from government and business databases, censorship of the Internet, government control of encryption, computer system reliability, and hacking and computer crimes. Prerequisite: English 101, with a minimum grade of C; Junior or senior standing.
CSCI 450. Network Operating System Topics • 3 credits
This course is designed to provide a student with experience designing, installing, and managing a computer network using a current Network Operating System. The topic will vary and may include Cisco Routing, Windows Server, and UNIX. This course may be repeated for credit as long as the topic is not repeated. Prerequisite: CSCI 270, with a minimum grade of C.
CSCI 470. Advanced Computer Networks and Data Communication • 3 credits
Extends understanding of network topics such as network protocols, topologies, frame relay, ATM, virtual networks, WAN, encryption and any other current topics. Prerequisite: CSCI 270, with a minimum grade of C.
CSCI 475. Capstone Seminar • 3 credits
A general topics and readings course in core computer networking technologies and management issues providing a foundation for integrating communications skills through research paper development, technical writing, group decisionmaking and business presentations. Prerequisite: Senior standing in CNA major.
CSCI 480. Topics in Computer Science • 1-3 credits
Selected topics in computer science. May be repeated. Prerequisite: Instructor permission.
CSCI 490. Independent Study in Computer Science • 3 credits
Reading, research, writing programs or supervising programming projects in computer science not available in othercourses. Prerequisite: Departmental approval.
CSCI 499. Internship in Computer Science • 1-3 credits
Experiential learning in a professional business setting based on an agreement between the advisor, student and sponsoring organization on learning contract, placement, academic project, evaluation. Students prepare a resume and participate in job screening process. Emphasis on how practical experience directly relates to course work. This course may be repeated for up to 3 credits. Pass/No Pass course. Prerequisite: Departmental approval.