COMPUTER SCIENCE Undergraduate Courses (2006-7)
CS 102 Cr. 3-- recent
syllabus An introduction to word processing, spreadsheets, slide
presentations, databases, and the Internet with special emphasis on scientific
computations and technical reports and presentations. Four hours per week. Not open to
students who have taken Computer Science 100 or 201, or Information Technology 100.
CS 120 Cr. 4--
recent syllabus Broad but substantive overview of computer science, designed to provide students with awareness and deeper understanding of the field’s many aspects. Topics include fundamentals of computer architecture, operating systems, and problem-solving, as well as social and ethics issues. Intended primarily as a first course for computer science majors, although may be useful as an elective in any major. Four hours per week. Pre-req: MA050.
CS 175-176 Cr. 4-4 -- recent
176 syllabus Introduction to the basic concepts of program
development for computer science majors; problem solving methods and algorithm
development; basic data structures and abstract data types; language syntax, style, and
documentation; coding and testing of programs in a structured procedural language. Four
hours per week.
A thorough overview of the syntax of an algorithmic
language and stress on the concepts of structured programming. Four hours per week.
Number representations and operations; processor
control; fundamentals of assembly language programming, addressing modes, stacks and
procedures; instruction sets; microcode; computer organization, memory, CPU, I/O interfaces
and devices. Three hours per week.
An intensive study of a particular subject or problem in
computer science to be announced prior to registration. The course may be conducted on
either a lecture-discussion or a seminar basis. Three or four hours per week.
CS 303 Cr. 3 -- recent
syllabus Provides
introduction to computer-networking concepts, technologies and services,
including basic communications theory, analog and digital devices, Public
Switched Telephone Network, data networks, LANs, wireless services, data
protocols, the Internet, multi-media and B-ISDN.
CS 305 Cr. 4 Introduction to the design and analysis of intermediate
computer algorithms such as sorting, searching, pattern matching, and tree and graph
traversal, with emphasis on the analysis of complexity. Four hours per week.
Boolean algebra. Combinational and sequential circuit
devices are presented in lectures and laboratory. Computer hardware organization. Memory
and CPU design. CPU control with microcode. Four hours per week.
Overview of software engineering concepts,
analysis/design techniques, software documentation, group development of software. Three
hours per week.
Design, evaluation, and implementation of programming
languages. Discussion of imperative, applicative, object-oriented, and concurrent
languages. Four hours per week.
Introduction to fundamental concepts and practices of
artificial intelligence, covering problem definition, search techniques, knowledge
representation, control knowledge, and symbolic reasoning. The course also includes at
least two of the following advanced topics: planning, understanding, natural language
processing, learning, connectionist models, common sense reasoning, expert systems. Four
hours per week.
Special techniques and tools required in the development
of large programs employing the C language and the UNIX operating system such as support
for incremental and distributed program development, debugging,optimization, and
maintenance. Four hours per week.
Overview of files, records and files, blocking and
buffering, secondary storage devices; sequential file organization,external sort/merge
algorithms; random access; relative file organization; tree-structured file organization;
search trees, indexed sequential file organization ; list-structured file organization;
multiple-key file organization. Four hours per week.
An intensive study of a particular subject or problem in
computer science to be announced prior to registration. The course may be conducted on
either a lecture-discussion or a seminar basis. Three or four hours per week.
The principles and practices of incorporating the theory
of finite automata and context free languages, the maintenance and use of semantic
information, and the generation and optimization of code to produce a compiler.Four hours
per week.
Concepts of object-oriented development; identification
and definition of object classes; case studies applying object-oriented design techniques.
Three hours per week.
Overview of database system concepts; database modeling:
entity-relationship diagrams; CODASYL, relational, and object-oriented databases; schema
definition; data manipulation concepts; the SQL language. Four hours per week.
Introduction to the implementation of basic system
software: text editors, assemblers, loaders, and macroprocessors, with emphasis on
software methodology for creating and maintaining large programs. The language of
instruction will be C, which will be briefly introduced. Four hours per week.
Management of memory, processes, files, and devices. OS
design principles and performance measures. Multiprogramming, multiprocessing, concurrency,
deadlock, virtual machines. Competitive and cooperating processes. Programs will be
written in C. Four hours per week.
Drawing lines and curves, area filling, fractals, three
dimensional viewing, clipping, ray-tracing, shading, hidden line, and surface removal.
Four hours per week.
Mathematical models of discrete event systems, computer
simulation of models, operational analysis of queues, analysis of simulation results. Four
hours per week.
CS 471 Cr. 3--
recent syllabus The course will cover fundamental
topics in Systems Administration, primarily focusing on Unix with
some added coverage of Microsoft Windows NT descendant systems, time
permitting. Four hours per
week.
An intensive study of a particular subject or problem in
computer science to be announced prior to registration. The course may be conducted on
either a lecture-discussion or a seminar basis. Three or four hours per week.
Independent study in a computer science topic not
substantially treated in a regular course; for students with superior ability. One hour
consultation per week. Prior permission of directing professor and department chair
required. |