2008-2009 UNIVERSITY CATALOGUEFALLC S - Computer Science |
|
100
Computer Information Technologies
3 crs (2.5-1). GE-IB No credit toward computer science major or minor. Not applicable for satisfying B.S.-GE-IB requirement in College of Arts and Sciences. Development and application of appropriate processes and tools to access, organize, evaluate, and communicate information using spreadsheets (MS Excel), word processors (MS Word), databases (MS Access), presentation software (MS PowerPoint), and web-based/internet utilities. Appropriate for students seeking a broader or deeper preparation for efficiently using computer information technologies. |
|
145
Introduction to Object-Oriented Programming
3 crs (2-2). F, Sp. Not for GE P: MATH 109 or concurrent enrollment, or placement into MATH 111, 112, 113, 114, or 215 A general introduction to computer data representation, programming, and the design of computer software. Object- oriented design and implementation techniques and concepts are introduced. |
|
146
The Big Picture in Computer Science
2 crs (2-0). F, Sp. Not for GE P: Limited to computer science majors Must be taken by students during their first semester in the computer science major. Explores how a liberal education relates to computer science, the impacts of computers on society, and ethical expectations of the discipline. Provides an overview of computational thinking and technical topics. |
|
163
Introduction to Programming in C++
3 crs (3-0). F, Sp. GE-IB P: Three years of high school, college preparatory MATH No credit if taken after or concurrently with CS 145 A general introduction to the design of computer software. Object-oriented design and implementation techniques including abstraction, encapsulation, and inheritance are emphasized. Applications chosen from mathematics, science, and business are used to demonstrate and motivate understanding of object-oriented programming. |
|
170
Computing for the Sciences and Mathematics
3 crs (3-0). F, Sp. GE-V P: MATH 112, or 113, or placement into MATH 114 or 215 Aspects of computation that are particularly relevant to scientific computation. Discussion of numeric processing, symbolic processing, data management, data representation, and scientific visualization. Students design and implement computer programs using Maple, a language specifically tailored to the sciences. |
|
245
Advanced Programming and Data Structures
4 crs (3-2). Sp. Not for GE P: CS 145; MATH 112 or concurrent enrollment, or placement into MATH 114 or 215 Advanced object-oriented programming techniques including OO design, distributed and concurrent computation, GUI development, and testing. Implementation and use of data structures including lists, stacks, queues, trees, and graphs. |
|
255
Algorithms and Discrete Structures
4 crs (3-2). F, Sp. Not for GE P: CS 245; MATH 114 or concurrent enrollment, or placement into MATH 215 Discussion of algorithm design, problem-solving methods, and application of discrete mathematics to computing. Algorithm topics include divide-and-conquer, dynamic programming, and backtracking. Discrete structure topics include logic, proof, functions, graphs, and complexity theory. |
|
268
Web-Centric Programming
4 crs (3-2). F, Sp. Not for GE P: CS 245 Introduction to programming Web-based applications. Multiple modern Web technologies are covered in depth and compared. Web frameworks, server configurations, and security issues are discussed. |
|
278
Digital System Design
4 crs (3-2). Sp. Not for GE P: Either CS 163 or CS 145, or consent of instructor No credit if taken after Special Topics course of the same title. Logic components, Boolean algebra and algorithmic logic simplification, combinational logic analysis and synthesis, synchronous and asynchronous sequential logic analysis and synthesis, finite state machine design, programmable logic and FPGAs, Verilog programming for synthesis. |
|
291
Special Topics
1-3 crs. V. Not for GE May be repeated when topic differs See current Class Schedule An examination of current topical material of special interest to students and faculty. |
|
318
Fundamentals of Web Page Design
3 crs (2-2). F, Sp. GE-IB Basic concepts, coding standards, accessibility guidelines, and technologies of client-side Web page design. Hypertext Markup Language (HTML), Cascading Style Sheets (CSS), and techniques for controlling page layout, animations, and user interactions. |
|
319
Introduction to Web Programming
3 crs (3-0). F, Sp. GE-IB No credit toward computer science majors Introduction to client and server side Web programming. Includes basic programming concepts, user input validation, dynamic Web pages, and data retrieval and display. |
|
320
Web Database Design and Implementation
3 crs (3-0). F. Not for GE P: CS 318 or concurrent enrollment; CS 319 or concurrent enrollment Credit cannot be earned in both CS 320 and CS 345 No credit toward computer science majors Introduction to databases for Web applications. Architecture, design considerations, and implementation of relational database systems. Database application development using JDBC. |
|
321
Web Design and Development
3 crs (3-0). Sp. SL-Full; Not for GE P: CS 320 or 345 Credit cannot be earned in both CS 321 and CS 355 No credit toward computer science majors Analysis, design, and implementation techniques for Web site development. Includes preparation of design documents development, deployment, and testing. Students complete and deploy a comprehensive Web site working with clients and end-users. |
|
330
Programming Languages
3 crs (3-0). Sp. Not for GE P: CS 255 Study building blocks of modern programming and programming paradigms including functional, imperative, object-oriented, and logical. Emphasis on teaching students how to learn and new programming languages. In- depth study of C++ and memory management techniques. |
|
345
Database Systems
3 crs (3-0). F. (Formerly C S 365) Not for GE P: CS 255 Credit cannot be earned in both CS 320 and CS 345 A study of fundamental database concepts including: SQL, database design and normalization, transactions and concurrency, embedded SQL, and stored procedures. Particular attention is paid to modern issues of networks and distributed database systems. |
|
352
Computer Organization and Design
3 crs (3-0). F. Not for GE P: CS 255 A study of hardware organization and architecture including performance metrics, machine data and instruction representations, computer arithmetic, assembly language programming, ALU design, CPU design and control, micro-programming, pipelining, cache memory systems, and I/O peripherals. |
|
355
Software Engineering I
3 crs (3-0). Sp. SL-Full; Not for GE P: CS 345 Credit cannot be earned in both CS 321 and CS 355 A hands-on experience in software engineering with key aspects of the software development life cycle. Focus is on the application of a high-level development environment to the fulfillment of an object-oriented software design specification. An introduction to modern design patterns. |
|
362
Operating Systems and Distributed Computation
3 crs (3-0). F. Not for GE P: CS 352 A study of modern operating system concepts, process/thread structure, process management, scheduling, synchronization. Memory management, virtual memory, caching. Storage and I/O device management. Distributed operating systems and distributed computation. |
|
370
Computer Security
3 crs (3-0). Sp. Not for GE P: CS 255 Study of system, network, database, application and web security. Practical experience with tools for information gathering, vulnerability analysis, system hardening and intrusion detection as used for defending computer systems, culminating in a cyberwar exercise. |
|
388
UNIX Systems Programming
3 crs (3-0). F. (Formerly C S 288) Not for GE P: Programming experience in C or C++ No credit if taken after CS 291 with the same title In-depth coverage of the UNIX command shell, file manipulation, process control, file system utilities, mail, pipes and filters, I/O redirection, process management, UNIX editors, scripting language, and shell scripting. |
|
396
Junior Seminar
1 cr (1-0). F. Not for GE P: Limited to computer science majors Minimum junior standing Field trip(s) required Examination of selected topics in computer science through invited business speakers, traditional lecture, and independent investigation. |
|
399
Independent Study - Juniors
1-3 crs. Not for GE Minimum junior standing May be repeated - additional restrictions may apply Get form from department office |
|
420
Artificial Intelligence
3 crs (3-0). Not for GE P: CS 255 Investigation of the theories and techniques of knowledge representation and automated reasoning as the foundation of artificial intelligence. Includes the comparative analysis of established theories and the synthesis of automated problem-solving behavior. |
|
450
Theory of Computation
3 crs (3-0). F. Not for GE P: CS 255 A study of finite automata and regular languages, pushdown automata and context-free languages, Turing machines and recursively enumerable sets, linear-bounded automata and context-sensitive languages, computability and the halting problem, undecidable problems, and the Chomsky hierarchy. |
|
455
Computer Graphics
3 crs (3-0). Not for GE P: CS 255 A study of 3D modeling, rendering, and animation. Modeling includes constructive solids geometry, NURBS, and scene graphs. Rendering includes lighting models, raytracing, radiosity, mapping, and real-time issues. Animation includes keyframing, kinematics, dynamics, collision detection, and AI. |
|
462
Computer Networks
3 crs (3-0). Sp. Not for GE P: CS 352 Fundamental concepts of data transmission, network architecture, data security, error control, routing, switching, and congestion control. Study of network protocols: IEEE 802.x, TCP/IP, ATM, Wireless Internet and Mobile Computing. |
|
482
Research in Computer Science I
3 crs (3-0). Not for GE; CP P: CS 355 P: Limited to computer science majors and minors Minimum resident and total GPA of 3.00 Instructor approval required An introduction to structured research within computer science. Students develop a complete research proposal that poses an important open question in computer science and presents a well-developed strategy for its substantive investigation. |
|
485
Software Engineering II
3 crs (3-0). F. Not for GE; CP P: CS 355 An in-depth study of the design and analysis phases of software development. Particular attention is given to the role of patterns in software development, including design patterns, analysis patterns, and architectural patterns. Students are given hands-on experience with the application of such patterns to particular application domains. |
|
490
Computer Science Practicum
3 crs (3-0). SL-Optional; Not for GE; CP P: CS 485 S/U only grade basis Cannot be taken for credit toward fulfilling the major if the student has completed three or more credits in CS 498 (Formerly CS 405) A reflective examination of the principles and practices inherent to the study of computer science, including completion of a comprehensive project. |
|
491
Special Topics
1-3 crs. V. Not for GE May be repeated when topic differs See current Class Schedule An examination of current topical material of special interest to students and faculty. Topics that have been offered include: Analysis of Algorithms, Cryptography and Data Security, Computer Animation, Fuzzy Logic, Advanced Internet Applications, Data Mining, and Computational Biology. |
|
492
Research in Computer Science II
3 crs (3-0). Not for GE; CP P: CS 482 P: Limited to computer science majors and minors Minimum resident and total GPA of 3.00 Instructor approval required Students carry out a research investigation based on a structured research proposal. The investigation includes a detailed analysis of existing literature in the area of investigation and the preparation of a research dissemination article. |
|
493
Collaborative Research
1-3 crs. Not for GE P: CS 355 An in-depth investigation into open issues within computer science and/or its application to other disciplines. |
|
498
Computer Science Internship
1-6 crs. SL-Optional; Not for GE; CP Full-time equivalent Course may be taken for a maximum of 6 credits A maximum of three credits can be counted as a CS elective Practical work experience that extends knowledge gained in prior courses. |
|
499
Independent Study - Seniors
1-3 crs. Not for GE Minimum senior standing May be repeated - additional restrictions may apply Get form from department office |
|
793
Special Topics in Computer Science
1-3 crs. May be repeated - additional restrictions may apply Permits groups of graduate students to study topics in the field of computer science. |
|
797
Independent Study
1-3 crs. May be repeated - additional restrictions may apply Get form from department office |
|
Comments:
Registrar |