Go to Main Content
 

HELP | EXIT

Catalog Entries

 

Spring 2013 Semester
Apr 18, 2014
Transparent Image
Information Select the Course Number to get further detail on the course. Select the desired Schedule Type to find available classes for the course.

CS 1100 - Computer Science and Its Applications
Introduces students to the field of computer science and the patterns of thinking that enable them to become intelligent users of software tools in a problem-solving setting. Examines several important software applications so that students may develop the skills necessary to use computers effectively in their own disciplines. Prereq. Not open to students in the College of Computer and Information Science or in the College of Engineering.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
CAS Core MOI: Natural World, NU Core Science/Tech Lvl 1, Computer&Info Sci

CS 1200 - Computer Science/Information Science Overview 1
Introduces students to the College of Computer and Information Science (CCIS) and begins their preparation for careers in the computing and information fields. Offers students an opportunity to learn how to thrive at Northeastern and within CCIS by developing academic, professional, and interpersonal skills. Covers the variety of careers available in the high-technology professions. Students work in groups to create and deliver presentations on careers in the field. Prereq. Intended for CCIS freshmen and for freshmen who transfer into CCIS.
1.000 Credit hours
1.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 1210 - Computer Science/Information Science Overview 2: Co-op Preparation
Continues the preparation of students for careers in the computing and information fields by discussing co-op and co-op processes. Offers students an opportunity to prepare a professional résumé; practice proper interviewing techniques; explore current job opportunities; learn how to engage in the job and referral process; and to understand co-op policies, procedures, and expectations. Discusses professional behavior and ethical issues in the workplace. Prereq. Intended for freshmen in the College of Computer and Information Science (CCIS) and for freshmen who plan to transfer into CCIS.
1.000 Credit hours
1.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 1220 - Computer/Information Science Co-op Preparation
Prepares students for co-op through topics such as ethics, privacy, security, responsibility, and intellectual property. Exposes students to popular industry technologies. Prereq. Intended for transfer students into computer/information science who are above the freshman level.
1.000 Credit hours
1.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 1500 - Algorithms and Data Structures for Engineering
Introduces algorithms and data structures for engineering students. Discusses data structures such as arrays, stacks, queues, and lists, and the algorithms that manipulate these structures. Introduces simple algorithm analysis. Discusses classes and objects and presents the basic material about encapsulation, inheritance, and polymorphism. Introduces software development practices such as modular design, use of libraries, testing methods, and debugging techniques. Prereq. GE 1111; not open to students in the College of Computer and Information Science. Coreq. CS 1501.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Science/Tech Lvl 1, Computer&Info Sci

CS 1501 - Lab for CS 1500
Accompanies CS 1500. Covers topics from the course through various experiments. Prereq. Not open to students in the College of Computer and Information Science. Coreq. CS 1500.
1.000 Credit hours
1.000 Lab hours

Levels: Undergraduate
Schedule Types: Lab

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 1800 - Discrete Structures
Introduces the mathematical structures and methods that form the foundation of computer science. Studies structures such as sets, tuples, sequences, lists, trees, and graphs. Discusses functions, relations, ordering, and equivalence relations. Examines inductive and recursive definitions of structures and functions. Discusses principles of proof such as truth tables, inductive proof, and basic logic. Also covers the counting techniques and arguments needed to estimate the size of sets, the growth of functions, and the space-time complexity of algorithms.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Math/Anly Think Lvl 1, Computer&Info Sci

CS 1801 - Recitation for CS 1800
Accompanies CS 1800. Provides students with additional opportunities to ask questions and to see sample problems solved in detail.
0.000 Credit hours
0.000 Lecture hours

Levels: Undergraduate
Schedule Types: Recitation/Discussion

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 1990 - Elective
Offers elective credit for courses taken at other academic institutions. Prereq. Permission of instructor.
1.000 TO 4.000 Credit hours
1.000 TO 4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Off-campus instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, Computer&Info Sci

CS 2500 - Fundamentals of Computer Science 1
Introduces the fundamental ideas of computing and the principles of programming. Discusses a systematic approach to word problems, including analytic reading, synthesis, goal setting, planning, plan execution, and testing. Presents several models of computing, starting from nothing more than expression evaluation in the spirit of high school algebra. No prior programming experience is assumed; therefore, suitable for freshman students, majors and nonmajors alike who wish to explore the intellectual ideas in the discipline. Coreq. CS 2501.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
CAS Core MOI: Natural World, NU Core Science/Tech Lvl 1, Computer&Info Sci

CS 2501 - Lab for CS 2500
Accompanies CS 2500. Covers topics from the course through various experiments. Coreq. CS 2500.
1.000 Credit hours
1.000 Lab hours

Levels: Undergraduate
Schedule Types: Lab

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 2510 - Fundamentals of Computer Science 2
Continues CS 2500. Examines object-oriented programming and associated algorithms using more complex data structures as the focus. Discusses nested structures and nonlinear structures including hash tables, trees, and graphs. Emphasizes abstraction, encapsulation, inheritance, polymorphism, recursion, and object-oriented design patterns. Applies these ideas to sample applications that illustrate the breadth of computer science. Prereq. CS 2500 (may be taken concurrently). Coreq. CS 2511.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 2511 - Lab for CS 2510
Accompanies CS 2510. Covers topics from the course through various experiments. Coreq. CS 2510.
1.000 Credit hours
1.000 Lab hours

Levels: Undergraduate
Schedule Types: Lab

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 2600 - Computer Organization
Introduces the basic design of computing systems. Covers central processing unit (CPU), memory, input, and output. Provides a complete introduction to assembly language such as the basics of an instruction set plus experience in assembly language programming using a RISC architecture. Uses system calls and interrupt-driven programming to show the interaction with the operating system. Covers machine representation of integers, characters, and floating-point numbers. Describes caches and virtual memory. Prereq. CS 2510.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 2800 - Logic and Computation
Introduces formal logic and its connections to computer and information science. Offers an opportunity to learn to translate statements about the behavior of computer programs into logical claims and to gain the ability to prove such assertions both by hand and using automated tools. Considers approaches to proving termination, correctness, and safety for programs. Discusses notations used in logic, propositional and first order logic, logical inference, mathematical induction, and structural induction. Introduces the use of logic for modeling the range of artifacts and phenomena that arise in computer and information science. Prereq. (a) CS 1800, MATH 1365, or MATH 2310 and (b) CS 2500. Coreq. CS 2801.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Math/Anly Think Lvl 2, Computer&Info Sci

CS 2801 - Lab for CS 2800
Accompanies CS 2800. Covers topics from the course through various experiments. Coreq. CS 2800.
1.000 Credit hours
1.000 Lab hours

Levels: Undergraduate
Schedule Types: Lab

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 2900 - Honors Freshman Seminar 1
Introduces a variety of topics that extend the material in the standard freshman computer courses or go beyond the scope of these courses. Prereq. Honors Program participation.
1.000 Credit hours
1.000 Lecture hours

Levels: Undergraduate
Schedule Types: Seminar

Computer Science Department

Course Attributes:
Honors, Computer&Info Sci

CS 2901 - Honors Freshman Seminar 2
Introduces a variety of topics that extend the material in the standard freshman computer courses or go beyond the scope of these courses. Prereq. Honors Program participation.
1.000 Credit hours
1.000 Lecture hours

Levels: Undergraduate
Schedule Types: Seminar

Computer Science Department

Course Attributes:
Honors, Computer&Info Sci

CS 2990 - Elective
Offers elective credit for courses taken at other academic institutions. Prereq. Permission of instructor.
1.000 TO 4.000 Credit hours
1.000 TO 4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Off-campus instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, Computer&Info Sci

CS 3200 - Database Design
Studies the design of a database for use in a relational database management system. The entity-relationship model and normalization are used in problems. Relational algebra and then the SQL (structured query language) are presented. Advanced topics include triggers, stored procedures, indexing, elementary query optimization, and fundamentals of concurrency and recovery. Students implement a database schema and short application programs on one or more commercial relational database management systems. Prereq. CS 1500 or CS 2510.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 3500 - Object-Oriented Design
Presents a comparative approach to object-oriented programming and design. Discusses the concepts of object, class, meta-class, message, method, inheritance, and genericity. Reviews forms of polymorphism in object-oriented languages. Contrasts the use of inheritance and composition as dual techniques for software reuse: forwarding vs. delegation and subclassing vs. subtyping. Fosters a deeper understanding of the principles of object-oriented programming and design including software components, object-oriented design patterns, and the use of graphical design notations such as UML (unified modeling language). Basic concepts in object-oriented design are illustrated with case studies in application frameworks and by writing programs in one or more object-oriented languages. Prereq. CS 1500 or CS 2510.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 3520 - Programming in C++
Examines how to program in C++ in a robust and safe manner. Reviews basics, including scoping, typing, and primitive data structures. Discusses data types (primitive, array, structure, class, string); addressing/parameter mechanisms (value, pointer, reference); stacks; queues; linked lists; binary trees; hash tables; and the design of classes and class inheritance, emphasizing single inheritance. Considers the instantiation of objects, the trade-offs of stack vs. heap allocation, and the design of constructors and destructors. Emphasizes the need for a strategy for dynamic memory management. Addresses function and operator overloading; templates, the Standard Template Library (STL), and the STL components (containers, generic algorithms, iterators, adaptors, allocators, function objects); streams; exception handling; and system calls for processes and threads. Prereq. CS 1500 or CS 2510.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 3540 - Game Programming
Introduces the different subsystems used to create a 3D game, including rendering, animation, collision, physics, audio, trigger systems, game logic, behavior trees, and simple artificial intelligence. Offers students an opportunity to learn the inner workings of game engines and how to use multiple libraries such as physics and graphics libraries to develop a game. Discusses graphics pipeline, scene graph, level design, behavior scripting, object-oriented game design, world editors, and game scripting languages. Prereq. CS 3500 and CS 3520.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 3600 - Systems and Networks
Introduces the basic concepts underlying computer operating systems and computer networks and provides hands-on experience with their implementation. Covers the basic structure of an operating system: application interfaces, processes, threads, synchronization, interprocess communication, processor allocation, deadlocks, memory management, file systems, and input/output control. Also introduces network architectures, network topologies, network protocols, layering concepts (for example, ISO/OSI, TCP/IP reference models), communication paradigms (point-to-point vs. multicast/broadcast, connectionless vs. connection oriented), and networking API’s (sockets). Uses examples from many real operating systems and networks (UNIX, MS-DOS, Windows, TCP/IP, Ethernet, ATM, and token rings) to reinforce concepts. Prereq. CS 2600 or CS 3520.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 3800 - Theory of Computation
Introduces the theory behind computers and computing aimed at answering the question, “What are the capabilities and limitations of computers?” Covers automata theory, computability, and complexity. The automata theory portion includes finite automata, regular expressions, nondeterminism, nonregular languages, context-free languages, pushdown automata, and noncontext-free languages. The computability portion includes Turing machines, the Church-Turing thesis, decidable languages, and the Halting theorem. The complexity portion includes big-O and small-o notation, the classes P and NP, the P vs. NP question, and NP-completeness. Prereq. (a) CS 1500 or CS 2510 and (b) CS 2800.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Math/Anly Think Lvl 2, Computer&Info Sci

CS 3990 - Elective
Offers elective credit for courses taken at other academic institutions. Prereq. Permission of instructor.
1.000 TO 4.000 Credit hours
1.000 TO 4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Off-campus instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, Computer&Info Sci

CS 4000 - Senior Seminar
Requires students to give a twenty- to thirty-minute formal presentation on a topic of their choice in computer science. Prepares students for this talk by discussing methods of oral presentation, how to present technical material, how to choose what topics to present, overall organization of a talk, and use of presentation software and other visual aids. Prereq. Senior standing; computer/information science students only.
1.000 Credit hours
1.000 Lecture hours

Levels: Undergraduate
Schedule Types: Seminar

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4100 - Artificial Intelligence
Introduces the fundamental problems, theories, and algorithms of the artificial intelligence field. Includes heuristic search; knowledge representation using predicate calculus; automated deduction and its applications; planning; and machine learning. Additional topics include game playing; uncertain reasoning and expert systems; natural language processing; logic for common-sense reasoning; ontologies; and multiagent systems. Prereq. CS 2800 and CS 3500.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4150 - Game Artificial Intelligence
Offers an overview of classical and modern approaches to artificial intelligence in digital games. Focuses on the creation of believable agents and environments with the goal of providing a fun and engaging experience to a player. Covers player modeling, procedural content generation, behavior trees, interactive narrative, decision-making systems, cognitive modeling, and path planning. Explores different approaches for behavior generation, including learning and rule-based systems. Requires students to complete several individual assignments in these areas to apply the concepts covered in class. Students choose a group final project to explore one aspect of artificial intelligence for games in further depth. Offers students an opportunity to learn team management and communication. Prereq. (a) CS 2800 and CS 3500 or (b) permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4200 - Database Internals
Explores the internal workings of database management systems. Explains how database systems store data on disks. Studies how to improve query efficiency using index techniques such as B+-tree, hash indices, and multidimensional indices. Describes how queries are executed internally and how database systems perform query optimizations. Introduces concurrency control schemes implemented by locking, such as hierarchical locking and key range locking. Describes lock table structure. Discusses how database systems can perform logging and recovery to avoid loss of data in case of system crashes. Prereq. CS 3200 or CS 5200.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4240 - Parallel Data Processing in MapReduce
Introduces the MapReduce programming model and the core technologies it relies on in practice, such as a distributed file system and the distributed consensus protocol. Also discusses related approaches and technologies from distributed databases and cloud computing. Emphasizes practical examples and hands-on programming experiences. Examines both plain MapReduce and database-inspired advanced programming models running on top of a MapReduce infrastructure. Prereq. (a) CS 3600 or CS 5600 or permission of instructor and (b) CS 4800 or CS 5800 or permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4300 - Computer Graphics
Charts a path through every major aspect of computer graphics with varying degrees of emphasis. Discusses hardware issues: size and speed; lines, polygons, and regions; modeling, or objects and their relations; viewing, or what can be seen (visibility and perspective); rendering, or how it looks (properties of surfaces, light, and color); transformations, or moving, placing, distorting, and animating and interaction, or drawing, selecting, and transforming. Prereq. (a) CS 1500, CS 2510, or CS 3500 and (b) MATH 1260, MATH 2331, or MATH 2341.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4400 - Programming Languages
Introduces a systematic approach to understanding the behavior of programming languages. Covers interpreters; static and dynamic scope; environments; binding and assignment; functions and recursion; parameter-passing and method dispatch; objects, classes, inheritance, and polymorphism; type rules and type checking; and concurrency. Prereq. CS 3500 and CS 3800 (CS 3800 may be taken concurrently).
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4410 - Compilers
Studies the construction of compilers and integrates material from earlier courses on programming languages, automata theory, computer architecture, and software design. Examines syntax trees; static semantics; type checking; typical machine architectures and their software structures; code generation; lexical analysis; and parsing techniques. Uses a hands-on approach with a substantial term project. Prereq. CS 4400, CS 5400, or CS 7400.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4500 - Software Development
Considers software development as a systematic process involving specification, design, documentation, implementation, testing, and maintenance. Examines software process models; methods for software specification; modularity, abstraction, and software reuse; and issues of software quality. Students, possibly working in groups, design, document, implement, test, and modify software projects. Prereq. (a) CS 3500 and (b) ENGL 1111 or ENGL 1102.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4510 - Software Testing
Examines the software development process from the point of view of testing. Focuses on unit testing, white- and black-box testing, randomized testing, the design of equality comparison, and the design of a test tool that evaluates the tests and reports the results. Next considers integration testing, stress tests and other performance tests, testing automation, and other techniques for assuring correctness and integrity of programs with several interacting components. Explores tools for measuring code quality and how these tools may be used to improve code design. Requires a comprehensive project in which all techniques studied are applied. Prereq. CS 3500.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4520 - Mobile Application Development
Focuses on mobile application development on a mobile phone or related platform. Discusses memory management; user interface building, including both MVC principles and specific tools; touch events; data handling, including core data, SQL, XML, and JSON; network techniques and URL loading; and, finally, specifics such as GPS and motion sensing that may be dependent on the particular mobile platform. Students are expected to work on a project that produces a professional-quality mobile application. The instructor chooses a modern mobile platform to be used in the course. Prereq. CS 3500.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4550 - Web Development
Discusses Web development for sites that are dynamic, data driven, and interactive. Focuses on the software development issues of integrating multiple languages, assorted data technologies, and Web interaction. Considers ASP.NET, C#, HTTP, HTML, CSS, XML, XSLT, JavaScript, AJAX, RSS/Atom, SQL, and Web services. Requires each student to deploy individually designed Web experiments that illustrate the Web technologies and at least one major integrative Web site project. Students may work as a team with the permission of the instructor. Each student or team must also create extensive documentation of their goals, plans, design decisions, accomplishments, and user guidelines. All source files must be open and be automatically served by a sources server. Prereq. CS 3500.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4600 - Topics in Operating Systems
Studies advanced concepts underlying computer operating systems and computer networks. Examines in depth all major operating-system and network components including device drivers, network protocol stacks, memory managers, centralized and distributed file systems, interprocess communication mechanisms, real-time schedulers, and security mechanisms. Additional components are covered as time permits. Provides hands-on experience with the source code of commercial-grade operating systems and networks. Prereq. CS 3500 and CS 3600.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4610 - Robotic Science and Systems
Introduces autonomous mobile robots, with a focus on algorithms and software development, including closed-loop control, robot software architecture, wheeled locomotion and navigation, tactile and basic visual sensing, obstacle detection and avoidance, and grasping and manipulation of objects. Offers students an opportunity to progressively construct mobile robots from a predesigned electromechanical kit. The robots are controlled wirelessly by software of the students’ own design, built within a provided robotics software framework. The course culminates in a grand challenge competition using all features of the robots. Prereq. CS 3500. Coreq. CS 4611.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4611 - Lab for CS 4610
Offers a laboratory course to accompany CS 4610. Coreq. CS 4610.
1.000 Credit hours
1.000 Lab hours

Levels: Undergraduate
Schedule Types: Lab

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4650 - High Performance Computing
Introduces students to research in the domain of high-performance computing. Each instance of this course covers a single topic with broad open questions. The required systems background needed to investigate these questions is covered in the first part of the course. Then, working in teams, students have an opportunity to address different aspects of the open questions so that in combination the entire class may learn more than any single team could accomplish. Example topics include use of new hardware such as GPUs on video boards, use of new software tools for multicore computing, development of check-pointing packages for more robust long computations, software for GUI window systems, and cloud computing. Prereq. (a) CS 3600 or CS 5600 and (b) and permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4700 - Network Fundamentals
Introduces the fundamental concepts of network protocols and network architectures. Presents the different harmonizing functions needed for the communication and effective operation of computer networks. Provides in-depth coverage of data link control, medium access control, routing, end-to-end transport protocols, congestion and flow control, multicasting, naming, auto configuration, quality of service, and network management. Studies the abstract mechanisms and algorithms as implemented in real-world Internet protocols. Also covers the most common application protocols (e-mail, Web, and ftp). Prereq. CS 3600 or CS 5600.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4740 - Network Security
Studies topics related to Internet architecture and cryptographic schemes in the context of security. Provides advanced coverage of the major Internet protocols including IP and DNS. Examines denial of service, viruses, and worms, and discusses techniques for protection. Covers cryptographic paradigms and algorithms such as RSA and Diffie-Hellman in sufficient mathematical detail. The advanced topics address the design and implementation of authentication protocols and existing standardized security protocols. Explores the security of commonly used applications like the Web and e-mail. Prereq. CS 3600 or CS 5600.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4750 - Secure Wireless Ad Hoc Robots on Mission (SWARM) 1
Introduces the concepts underlying the design of robust and secure heterogeneous wireless networking of mobile robots: Internetworking, security, wireless communication, embedded development, and mobile phone platforms. Students form mixed teams with the goal of designing and building rescue-mission-oriented heterogeneous wireless systems operating in adversarial environments. These systems consist of off-the-shelf robots enhanced by the students with a low-power control and sensing embedded system; a low-power digital radio frequency communication network; a coordination unit connected to the Internet; and a messaging and command system based on cell phones. The course culminates in a competition between teams. Students are graded based on their designs, presentations, innovation, robustness, and competition performance. Graduate students are expected to make a research contribution. Prereq. (a) CS 3600 or CS 5600 and (b) permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4760 - Secure Wireless Ad Hoc Robots on Mission (SWARM) 2
Continues CS 4750. Based on the experiences in CS 4750, student teams have an opportunity to build more autonomous systems that can navigate areas where wireless communication or direct visibility are not possible. The systems must be resilient to more sophisticated denial-of-service attacks and need to more carefully account for energy consumption expended on mobility, communication, and meeting the mission task. Graduate students are expected to make a research contribution. Prereq. CS 4750 and permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4800 - Algorithms and Data
Introduces the basic principles and techniques for the design, analysis, and implementation of efficient algorithms and data representations. Discusses asymptotic analysis and formal methods for establishing the correctness of algorithms. Considers divide-and-conquer algorithms, graph traversal algorithms, and optimization techniques. Introduces information theory and covers the fundamental structures for representing data. Examines flat and hierarchical representations, dynamic data representations, and data compression. Concludes with a discussion of the relationship of the topics in this course to complexity theory and the notion of the hardness of problems. Prereq. CS 3500.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
NU Core Math/Anly Think Lvl 2, Computer&Info Sci

CS 4850 - Building Game Engines
Discusses the components of game engines and strategies for their software implementation. Includes graphics management algorithms (animation, scene graph, level of detail); basic artificial intelligence algorithms (search, decision making, sensing); and related algorithmic issues (networking, threading, input processing). Explores the use of data-driven software design. Offers students an opportunity to use a rendering engine and to build and integrate several software components to create a complete game engine. Requires students to work on several individual assignments to apply the algorithms and then develop a project in a team. Offers students an opportunity to learn team/project management; work division; team communication; and the software development cycle of implementation, testing, critique, and further iteration. Prereq. CS 3540 or permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4900 - Honors Senior Seminar
Offers a capstone course for computer science honors students. Exposes students to one or more topics of current interest in computer science. Requires students to prepare a one-hour presentation on a topic in computer science and to write a paper on that topic. Prereq. Senior standing and Honors Program participation; computer/information science students only.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Seminar

Computer Science Department

Course Attributes:
Honors, NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4910 - Computer Science Topics
Offers a lecture course in computer science on a topic not regularly taught in a formal course. Topics may vary from offering to offering. Prereq. CS 3500, CS 3800, and permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4920 - Computer Science Project
Focuses on students developing a substantial software or hardware artifact under faculty supervision. Prereq. CS 3500, CS 3800, and permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, Computer&Info Sci

CS 4970 - Junior/Senior Honors Project 1
Focuses on in-depth project in which a student conducts research or produces a product related to the student’s major field. Culminating experience in the University Honors Program. Combined with Junior/Senior Project 2 or college-defined equivalent for 8 credit honors project. Prereq. Honors Program participation and permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
Honors, Do not publish in schedule, Computer&Info Sci

CS 4971 - Junior/Senior Honors Project 2
Focuses on second semester of in-depth project in which a student conducts research or produces a product related to the student’s major field. Culminating experience in the University Honors Program. Prereq. CS 4970, Honors Program participation, and permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
Honors, Do not publish in schedule, Computer&Info Sci

CS 4990 - Elective
Offers elective credit for courses taken at other academic institutions. Prereq. Permission of instructor.
1.000 TO 4.000 Credit hours
1.000 TO 4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Off-campus instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, Computer&Info Sci

CS 4991 - Research
Offers an opportunity to conduct research under faculty supervision. Prereq. CS 3500, CS 3800, and permission of instructor.
4.000 OR 8.000 Credit hours
4.000 OR 8.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4992 - Directed Study
Focuses on student examining standard computer science material in fresh ways or new computer science material that is not covered in formal courses. Prereq. CS 3500, CS 3800, and permission of instructor.
1.000 TO 6.000 Credit hours
1.000 TO 6.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, Computer&Info Sci

CS 4993 - Independent Study
Offers independent work under the direction of members of the department on a chosen topic. Course content depends on instructor. Prereq. CS 3500, CS 3800, and permission of instructor.
1.000 TO 6.000 Credit hours
1.000 TO 6.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, Computer&Info Sci

CS 4994 - Internship
Offers students an opportunity for internship work. Prereq. Permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
Computer&Info Sci

CS 4996 - Experiential Education Directed Study
Draws upon the student’s approved experiential activity and integrates it with study in the academic major. Restricted to those students who are using the course to fulfill their experiential education requirement. Prereq. Permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
NU Core Experiential Learning, Computer&Info Sci

CS 4997 - Computer Science Thesis
Focuses on student preparing an undergraduate thesis under faculty supervision. Prereq. Permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci

CS 4998 - Computer Science Thesis Continuation
Focuses on student continuing to prepare an undergraduate thesis under faculty supervision. Prereq. CS 4997 and permission of instructor.
4.000 Credit hours
4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Individual Instruction

Computer Science Department

Course Attributes:
Do not publish in schedule, NU Core Capstone, NU Core Writing Intsv in Majr, Computer&Info Sci


Return to Previous New Search XML Extract
Transparent Image
Skip to top of page
Release: 8.5.4