May 07, 2024  
2010-2012 Undergraduate Catalog 
    
2010-2012 Undergraduate Catalog ARCHIVED CATALOG: CONTENT MAY NOT BE CURRENT. USE THE DROP DOWN ABOVE TO ACCESS THE CURRENT CATALOG.

Courses


 
  
  • CS 115 - Introduction to Computers


    Computer literacy. History of computing, description of basic hardware components, use of application software, introduction to Internet resources, uses of computers in society, and the impact of computerization on society.

    Credits 3
    Prerequisites   or two years of high school mathematics.
  
  • CS 117 - Programming for Scientists and Engineers


    Structured approach to programming and problem solving in FORTRAN. Emphasis placed on techniques of good programming style and on solving numerical problems encountered in science and engineering. Includes use of standard library routines.

    Credits 3
    Prerequisites  .
  
  • CS 135 - Computer Science I


    Problem-solving methods and algorithm development in a high-level programming language. Program design, coding, debugging, and documentation using techniques of good programming style. Program development in a powerful operating environment.

    Credits 3
    Prerequisites   or  .
    Lab/Lecture/Studio Hours Three hours lecture and one hour lab.
  
  • CS 140 - Computing Languages


    Use of a single programming language for problem formulation and solution. Language varies each semester. Typical languages include Java, LISP, Prolog, Scheme, etc.

    Credits (1-3)
    Prerequisites Ability to program in a high-level language. May be repeated if language is different.
  
  • CS 202 - Computer Science II


    Data structures and algorithms for manipulating linked lists. String and file processing. Recursion. Software engineering, structured programming and testing, especially larger programs.

    Credits 3
    Prerequisites  .
  
  • CS 218 - Introduction to Systems Programming


    Algorithms from systems programming including conversion, buffering, device drivers, assemblers and loaders. Use of system services, macros, and linkage conventions. Laboratory exercises programmed in assembly language.

    Credits 3
    Prerequisites   and (  or  ).
  
  • CS 219 - Computer Organization


    Basic organization of digital computers, including I/O units, arithmetic logic units, control units, and memory organization. Number and character representations. Instruction sets and addressing. Microprogramming.

    Credits 3
    Prerequisites   and  .
  
  • CS 270 - Introduction to Internet & World Wide Web


    Introduction to Internet and World Wide Web tools and resources, including Web browsers, robots and search engines, agents, multimedia authorizing environments, electronic publishing, virtual reality, anonymizing and the use of relative identities, Internet security, digital watermarking, and Web censorship. Programming skills covered in corequisite lab. Intended for non-CS majors.

    Credits 2
    Corequisites  .
    Prerequisites   or equivalent.
  
  • CS 270L - Introduction to Internet & World Wide Web - Lab


    Acquaints students with the underlying theory behind, and practical experience in, the use of Interactive Internet and World Wide Web resources in such areas as education, scholarship and research, interpersonal and group communication, virtual communities, electronic publishing, and electronic commerce.

    Credits 1
    Corequisites  .
    Prerequisites   or equivalent.
  
  • CS 301 - Social Implications of Computer Technology


    In-depth examination of moral and ethical issues created by advancing computer technology. Review of ethical theories and examination of issues in malfunction liability, privacy, power, ownership and intellectual property. Discussion of social trends and their possible effects. Extensive reading, classroom discussion, and class presentations required.

    Credits 1
    Prerequisites  ,  .
  
  • CS 302 - Data Structures


    Introduction to sequential and linked structures. File access including sequential, indexed sequential and other file organizations. Internal structures including stacks, queues, trees, and graphs. Algorithms for implementing and manipulating structured objects. Big-O-notation.

    Credits 3
    Prerequisites   and  .
  
  • CS 326 - Programming Languages, Concepts and Implementation


    Design, evaluation and implementation of programming languages. Includes data types and data abstraction, sequence control and procedural abstraction, parameter passing techniques, scope rules, referencing environments and run-time storage management. Study and evaluation of a number of current programming languages.

    Credits 3
    Prerequisites   and either   or ECG 300.
  
  • CS 341 - Internet Programming


    Fundamentals of Web page design, use of environment and SSI variables, GGI-Bin programming concepts with both scripting languages and interpreted and compiled languages, creation of advanced form applications, design of search/index utilities Web databases, design and implementation of interactive Web sites.

    Credits 2
    Corequisites  .
    Prerequisites   and  .
  
  • CS 341L - Internet Programming Lab


    Helps develop practical skills and applies industry-wide standards and practices for activities such as Web design and layout, electronic publishing, network communications, cybermedia authoring systems, animations, virtual reality, and the development of executable content.

    Credits 1
    Corequisites  .
    Prerequisites   or equivalent.
  
  • CS 351 - Introduction to Multimedia


    Nature and development of digital multimedia, including content selection, scripting, editing, transforming, and producing multimedia material. Basic multimedia development environments including analog and digital image and video capturing, motion development tools, scripting environments, and meta-level directing software. Semester project involves creation of an entire multimedia cd.

    Credits 2
    Corequisites  .
    Prerequisites   or equivalent.
  
  • CS 351L - Introduction to Multimedia Lab


    Develops practical skills and applies industry-wide standards and practices for the creation of interactive multimedia, including, but not limited to, use of such development tools as screen capture utilities, analog and digital video capture environments, motion development programs, and scripting and directing programs.

    Credits 1
    Corequisites  .
    Prerequisites   or equivalent.
  
  • CS 370 - Operating Systems


    Operating systems organization, sharing and allocation of system resources, protection mechanisms, and integration of system components.

    Credits 3
    Prerequisites   and either   or ECG 300.
  
  • CS 417 - Introduction to Computer Simulation


    Simulation as a tool for the investigation of random phenomena. Emphasis on discrete simulation. Preparation of input for simulation and analysis of results. Use of SIMSCRIPT for discrete simulation. Comparison of discrete and continuous simulation. Simulation problems in several disciplines examined in detail.

    Credits 3
    Prerequisites   and  .
  
  • CS 420 - Human-Computer Interaction


    Overview of human-computer interaction principles, guidelines, methods, and tools. User research, low-fidelity prototyping, participatory design, usability evaluation, visual design, usability principles, and affordances. Graphical user interface implementation, including design patterns, event handling, widget toolkits, languages, and development environments.

    Credits 3
    Prerequisites  .
  
  • CS 441 - Advanced Internet Programming


    Advanced Internet programming design and applications including client/server technologies and environment and software, client/server network operating systems, client/server database management systems, data warehousing environments, data mining, basic networking models and protocols, CASE tools, Groupware, Middleware, Internet security, privacy considerations.

    Credits 2
    Corequisites  .
    Prerequisites   and  .
  
  • CS 441L - Advanced Internet Programming Lab


    Helps student develop practical skills and learn to apply industry-wide standards and practices for advanced Internet and Internet 2 applications.

    Credits 1
    Corequisites  .
    Prerequisites   and  .
  
  • CS 445 - Internet Security


    Internet security theory and practice, advanced IP concepts, the concepts of stimulus and response in the context of securing a network, network packet and traffic analysis, internet protocol (IP) vulnerabilities, packet filtering, intrusion detection, internet exploits, exploit signatures, internet forensics, network security investigation.

    Credits 3
    Prerequisites  .
  
  • CS 448 - Computer Security


    Overview of computer security, threats, vulnerabilities and controls. Physical security, computer security policies and implementation plans, and computer forensics including penetration testing and investigation. Management issues. Legal, privacy and ethical issues.

    Credits 3
    Prerequisites  .
  
  • CS 451 - Multimedia Systems Design


    Theory and practice of multimedia system design overview. High-level topics include multimedia content and formats, underlying technologies, digital cinematography, scripting, storyboarding, CD-ROM production and online publication, porting multimedia to the Web. Emphasis on the design process and the seamless integration of content in an interactive environment.

    Credits 3
    Corequisites  .
    Prerequisites  .
  
  • CS 451L - Multimedia Systems Design Laboratory


    Helps student develop practical skills and learn to apply industry-wide standards and practices for the design of multimedia systems.

    Credits 1
    Corequisites  .
    Prerequisites  .
  
  • CS 456 - Automata and Formal Languages


    Regular expressions. Regular, context-free, and unrestricted grammars. Finite and pushdown autoamata. Turing machines and the halting problem; introduction to decidability.

    Credits 3
    Prerequisites   and  .
  
  • CS 457 - Database Management Systems


    Concepts and structures necessary for design and implementation of a database management system. Survey of current database management systems and use of a DBMS.

    Credits 3
    Prerequisites   and  .
  
  • CS 458 - Introduction to Data Mining


    Introduction to basic concepts in data mining. Topics include association-rule mining, information extraction, web mining, categorization, and clustering.

    Credits 3
    Prerequisites  ,  
  
  • CS 460 - Compiler Construction


    Current methods in the design and implementation of compilers. Construction of the components of an actual compiler as a term project.

    Credits 3
    Prerequisites   and  .
  
  • CS 463 - Computer Architecture


    Introduction to computer architecture. Topics include basic computer organization concepts; history and taxonomy of computer architectures; language and software influences on architecture; instruction set design; stack, array, data flow, and database machines; multiprocessor and network architectures; and fault tolerant designs.

    Credits 3
    Prerequisites  .
  
  • CS 465 - Computer Networks I


    An introduction to the design and implementation of computer communication networks, their protocols and applications. It covers the technologies and standards in data transmission, telecommunication networks, network architectures, networking hardware, wireless networks, and the basis of the Internet including UDP and TCP as well as a number of application protocols.

    Credits 3
    Prerequisites  .
  
  • CS 466 - Computer Networks II


    Explores advanced topics in computer networks, the protocols, algorithms, hardware, and performance issues, especially in TCP/IP networks. Details of IP routing algorithms, quality of service, protocol implementation issues, router architecture and types, various TCP versions and their performance, the related telecommunication networks, and wireless technologies are discussed.

    Credits 3
    Prerequisites  .
  
  • CS 469 - Introduction to Digital Image Processing


    Background and basics of digital image processing. Topics include: the human visual system, image representation, sampling, image mathematics, and geometry, image enhancement, smoothing and sharpening, the fast Fourier transform, and a survey of image restoration methods.

    Credits 3
    Prerequisites  ,    or  .
  
  • CS 470 - Networks and Distributed Systems


    Explores protocols and experiments with creating and implementing new protocols. In addition, students will be introduced to concepts such as deadlocks in networks/distributed applications, communication in distributed systems (among other RPC/RMI and the client server model in more detail), synchronization, reliability, transparency, and atomicity/transaction semantics.

    Credits 3
    Prerequisites  .
  
  • CS 471 - Program Derivation


    Introduction to the formal derivation of computer programs from program specifications. Review of the logical and notational prerequisites needed for formal derivation. Guarded commands and the predicate transformer WP. Developing loops from invariants. Program development via sequence of refinements.

    Credits 3
    Prerequisites   and  .
  
  • CS 472 - Software Product Design and Development I


    Current techniques in software design presented with emphasis on architecture first development. Introduction to the processes involved in development. Practice architectural design through a series of homework problems. Students work in teams to prepare the architecture for a software product.

    Credits 3
    Prerequisites   and  .
  
  • CS 473 - Software Product Design and Development II


    Synthesis (term project) course to involve students, working in teams, in all of the activities necessary to define, model, implement, test, document, and deliver a program product. Students practice Object-Oriented and Component Based development and utilize UML and CASE tools to model the product and document the process.

    Credits 3
    Prerequisites  .
  
  • CS 474 - Decision Environments for Software Product Development


    Term project course to involve students, working in teams, with all of the activities and tools necessary to measure progress and monitor the development of a software product. Students utilize CASE tools for planning, for requirements management, for configuration management, for change management, and for product and process measurement for a product development project.

    Credits 3
    Prerequisites  .
  
  • CS 477 - Analysis of Algorithms


    Analysis of the time and space complexity of algorithms. Techniques for efficient algorithm design and effect of structure choice on efficiency. Fast algorithms for problems such as set, graph and matrix manipulations, pattern matching, sorting, and storage organization. Exponential time problems and introduction to NP-completeness.

    Credits 3
    Prerequisites   and  .
  
  • CS 480 - Computer Graphics


    Graphics hardware, software and applications. Data structures for graphics, graphics languages, computer-aided design, and three-dimensional graphics.

    Credits 3
    Prerequisites   and  .
  
  • CS 482 - Artificial Intelligence


    Survey of current artificial intelligence technologies: game playing, theorem-proving, natural language processing, pattern recognition, and heuristic programming.

    Credits 3
    Prerequisites   and  .
  
  • CS 489 - Advanced Computer Science Topics


    Undergraduate-level course in advanced topics of computer science, depending upon the interest of faculty and students.

    Credits 3
    Prerequisites Consent of instructor.
    May be repeated to a maximum of six credits.
  
  • CS 490 - Independent Study


    Library research and reports on topics of computer science interest.

    Credits (1-3)
    Prerequisites Consent of instructor.
    May be repeated to a maximum of six credits.
  
  • CS 494 - Internship in Computer Science


    A summer internship in an approved, computer science related position. This course will be offered only in the summer and not during the fall or spring semesters. Students will apply computer science concepts in a work-related setting. A final report is required.

    Credits (1-3)
    Prerequisites   and prior approval by the school and employer.
    Notes A final report is required.