minus plus magnify speech newspaper atomic biology chemistry computer-science earth-science forensic-services globe info math matrix molecule neuroscience pencil physics pin psychology email share atsign clock double-left-chevron double-right-chevron envelope fax phone tumblr googleplus pinterest twitter facebook feed linkedin youtube flickr instagram
Students in computer science classroom

Undergraduate courses

Undergraduate students are utilizing new technologies to fit educational goals into busy work and family lives. Distributed education offers flexibility and accessibility that would not otherwise be possible in a classroom setting.

Students taking DE courses will spend less time on campus than students who are engaged in more traditional courses. CSCI distributed education courses offer an alternative for viewing lectures at home, work, or on any computer with a disk drive at any time during the day or night. Students follow a typical course schedule that runs parallel to a classroom setting with the same exercises, exams and projects. For many, distributed education helps meet educational goals while avoiding the hassles of driving to campus and parking several times a week.

  • Optional Lab: Optional on-campus help sessions are available to students throughout the semester. Students are not required to be on campus at all during the semester but may choose to attend some of the on-campus help sessions for face to face interaction with an instructor.

Learn more about Distributed Education

Distributed Education

We typically offer the following courses through Distributed Education:
(Please check the current Schedule of Classes for a current list of Distributed Education courses.)

  • CSCI N100: Introduction to Computers & Computing 
  • CSCI N201: Programming Concepts 
  • CSCI N207: Data Analysis Using Spreadsheets 
  • CSCI N241: Introduction to Web Development 
  • CSCI N301: Fundamental Computer Science Concepts 
  • CSCI N331: Visual Basic Programming 
  • CSCI N335: Advanced Programming, Visual Basic .Net
  • CSCI N341: Introduction to Client-Side Web Programming 
  • CSCI N342: Server-Side Programming for the Web 
  • CSCI N351: Introduction to Multimedia Programming 
  • CSCI N355: Introduction to Virtual Reality 
  • CSCI N361: Fundamentals of Software Project Management
  • CSCI N431: E-Commerce with ASP.Net

Minimum Requirements

The minimum requirements for a computer to play the lectures is as follows:

  • 350 megahertz (MHz) Intel Pentium II processor or equivalent
  • 64 megabytes (MB) of RAM (128MB on Windows XP or later)
  • 52 MB available disk space
  • 16-bit sound card and speakers
  • 65,000-color video display card set to display at 800x600 (video)
  • Windows 98 SE, Windows ME, Windows NT 4.0 with Service Pack 6 or later (playback only), Windows 2000 with Service Pack 2 or later, or Windows XP
  • Internet Explorer 5.0 or later
  • CD, CDRW, or DVD
  • An internet connection.

Check with the instructor of the course to gather the hardware/software requirements for the course as requirements vary per class. Please note that Distributed Education courses require both the lectures on CD or DVD as well as textbooks according to instructor syllabi. Please see the syllabus of the course online in order to determine textbook requirements.

CSCI 23000 Computing I

  • Credit Hours: 4
  • Course Summary: The context of computing in history and society, information representation in digital computers, introduction to programming in a modern high-level language, introduction to algorithm and data structures, their implementation as programs.
  • Prerequisite or Corequisite: MATH 15300 or MATH 15900
  • Semester(s) Offered: Fall, Spring, Summer

CSCI 24000 Computing II

  • Credit Hours: 4
  • Course Summary: Continues the introduction of programming began in CSCI 23000, with particular focus on the ideas of data abstraction and object-oriented programming. Topics include programming paradigms, principle of language design, object-oriented programming, programming and debugging tools, documentation, recursion, linked data structures, and introduction to language translation.
  • Prerequisites: MATH 15300 and CSCI 23000.
  • Semester(s) Offered: Fall, Spring, Summer
  • Course Links: Video Lectures

CSCI 26500 Advanced Programming

  • Credit Hours: 3
  • Course Summary: P or C: ECE 264 and CSCI 242 or CSCI 230. Spring. Learn advanced programming skills and concepts. Introduction to software engineering: problem specification and program design with emphasis on object-oriented programming, programming style, debugging, and documentation. A significant software project's required. This course is for computer engineering and computer information systems majors.
  • Semester(s) Offered: Not Currently Offered

CSCI 30000 Systems Programming

  • Credit Hours: 3
  • Course Summary: P : CSCI 24000. Fall. Assembly language programming and structure of a simple and a typical computer. Pseudo operations, address structure, subroutines, and macros. File I/O and buffering techniques. Interfacing with high-level languages. Assemblers: one- and two-pass assemblers, system dependent and independent assembler features, and design options. Loaders, linkers, and macro processors.
  • Prerequisites: CSCI 24000
  • Semester(s) Offered: Spring

CSCI 34000 Discrete Computational Structures

  • Credit Hours: 3
  • Course Summary: Fall. Theory and application of discrete mathematics structures and their relationship to computer science. Topics include mathematical logic, sets, relations, functions, permutations, combinatorics, graphs, Boolean algebra, digital logic, recurrence relations, and finite-state automata.
  • Prerequisites: CSCI 23000 and MATH 15300. Recommend that CSCI 24000 & CSCI 34000 are taken concurrently for CS Majors.
  • Semester(s) Offered: Fall, Spring

CSCI 35500 Introduction to Programming Languages

  • Credit Hours: 3
  • Course Summary: Spring. Programming language concepts and different paradigms of programming. Topics include syntax and semantics of high-level languages, parsing methods, subprograms and their implementation, data abstraction, language translation overview including lexical analysis, syntax-directed translation, symbol table handling, code generation, functional programming, logic programming, and object-oriented programming.
  • Prerequisites: CSCI 24000 and CSCI 34000
  • Semester(s) Offered: Fall, Spring

CSCI 36200 Data Structures

  • Credit Hours: 3
  • Course Summary: A study of the design and analysis of data structures and algorithms. Abstract data types: arrays, stacks, queues, lists, trees, and graphs. Algorithms: sorting, searching, and hashing. File structures: organization and access methods.
  • Prerequisites: CSCI 24000 and CSCI 34000.
  • Semester(s) Offered: Fall, Spring

CSCI 36300 Software Design

  • Credit Hours: 3
  • Course Summary: This course is designed to teach students best practices in designing and implementing object-oriented systems of high quality. To accomplish this task, we start with an overview of software design patterns and their role in developing high-quality software. We then begin surveying different design-level software design patterns, such as the Bridge, Strategy, Wrapper Facade, and Visitor software design patterns. Next, we touch on software design patterns for building distributed systems. Finally, we finish the course by surveying software anti-patterns, which are common design mistakes that negatively impact system quality, such as degrading performance as the system scales in size and complexity. Students will have the opportunity to apply learned techniques on several programming projects throughout the semester.
  • Prerequisites: CSCI 24000; CSCI 36200 Recommended
  • Semester(s) Offered: Spring

CSCI 40200 Architecture of Computers

  • Credit Hours: 3
  • Course Summary: Basic logic design. Storage systems. Processor organization: instruction formats, addressing modes, subroutines, hardware and microprogramming implementation. Computer arithmetic, fixed and floating point operations. Properties of I/O devices and their controllers. Interrupt structure. Virtual memory structure, cache memory. Examination of architectures such as microcomputers, minicomputers, and vector and array processors.
  • Prerequisites: CSCI 34000.
  • Semester(s) Offered: Fall, Spring

CSCI 40300 Introduction to Operating Systems

  • Credit Hours: 3
  • Course Summary: Operating system concepts; history, evolution and philosophy of operating systems. Concurrent processes, process coordination and synchronization, CPU scheduling, deadlocks, memory management, virtual memory, secondary storage and file management, device management, security and protection, networking, and distributed and real-time systems.
  • Prerequisites: CSCI 36200 and CSCI 40200.
  • Semester(s) Offered: Fall, Spring

CSCI 41400 Numerical Methods (MATH 41400)

  • Credit Hours: 3
  • Course Summary: Error analysis, solution of nonlinear equations, direct and iterative methods for solving linear systems, approximation of functions, numerical differentiation and integration, and numerical solution of ordinary differential equations. Not open to students with credit in 512.
  • Prerequisites: MATH 26600 and high-level programming course.
  • Semester(s) Offered: Fall

CSCI 43200 Security in Computers

  • Credit Hours: 3
  • Course Summary: An introduction to computing security to include cryptography, identity and authentication, software security, operating system security, trusted operating system design and evaluation, network threats and defenses, security management, legal aspects of security, privacy and ethics.
  • Prerequisites: CSCI 40300
  • Semester(s) Offered: Spring

CSCI 43500 Multimedia Information Systems

  • Credit Hours: 3
  • Course Summary: Multimedia information systems concepts, evolution of multimedia information systems, media and supporting device commonly associated, image databases, techniques for presenting visual information, video databases, multimodels, audio databases, text databases, and multimedia information systems architecture.
  • Prerequisites: CSCI 36200 and MATH 16600
  • Semester(s) Offered: Spring

CSCI 43600 Principles of Computer Networking

  • Credit Hours: 3
  • Course Summary: Survey of underlying principles, fundamental problems, and their solutions in designing computer networks. Laboratory projects include using network systems and network simulation environments. Topics include: motivations, networking topologies, layered open systems protocols, transmission capacity, circuit and packet switching, packet framing and error correction, routing, flow and congestion control, and internetworking.
  • Prerequisites: CSCI 40300
  • Semester(s) Offered: Fall

CSCI 43700 Introduction to Computer Graphics

  • Credit Hours: 3
  • Course Summary: An introduction to 3D programming with emphasis on game engine development using 3D graphics techniques and the standard and platform independent OpenGL library. Topics include lighting, shading, texture mapping, coordinate systems and transformations, collision detection, 3D geometric and physically based modeling and animation.
  • Prerequisites: CSCI 36200 and MATH 35100 or MATH 51100.
  • Semester(s) Offered: Fall

CSCI 43800 Advanced Game Development

  • Credit Hours: 3
  • Course Summary: Advanced game design and development principles and technologies. Students will gain practical experience through extensive game development project. Topics include character animation, special effects, user interface design, networking for computer games, game engine components and variations, game performance considerations, artificial intelligence, and ethics in computer games.
  • Prerequisites: CSCI 43700
  • Semester(s) Offered: Spring

CSCI 44100 Client-Server Database Systems

  • Credit Hours: 3
  • Course Summary: Database system concepts, data models database design, CASE tools, SQL, query processing and query optimization, transaction processing, reliability and security issues, database interactions on the World Wide Web.
  • Prerequisite(s): CSCI 36200
  • Semester(s) Offered: Not Currently Offered

CSCI 44300 Database Systems

  • Credit Hours: 3
  • Course Summary: Relational database systems: architecture, theory, and application. Relational data structure, integrity rules, mathematical description, data manipulation. Standard SQL and its data manipulation language, engineering aspects of database design in industry, introduction to nonrelational database systems.
  • Prerequisites: CSCI 36200
  • Semester(s) Offered: Fall

CSCI 44600 Introduction to Microprocessor Architecture

  • Credit Hours: 3
  • Course Summary: Introduction to programmable logic; elements of microprocessor system design; interrupt structures; interfacing using LSI devices; hardware timers; interactive debugging; physical device I/O programming; vectored and polled service; microprocessor architecture; and self-paced laboratory using A/D converters, D/A converters, etc.
  • Prerequisites: CSCI 40200
  • Semester(s) Offered: Not Currently Offered

CSCI 44800 Biometric Computing

  • Credit Hours: 3
  • Course Summary: Biometrics is capturing and using physiological and behavioral characteristics for personal identification. It is set to become the successor to the PIN. This course will introduce computational methods for the implementation of various biometric technologies including face and voice recognition, fingerprint and iris identification, and DNA matching.
  • Prerequisites: STAT 30100 or STAT 35000 or STAT 41600 or STAT 51100.
  • Semester(s) Offered: Spring(Odd)

CSCI 45000 Principles of Software Engineering

  • Credit Hours: 3
  • Course Summary: Tools and techniques used in software development. Lifecycle concepts applied to program specification, development, and maintenance. Topics include overall design principles in software development; the use of structured programming techniques in writing large programs; formal methods of program verification; and techniques and software tools for program testing, maintenance, and documentation. A primary goal of this course is to provide experience in team development of software.
  • Prerequisites: CSCI 36300 or CSCI 49000 (Software Design)
  • Semester(s) Offered: Fall

CSCI 45200 Object-Oriented Analysis and Design

  • Credit Hours: 3
  • Course Summary:  Introduction to the object-oriented paradigm in software development. Basic concepts: objects, classes, messaging, inheritance, and methodologies. Analysis: defining objects, structures, attributes, and services. Design: transforming the analytic model into the design model. Implementation: comparison of the support features provided by languages such as Smalltalk, C++, Eiffel, and CLOS. A significant design project is required.
  • Prerequisites: CSCI 36200
  • Semester(s) Offered: Not Currently Offered

CSCI 46300 Analysis of Algorithms

  • Credit Hours: 3
  • Course Summary: Techniques for analyzing and comparing algorithms. Average case analysis in sorting and searching; dynamic programming: greedy algorithms, amortized analysis, and applications; matrix algorithms: polynomials, discrete Fourier transforms, and fast Fourier transforms, parallel algorithms: examples in sorting, searching, graphs, and matrices, computational complexity, polynomial complexity classes P, NP.
  • Prerequisites: CSCI 36200
  • Semester(s) Offered: Not Currently Offered

CSCI 47000 Automata and Formal Languages

  • Credit Hours: 3
  • Course Summary: Introduction to formal languages and automata theory: finite automata and regular expressions, context-free grammars and languages, pushdown automata, equivalence of CFGs and pushdown automata, application of pushdown automata in parsing, closure properties, pumping lemmas, decision procedures, Turing machines, computability, undecidability, and a brief survey of the Chomsky hierarchy.
  • Prerequisites: CSCI 36200
  • Semester(s) Offered: Not Currently Offered

CSCI 47500 Scientific Computing I

  • Credit Hours: 3
  • Course Summary: Solving scientific problems on computers. Languages for scientific computing. Software development on workstations: using tools the environment provides, organization of programs. Computer architecture: impact on software and algorithms. Problem formulation: model selection/simplification, relationship to numerical methods. Solution of linear equations: methods and packages. Nonlinear equations and optimization problems.
  • Prerequisites: CSCI 23000 and MATH 35100 P or C: MATH 26200
  • Semester(s) Offered: Not Currently Offered

CSCI 47600 Scientific Computing II

  • Credit Hours: 3
  • Course Summary: Elementary statistical computing: time series analysis, model fitting, robust methods, generation of pseudorandom numbers, and Monte Carlo methods. Interpolation and curve fitting; numerical integration. Solving ordinary differential equations. Use of packaged environments and symbolic computation for scientific purposes.
  • Prerequisites: CSCI 47500
  • Semester(s) Offered: Not Currently Offered

CSCI 47700 High Performance Computing

  • Credit Hours: 3
  • Course Summary: Architecture of supercomputers: pipelined, vector, SIMD, MIMD; implications for algorithm and program design; and vectorization, parallelization, loop restructuring, and nonstandard language features. Splitting computation between supercomputers and workstations; interactive analyses of remote machines' output. Numerical methods for large-scale problems: examples from continuum mechanics, graphical visualization, and statistical computing. A project is required.
  • Prerequisites: CSCI 47600
  • Semester(s) Offered: Not Currently Offered

CSCI 48100 Data Mining

  • Credit Hours: 3
  • Course Summary: An introduction to data warehousing and OLAP technology for data mining, data processing, languages and systems, and descriptive data mining: characterization and comparison, association analysis classification and predication, cluster analysis mining complex types of data, application, and trends in data mining.
  • Prerequisites: CSCI 24000 and STAT 30100 or 35000 or 51100
  • Semester(s) Offered: Spring

CSCI 48400 Theory of Computation

  • Credit Hours: 3
  • Course Summary: Introduction to formal languages and automata theory: finite automata, regular expressions, regular languages, context-free languages and pushdown automata, context sensitive languages, Turing machines, undecidability, P and NP. Design and analysis techniques for: divide-and-conquer algorithms, greedy algorithms, dynamic programming, amortized analysis.
  • Prerequisites: CSCI 36200
  • Semester(s) Offered: Fall, Spring

CSCI 48500 Expert System Design

  • Credit Hours: 3
  • Course Summary: Overview of artificial intelligence; expert system technology; early expert systems: MYCIN, DENDRAL; theoretical foundations, uncertainty measures, knowledge representation, inference engines; reasoning mechanisms: forward and backward chaining; and explanation systems, expert system shells, tools, and intelligent hybrid systems.
  • Prerequisites: CSCI 36200
  • Semester(s) Offered: Not Currently Offered

CSCI 48700 Artificial Intelligence

  • Credit Hours: 3
  • Course Summary: Study of key concepts and applications of artificial intelligence. Problem-solving methods, state space search, heuristic search, knowledge representation: predicate logic, resolution, natural deduction, nonmonotonic reasoning, semantic networks, conceptual dependency, frames, scripts, and statistical reasoning; advanced AI topics in game playing, planning, learning, and connectionist models.
  • Prerequisites: CSCI 36200.
  • Semester(s) Offered: Spring

CSCI 49000 Topics in Computer Sciences for Undergraduates

  • Credit Hours: 1-5
  • Course Summary: Supervised reading and reports in various fields. Open to students only with the consent of the department.
  • Semester(s) Offered: Fall, Spring

CSCI 49500 Explorations in Applied Computing

  • Credit Hours: 3
  • Course Summary: Explorations in Applied Computing is an undergraduate capstone experience. Students will work in teams, advised by faculty and external liaisons, to solve real-world computing problems. This hands-on experience will cultivate technical expertise, utilization of analytical thinking, quantitative reasoning, project management skills, and communication skills.
  • Prerequisites: 
  • Semester(s) Offered: Fall, Spring

CSCI-N 100 Introduction to Computers and Computing

  • Credit Hours: 3
  • Course Summary: No computing experience assumed. How computers work, word processing, spreadsheets, file management, and Internet skills. Emphasis on problem-solving techniques. Lecture and laboratory. Credit given for only one of CSCI N100, CPT 10600, CIT 10600 or BUS-K 201
  • Semester(s) Offered: Fall, Spring, Summer

CSCI-N 199 Introductory Computing Topics topic varies

  • Credit Hours: 1-3
  • Course Summary: Seminars in emerging technologies. May be repeated for credit.
  • Semester(s) Offered: Varies

CSCI-N 200 The Principles of Computer Science

  • Credit Hours: 3
  • Course Summary: Explore the Big Ideas of Computer Science (CS) and Computational Thinking(CT) through hands-on explorations with social networking, gaming, big data, robots, programming and more. Learn about the creativity, usefulness and breadth of Computer Science in a fun way that can enhance any field of study. No pre-requisites, students from all disciplines welcome.
  • Semester(s) Offered: Fall, Spring

CSCI-N 201 Programming Concepts

  • Credit Hours: 3
  • Course Summary: Summary of basic computing topics, problem solving techniques, and their application to computing. Introduction to programming concepts with a focus on language-independent principles, such as algorithm design, debugging strategies, essential control structures, and basic data structure concepts. Lecture and laboratory.
  • Semester(s) Offered: Fall, Spring, Summer

CSCI-N 205 Computing for the Paralegal

  • Credit Hours: 3
  • Course Summary: Summary of basic computing topics, problem solving techniques, and their application to computing. Introduction to software and problem solving methods of special interest to those entering the paralegal profession. Jointly offered with the Continuing Studies Paralegal Program. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 207 Data Analysis Using Spreadsheets

  • Credit Hours: 3
  • Course Summary: Summary of basic computing topics. An introduction to data analysis using spreadsheets. Emphasis on the application of computational problem-solving techniques. Lecture and laboratory.
  • Semester(s) Offered: Fall, Spring, Summer

CSCI-N 211 Introduction to Databases

  • Credit Hours: 3
  • Course Summary: Summary of basic computing topics. Introduction to database design concepts, creation of user forms, development of databases, querying techniques, and building reports. Focus on relational database systems from development and administration point of view. Lecture and laboratory.
  • Semester(s) Offered: Fall, Spring, Summer

CSCI-N 241 Fundamentals of Web Development

  • Credit Hours: 3
  • Course Summary: Introduction to writing content for the Internet and World Wide Web. Emphasis on servers, hand-coded HTML, Cascading Style Sheets, and extending HTML with other Web technologies. Lecture and laboratory.
  • Semester(s) Offered: Fall, Spring, Summer

CSCI-N 299 Survey of Computing Applications topic varies

  • Credit Hours: 1-3
  • Course Summary: An introduction to an emerging technology in the computing field. It will emphasize the various problems technology helps to solve and specific problem-solving strategies. Lecture and laboratory. May be repeated for credit.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 300 Mobile Web Application Development

  • Credit Hours: 3
  • Course Summary: The web revolution continues with the excitement of mobile web applications! Using HTML5, CSS3, Javascript and jQuery Mobile, learn how to build engaging and functional mobile web applications that run across the spectrum of Apple, Android, Blackberry, Windows and other mobile devices. Design mobile web applications that leverage native features such as GPS geolocation, titlebar navigation, table views, and tab bars. Distribute your apps directly through the web or market them through Apple's App Store or Android's Play Store. This beginning course will have you up and running quickly in mobile development, from an initial concept design to a production user experience. Beginning programming or web development experience is recommended.
  • Semester(s) Offered: Varies

CSCI-N 301 Fundamental Computer Science Concepts

  • Credit Hours: 3
  • Course Summary: An introduction to fundamental principles of computer science, including hardware architecture, algorithms, software engineering, and data storage. Lecture and laboratory.
  • Prerequisite: MATH-M 118
  • Semester(s) Offered: Fall, Spring

CSCI-N 305 C Language Programming

  • Credit Hours: 3
  • Course Summary: The basics of computer programming concepts using the C programming language. Emphasis on problem solving and algorithm implementation using a universal subset of the C programming language. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered
  • Course Links: Video Lectures

CSCI-N 307 Introduction to Programming Using Java

  • Credit Hours: 3
  • Course Summary: Introduction to programming concepts focusing on the Java language. Essential algorithm design, basic program control concepts, essential data concepts, debugging, and testing programs. The course will also include object-oriented programming, creating user interfaces, event handling, and multi-platform programming issues. This course is primarily for students in the School of Informatics.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 311 Advanced Database Programming, Oracle

  • Credit Hours: 3
  • Course Summary: Focus on the concepts and skills required for database programming and client server development. Concepts will apply to any modern distributed database management system. Emphasis on developing Oracle SQLPlus scripts, PL/SQL server side programming, and Oracle database architecture. Students with programming experience in ODBC compliant languages will be able to practice connecting such languages to an Oracle database. Lecture and laboratory.
  • Prerequisites: Recommended CSCI-N 211 or equivalent.
  • Semester(s) Offered: Fall, Spring

CSCI-N 317 Computation for Scientific Applications

  • Credit Hours: 3
  • Course Summary: A survey and illustration of popular computational software used in multiple scientific domains to support data processing and scientific research. This class focuses on teaching how to use software to efficiently process data in terms of modeling, simulating, visualizing and data-mining. Fundamental concepts related to scientific computing are introduced briefly. Lecture and Lab.
  • Prerequisite(s): CSCI-N 207 or equivalent.
  • Semester(s) Offered: Fall, Spring

CSCI-N 321 System and Network Administration

  • Credit Hours: 3
  • Course Summary: Fundamental concepts of system administration. Design and administration of network servers and workstations. Focus on basic network concepts, such as user account administration, resource allocation, security issues, and Internet service management. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 331 Visual Basic Programming

  • Credit Hours: 3
  • Course Summary: An introduction to programming with a focus on rapid application development environments, event-driven programming, and programming in the Windows environment. Course will demonstrate how the major application types spreadsheets, databases, text editors are written. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 335 Advanced Programming, Visual Basic

  • Credit Hours: 3
  • Course Summary: Databases and VB, object-oriented design and practice, the component object model, interobject communication, related RAD environments such as VB for Applications and ActiveX using the Windows API, and generating online help. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 341 Introduction to Client-Side Web Programming

  • Credit Hours: 3
  • Course Summary: Introduction to programming with a focus on the client-side programming environment. Programming using languages commonly embedded in Web browsers. Lecture and laboratory.
  • Prerequisites: Recommended CSCI-N 241 or equivalent.
  • Semester(s) Offered: Fall, Spring, Summer

CSCI-N 342 Server-Side Programming for the Web

  • Credit Hours: 3
  • Course Summary: Designing and building applications on a Web server. Focuses on the issues of programming applied to Web servers. Emphasis on relational database concepts, data design, languages used on the server, transaction handling, and integration of data into Web applications.
  • Prerequisites: Recommended CSCI-N 341.
  • Semester(s) Offered: Fall, Spring, Summer

CSCI-N 343 Object-Oriented Programming for the Web

  • Credit Hours: 3
  • Course Summary: Algorithm design and development within the object-oriented paradigm. Students will utilize Java to create Web-based application software with strong user interaction and graphics. In addition, students will utilize Oracle and SQL to learn introductory database design principles, coupling backend database operation to application software. Lecture and laboratory.
  • Prerequisites: CSCI-N 341 or CSCI-N 307.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 345 Advanced Programming, Java

  • Credit Hours: 3
  • Course Summary: A Java language course designed for students familiar with programming and the World Wide Web. Focus on the unique aspects of Java, Applet, and GUI design, object-oriented programming, event-handling, multithreaded applications, animation, and network programming. Lecture and laboratory.
  • Prerequisites: CSCI-N 307 or CSCI-N 331 or CSCI-N 341 or equivalent.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 351 Introduction to Multimedia Programming

  • Credit Hours: 3
  • Course Summary: An integration of computing concepts and multimedia development tools. An introduction to the science behind multimedia compression algorithms and digital/audio conversion. Use of authoring tools to create compositions of images, sounds, and video. Special emphasis given to using the Web as a multimedia presentation environment. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 355 Introduction to Virtual Reality

  • Credit Hours: 3
  • Course Summary: Explore concepts of 3D imaging and design including primitive shapes, transformations, extrusions, face sets, texture mapping, shading, and scripting. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 361 Fundamentals of Software Project Management

  • Credit Hours: 3
  • Course Summary: Tools and techniques used to manage software projects to successful completion. Problem-solving focus to learn specification development and management, program success metrics, UML modeling techniques, code design and review, principles, testing procedures, usability measures, release and revision processes, and project archival. Lecture and laboratory.
  • Prerequisites: Recommended CSCI-N 300 or equivalent level programming class
  • Semester(s) Offered: Fall, Spring, Summer

CSCI-N 399 Topics in Computing topic varies

  • Credit Hours: 1-3
  • Course Summary: An investigation of an emerging language or topic in computing. May be repeated for credit.
  • Prerequisites: CSCI-N 200 level course or equivalent.
  • Semester(s) Offered: Varies

CSCI-N 410 Mobile Computing Application Development

  • Credit Hours: 3
  • Course Summary: Focus of this course is to give programmers information they need to develop new applications or move existing applications to handheld devices and other resource-constrained hardware. All programming is done via Visual Basic.NET or C#
  • Semester(s) Offered: Varies

CSCI-N 431 E-Commerce with ASP.NET

  • Credit Hours: 3
  • Course Summary: Topics include basic Web controls, form validation, connecting to an Enterprise-level database, SSL, and sending e-mail within an ASP.NET Web page. A significant software development final project creating a functional Web store is featured. Lecture and laboratory.
  • Semester(s) Offered: Fall, Spring

CSCI-N 435 Data Management Best Practices with ADO.NET

  • Credit Hours: 3
  • Course Summary: A study of managing data in the .NET environment. Focus on strategies to efficiently manage data for large-scale projects. Topics include XML, DataSets, SQL, and error management. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 443 XML Programming

  • Credit Hours: 3
  • Course Summary:
  • Fundamentals of XML programming language. After mastering fundamental XML scripting syntax, the course focuses on narrative-centric and data-centric XML applications. Narrative content includes CSS, DTD and XSLT, and X-path, -link, and -pointer tools; data-centric content includes the DOM, Schemas, and ADO/ASP. A required masterpiece project summarizes course competencies. Lecture and laboratory.
  • Prerequisites: CSCI-N 241 and CSCI-N 300 level programming course.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 451 Web Game Development

  • Credit Hours: 3
  • Course Summary: Study of basic game development principles with a focus on client-side Web delivers. Topics to include creation of sprite objects, user interaction concepts, basic intelligence concepts, game data structures, and basic game physics. Lecture and laboratory.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 461 Software Engineering for Applied Computer Science

  • Credit Hours: 3
  • Course Summary: This is a survey course covering software engineering concepts, tools, techniques, and methodologies. The topics covered include software engineering, software process and its difficulties, software lifecycle models, project planning including cost estimation, design methodologies including structured design, data structure-oriented design, object-oriented design, and software testing. This course is intended for nonmajors and credit will not be awarded to computer science majors.
  • Prerequisites: CSCI-N 361 or consent of the instructor.
  • Semester(s) Offered: Not Currently Offered

CSCI-N485 Capstone Project in Applied Computing

  • Credit Hours: 3
  • Course Summary: This course provides students with a mechanism for producing and integrating technical achievement meritorious of program culmination. The project will demonstrate subject matter mastery within project development guidelines and reflect both a breadth and depth of technically focused problem-solving skills.
  • Prerequisites: CSCI-N 301 and CSCI-N 341.
  • Semester(s) Offered: Not Currently Offered

CSCI-N 499 Topics in Applied Computing

  • Credit Hours: 1-3
  • Course Summary: An investigation and examination of an emerging discipline in applied computer science.
  • Prerequisites: CSCI-N 300 level course or equivalent.
  • Semester(s) Offered: Varies

CSCI 12000 Windows on Computer Science

  • Credit Hours: 1
  • Course Summary: First year seminar for CS Majors in University College & School of Science,
  • Semester(s) Offered: Fall

Winning the Stronewall Award made it concrete for me that what I was doing the LGBTQ Alliance vice president made a difference in a community that has always supported me.

Jennifer Emery Computer Science, Undergraduate