Attention: This page is designed using recognized Web standards. You are seeing this message because your browser does not support those standards. You will have full access to the content of this page, but it will look much better if you use a recent browser such as Internet Explorer 7.x (Windows), or Mozilla Firefox (Windows/Mac). Learn more...


Computer Science Program

Computer Science Program > Courses

Courses

A201 Introduction to Programming (3 cr.)

Fundamental programming constructs, including loops, arrays, classes, and files. General problem-solving techniques. Emphasis on modular programming, user-interface design, and developing good programming style. Not intended for computer science majors or minors.

A211 Word Processing Applications (3 cr.)

This course introduces the student to word processing techniques used in creating letters, forms and reports. The student will use styles, outlines, tables, and field codes in documents and templates. Advanced topics include merging documents, customizing the Word environment, and integrating the features of Word with other software applications.

A212 Spreadsheet Applications (3 cr.)

This course introduces the student to spreadsheet techniques used in creating professional looking worksheets. Students will use formulas, functions, charts, graphs, and logical functions. Advanced topics include advanced filtering, importing data, creating pivot tables, database functions, and integrating Excel with other software applications.

A213 Database Applications (3 cr.)

This course introduces the student to database techniques. The student will develop tables, custom forms, reports, and queries. Advanced topics include developing ASP pages for the WWW, developing and understanding relationship database design, macros, managing, securing a database, integrating Access with the web and other programs.

A221 Multimedia Programming (1.5 cr.)

This course introduces the student to creating dynamic web pages. Emphasis is placed on problem solving techniques using a web based programming language. Lecture and Laboratory.

A247 Network Technologies and Administration (3 cr.)

Introduction to network principles and current network technology, both hardware and software. Network administration tools and techniques. Laboratory provides practical experience.

A346 User-Interface Programming (3 cr.)

Learn to prototype and build graphical user interfaces for computer applications. Contemporary software design methodology. Students design and implement prototype interfaces to applications provided by the instructor. Extensive use is made of both commercial and experimental software tools.

A348 Mastering the World Wide Web (3 cr.)

Project-oriented course leading to ability to maintain a fully functional Web site. Topics include internet network protocols and Web programming, server administration, protocols, site design, and searching and indexing technologies.

B438 Fundamentals of Computer Networks (3 cr.)

Theory and practice of data communication between computing devices. Topics include network architecture and topology, wide-area networks, local-area networks, and ISO network layers.

B461 Database Concepts (3 cr.)

Introduction to database concepts and systems. Topics include database models and systems: hierarchical, network, relational, and object-oriented; database design principles; structures for efficient data access; query languages and processing; database applications development; views; security; concurrency; recovery. Students participate in a project to design, implement, and query a database, using a standard database system.

B481 Interactive Graphics (4 cr.)

Computer graphics techniques. Introduction to graphics hardware and software. Two-dimensional graphics methods, transformations, and interactive methods. Three-dimensional graphics, transformations, viewing geometry, object modeling, and interactive manipulation methods. Basic lighting and shading. Video and animation methods. Credit given for only one of B481 and B581.

C100 Computing Tools (1 cr.)

An introduction to computing applications useful in college and career work. Topics include microcomputer operating systems, word processing, spreadsheet, database, and communications software, and other software applications. May be taken up to three times to satisfy the basic computer literacy requirement.

C106 Introduction to Computers and Their Use (3 cr.)

An introduction to computers and their use in information systems: use of standard application programs; foundations of information systems design and development; survey of programming languages. Satisfies the basic computer literacy requirement.

C201 Computer Programming II (4 cr.)

Computer programming and algorithms. Basic programming and program structure. Computer solutions of problems. A computer language will be taught. Lecture and discussion. Business majors cannot receive credit for C201 and C101 or C106.

C202 Computer Programming (4 cr.)

Computer programming, algorithms, program structure, arrays, stacks, queues, binary trees; procedures, functions, parameter-passing mechanisms, recursion vs. iteration, and issues of programming style. Computer solutions of problems such as data analysis, sorting, searching, and string and text manipulation.

C203 COBOL and File Processing (3 cr.)

Computer programming and algorithms. Applications to large file processing functions of an organization.

C237 Operating Systems Concepts (4 cr.)

An investigation of the problems involved in the implementation of an operating system and some of the solutions. Topics such as multiprocessing, paging, interlocks, time-sharing, and scheduling. A specific operating system will be examined.

C251 Foundations of Digital Computing (3 cr.)

Boolean algebra and propositional logic. Set algebra, including mappings and relations. Elements of graph theory and statistical analysis. Application of all topics to computer programming.

C311 Programming Languages (4 cr.)

Systematic approach to programming languages. Relationships among languages, properties and features of languages, and the computer environment necessary to use languages. Lecture and laboratory.

C320 Advanced COBOL (3 cr.)

A continuation and extension of COBOL as taught in C203. Extensive use will be made of structured COBOL in the development of large programs requiring access to various file structures. Includes interactive menu and screen-driven programming.

C335 Computer Structures (4 cr.)

Structure and internal operation of computers, stressing the architecture and assembly language programming of a specific computer. Additional topics include digital hardware and microprogramming. Lecture and laboratory.

C343 Data Structures (4 cr.)

Systematic study of data structures encountered in computing problems, structure and use of storage media, methods of representing structure data, techniques for operation on data structures. Lecture and laboratory.

C390 Individual Programming Laboratory (1-3 cr.)

Student will design, program, verify, and document a special project assignment selected in consultation with the instructor. This course may be taken several times for up to a maximum of 6 credits. Prior to enrolling, a student must arrange for an instructor to supervise the course activity.

C405 A Survey of Computer Science (3 cr.)

A survey of senior-level topics in programming languages and operating systems for students minoring in computer science.

C421 Computer Organization (4 cr.)

Organization, circuits, and logic design of digital computing systems. Course deals with the internal structure of computers. Some simple computers are designed. Experiments in basic computer circuitry are performed in the laboratory. A knowledge of electronics, while useful, is not a requirement. Lecture and laboratory.

C422 Advanced Computer Organization (3 cr.)

Basic computer hardware design problems. Alternative solutions illustrated by different computers.

C431-C432 Assemblers and Compilers I-II (3-3 cr.)

Design and construction of assemblers, macroprocessors, linkers, loaders, and interpreters. Compiler design and construction, including lexical analysis, parsing, code generation, and optimization.

C435-C436 Operating Systems I-II (3-3 cr.)

Organization and construction of computer systems that manage computational resources. Topics include specification and implementation of concurrency, process scheduling, storage management, device handlers, mechanisms for event coordination such as interruption, exclusion, and synchronization. Extensive laboratory exercises.

C445-C446 Information Systems I-II (4-4 cr.)

Analysis, design, and implementation of information systems from user needs to a running system. Hardware organization and its impact on storage structures. Structures and techniques for accessing and updating information: primary and secondary indices, sequential and multilinked files. Modeling of information using hierarchical, network, and relational techniques and operations with these models. Current database systems and query languages.

C451 Automata and Formal Grammars (3 cr.)

Finite automata and regular grammars; context-free grammars and nondeterministic pushdown automata; deterministic pushdown automata; unsolvable problems and algorithms for solvable problems related to these classes of machines and grammars.

C455 Analysis of Algorithms (4 cr.)

Models, algorithms, recurrences, summations, growth rates. Probabilistic tools, upper and lower bounds; worst-case and average-case analysis, amortized analysis, dynamization. Comparison-based algorithms: search, selection, sorting, hashing. Information extraction algorithms (graphs, databases). Graph algorithms: spanning trees, shortest paths, connectivity, depth-first search, breadth-first search.

C463 Artificial Intelligence I (3 cr.)

Historical roots, philosophical thesis, and goals of artificial intelligence research. Basic problem-solving methods. Heuristics and heuristic search. Game-playing programs. Reasoning and knowledge representation. Predicate calculus, semantic networks, frames and other representation systems. Introduction to production systems. Goal-directed systems.

C464 Artificial Intelligence II (3 cr.)

Advanced problem-solving techniques. Production systems continued. Programming languages for artificial intelligence systems. Natural-language understanding programs. Recognition and categorization. Artificial vision systems. Applications of artificial intelligence. Robotics.

C490 Seminar in Computer Science (1-3 cr.)

Special topics in computer science. May be repeated for up to a maximum of 6 credits.

N211 Introduction to Databases (3 cr.)

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.

P423 Compilers (4 cr.)

Compiler design and construction, including lexical analysis, parsing, code generation, and optimization. Extensive laboratory exercises.

P436 Introduction to Operating Systems (4 cr.)

Organization and construction of computer systems that manage computational resources. Topics include specification and implementation of concurrency, process scheduling, storage management, device handlers, mechanisms for event coordination. Lecture and laboratory.

P465-P466 Software Engineering for Information Systems I-II (3-3 cr.)

Analysis, design, and implementation of information systems. Project specification. Data modeling. Software design methodologies. Software quality assurance. Supervised team development of a real system for a real client. Credit given for only one of P465-P466 or C445-C446.

Y398 Internships in Professional Practice (S/F Grading) (1-6 cr.)

Designed to provide opportunities for students to receive credit for selected career-related, full-time work. Evaluation by employer and faculty sponsor.

– Back to top –