CSCI 101. Computer in Society • 3 credits
CSCI 120. Introduction to Computer Science • 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. Computer Systems • 3 credits
This course develops an understanding of the hardware and software components that comprise modern computer systems. The relationship between hardware and software is explored as the foundation that must exist to create and maintain efficient computer systems. It presents elementary concepts of computer architecture and the constraints architectures impose on efficient system operations. Operating system alternatives and capabilities are studied in light of their ability to manage the underlying systems resources.
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. A variety of script languages and platforms with be introduced.
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, as well as debugging techniques and the social implications of computing. The course emphasizes good software engineering principles and developing fundamental programming skills in the context of a language that supports the object-oriented paradigm.
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.CSCI 275. Visual Basic • 3 creditsTeaches students with some programming experience how to create sophisticated Visual Basic-windows/web based applications designed to solve business problems. Students build applications on the strengths of Graphical User Interfaces, access databases, use Object-Oriented programming techniques for application integration, and development using a multi-tier architecture is emphasized. Prerequisite: CSCI 195.
+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 295. Object-Oriented Programming II • 3 credits
Addresses advanced concepts in the methodology of programming from an object-oriented perspective through the study of object design, this course also introduces the basic of human-computer interfaces, graphics and the social implications of computing, with an emphasis on software engineering. Prerequisite: CSCI 195.
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.
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, 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.
CSCI 365. TCP/IP Fundamentals • 3 credits
A study of the Transmission Control Protocol/Internet Protocol (TCP/IP) suite and its services, Topics include TCP/IP services management, HTML, CGI, ftp/telnet, firewalls, routing, Domain Name Service, subnetting, and Internet security. TCP/IP services will be installed and configured. Prerequisite: CSCI 140, 270.
CSCI 375. Network Forensics • 3 credits
An introduction to network-based incident handling, investigative methods, tracking, evidence collecting on networkbased 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, 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 (divide and conquer, dynamic programming, greedy) asymptotic complexity bounds, recursion relationships, search and sort algorithms, searching, basic graph algorithms, and NP- completeness. Prerequisites: CSCI 281 and one programming language above the 100 level.
CSCI 400. Programming Language Concepts • 3 credits
Study of theoretical aspects of programming languages. Topics include general syntax and semantics, axiomatic semantics, abstract data types, concurrency, controls, functions, parameter passing, and object-oriented design. Imperative, Functional and Logic programming paradigms will be explored. Prerequisite: CSCI 185 or 195.
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: CSCI195.
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.
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, 270.
WI-CSCI 435. Legal and Ethical Issues inComputing • 3 credits
Explores legal, ethical and social implications of computing from computing professional's point of view. Examines ethical theory in the context of computing, ethical codes for computing professionals, and current law and court precedents pertaining to ownership 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: Junior or senior standing.
CSCI 450. Network Operating System Topics • 3 credits
Experience designing, installing and managing a computer network using a current Network Operation System. May include Windows server, Cisco routing and UNIX. Course may be repeated for credit as long as the topic is not repeated. Prerequisite: CSCI 270.
CSCI 460/560. Data Management • 3 credits
This course identifies the need for and the steps to achieve a comprehensive enterprise data strategy. An understanding of techniques for managing the information abundance and for controlling the costs of information processing in decision making contexts is an essential requirement in achieving corporate goals.
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.
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.