2004-2005 UNIVERSITY CATALOGUEC S - Computer Science |
|
100
Computer Information Technologies
3 crs (2.5-1). F, Sp. 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. |
|
163
Introduction to Programming in C++
3 crs (3-0). F, Sp. P: Three years of high school, college preparatory MATH GE-IB No credit if taken after or concurrently with CS 265 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. P: MATH 112 or placement into MATH 114 or MATH 215 GE-IB 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. |
|
185
Foundations of Computer Science
4 crs (3-2). F, Sp. P: MATH 110 or concurrent enrollment, or placement in MATH 112, 114, or 215 Not for GE Fundamental principles and practices of the discipline. Discussion of computer organization and architecture, operating systems concepts, database systems and SQL, HTML, JavaScript, and JSPs. Lectures coordinated with laboratory experiences. |
|
245
Fundamentals of Object-Oriented Programming
4 crs (3-2). F, Sp. P: MATH 112 or concurrent enrollment, or placement in MATH 114 or 215 Not for GE Credit cannot be earned in both CS 245 and CS 319 Introduction to object-oriented programming using a Java development environment. Coverage includes classes, objects, methods, and inheritance with focus on object-oriented software design and component-based programming. Advanced topics such as threads, event-driven programming, and graphical user interfaces. |
|
255
Computer Algorithms
4 crs (3-2). F, Sp. P: CS 185; CS 245 or instructor consent based on prior programming experience; MATH 114 or concurrent enrollment, or placement in MATH 215 Not for GE Discussion of algorithm design and problem-solving methods. Emphasis on object-oriented software design including abstraction, encapsulation, interfaces, and software reuse is studied using Java. Software is designed and implemented using a frameworks-based approach to general problem solving. Algorithmic techniques include backtracking, branch/bound, divide and conquer, greedy methods, and dynamic programming. |
|
265
Data Structures
4 crs (3-2). F, Sp. P: CS 255; MATH 314 or concurrent enrollment Not for GE No credit if taken after CS 275 Implementation of abstract data types and their use in problem solving. Object-oriented techniques for implementing ADTs using a C++ development environment. Topics include lists, stacks, queues, trees, and graphs. Discussion of efficient searching/sorting. |
|
278
Digital System Design
3 crs (3-0). Sp. P: CS 185 and either CS 163 or CS 245, or consent of instructor Not for GE 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. |
|
288
UNIX Systems Programming
3 crs (3-0). F. P: Programming experience in C or C++ Not for GE 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, standard editors (Vi, Emacs), and shell scripts. Includes extensive Perl script programming. |
|
291
Special Topics
1-3 crs. V. Not for GE May be repeated when topic differs See current Class Schedule Bulletin. |
|
318
Fundamentals of Web Programming
3 crs (2-2). F, Sp. GE-IB No credit toward computer science majors Basic concepts, standards, and technologies of client side Web programming. Hypertext Markup Language (HTML), Cascading Style Sheets (CSS), and the Java Script Programming Environment for Web development. |
|
319
Fundamentals of Java Programming
3 crs (3-0). F, Sp. GE-IB Credit cannot be earned in both CS 245 and CS 319 No credit toward computer science majors Introduction to Java applets including native types, operators, objects, classes, and packages. Java development environments. Inheritance, interfaces, exceptions. |
|
320
Web Database Design and Implementation
3 crs (3-0). F. P: CS 319 Not for GE Credit cannot be earned in both CS 320 and CS 365 No credit toward computer science majors Introduction to databases for Web applications. Components, design considerations, and implementation of relational databases. Comparison of client and server side database connections. Database connectivity via JDBC. |
|
321
Web Design and Development
3 crs (3-0). Sp. P: CS 319 SL-Full; Not for GE Credit cannot be earned in both CS 321 and CS 355 No credit toward computer science majors Design and analysis techniques appropriate for Web development. Preparation of user specification and design documents. Working with clients, end-users, and information processing professionals. Testing, maintenance, and quality assurance. Students complete a comprehensive application. Web server setup and administration. |
|
330
Programming Languages
3 crs (3-0). Sp. P: CS 265 Not for GE Study fundamental building blocks of modern programming and diverse programming paradigms including functional, imperative, object-oriented, and logical programming. Emphasis on teaching students how to learn and exploit new programming languages. |
|
352
Computer Organization and Design
3 crs (3-0). F. P: CS 265 Not for GE No credit if taken after CS 252 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). F. P: CS 265 SL-Full; Not for GE 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). Sp. P: CS 352 Not for GE 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. |
|
365
Database Systems
3 crs (3-0). Sp. P: CS 355 Not for GE Credit cannot be earned in both CS 320 and CS 365 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. |
|
370
Computer Security
3 crs (3-0). Sp. P: CS 265 Not for GE 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. |
|
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). P: CS 330 Not for GE An introduction to artificial intelligence (AI) and knowledge-based systems. Two major facets of AI are addressed: the internal structure and organization of knowledge-based systems and the development and use of knowledge-based technology. |
|
450
Theory of Computation
3 crs (3-0). F. P: CS 265 Not for GE 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). P: CS 355 or concurrent registration Not for GE 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). F. P: CS 352 Not for GE Fundamental concepts of data transmission, network architecture, data security, error control, routing, switching, and congestion control. Study of network protocols including local area networks (IEEE 802.x Suite), TCP/IP, ATM, WAP, and Gigabit networks. |
|
482
Research in Computer Science I
3 crs (3-0). P: CS 365 Not for GE; CP Limited to computer science majors or 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. P: CS 365 Not for GE; CP 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). P: CS 485 SL-Optional; Not for GE; CP 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 - additional restrictions may apply See current Class Schedule Bulletin. 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). P: CS 482 Not for GE; CP Limited to computer science majors or 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. P: CS 355 Not for GE An in-depth investigation into open issues within computer science and/or its application to other disciplines. |
|
495
Computer Science Seminar
1 cr (1-0). F. Not for GE Course may be taken for a maximum of 6 credits Department permission required Examination of selected topics in the area of computer science through seminars and independent investigation. |
|
498
Computer Science Internship
1-6 crs. SL-Optional; Not for GE; CP Course may be taken for a maximum of 6 credits Special course fee required 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 |