94-95 LS&A Bulletin

Computer Science

3401 EECS Building


May be elected as a departmental concentration program

The concentration program in computer science is intended to provide a student with a science program based on the field of computer science. This discipline studies phenomena and concepts arising from the use of logic, mathematics, engineering, and other sciences in understanding and manipulating information. The courses in this program are intended to provide the student with a firm foundation in both hardware/ architecture and software, as well as an understanding of a variety of applications of these fundamental ideas and techniques. Through a selection of advanced electives, students have the opportunity to explore in depth areas of special interest to them, such as artificial intelligence, distributed database systems, networks, compiler construction, software engineering, or operating systems. Students completing this concentration successfully will be in a good position to enter the workplace or continue on to graduate programs in computer science, computer engineering, business administration, law, or a variety of other disciplines which many of our graduates have already pursued.

Questions about the concentration program in Computer Science should be addressed to Professor Larry K. Flanigan, EECS Department, University of Michigan, Ann Arbor, MI 48109-2122, by telephone at 313-763-4079, or by electronic mail: LAUX@umich.edu.

Prerequisites to Concentration. Computer Science 280, 303, and 380; Mathematics 115, 116, and 215, and two courses in natural science (8 credits), designated (NS). The NS designated courses must be outside CS (Division 353), Mathematics (Division 428), Statistics (Division 489) and University Courses (Division 495). To be considered for admission to the concentration, all pre-concentration courses must be completed with no grade below C (2.0), and in addition, the six listed computer science and mathematics courses must be completed with grades which average at least B- (2.7). Students not receiving these grades in any of these preconcentration courses are advised to repeat the course before continuing in that sequence. You are declared into the concentration by a Computer Science advisor ONLY, and only when all of these courses (or their equivalent) have been completed.

Concentration Program.

1. Computer Science 270, 370, 381, 476, and 482 or 483.

2. At least one of Math. 416, CS 477, or Math. 425.

3. In addition, each student must complete a minimum of four CS or CS-related courses chosen from a Department-approved list. The concentration total will be approximately 37 credits. Courses selected to fulfill a concentration in Computer Science are chosen in consultation with and must be approved by a concentration advisor. Grades of C or better must be achieved in courses taken to satisfy the concentration requirements.

Advising. The concentration program in Computer Science is structured in such a way that only those students with defined, mature academic interests in Computer Science should elect it. Appointments are scheduled at 1213 Angell Hall, or by calling 764-0332.

Courses in Computer Science (Division 353)

181/EECS 181. Introduction to Computer Systems. Credit is granted for only one course among CS 181, Engin. 103, and Engin. 104. I and II. (4). (NS). (BS).

183/EECS 183. Elementary Programming Concepts. I, II, and IIIa. (4). (NS). (BS).

198/EECS 198. Special Topics in Computer Science. (1). (Excl).

216/EECS 216. Circuit Analysis. Prior or concurrent enrollment in Math. 215. I, II, and IIIa. (4). (Excl). (BS).

270/EECS 270. Introduction to Logic Design. I, II, and IIIa. (4). (Excl). (BS).

280/EECS 280. Programming and Introductory Data Structures. Math. 115 and (CS 183 or 284 or Engineering 104, or by placement test in PASCAL). Two credits granted to those who have completed CS 283. I and II. (4). (NS). (BS).

284/EECS 284. Introduction to a Programming Language or System. I and II. (1). (Excl). (BS).

303/EECS 303. Discrete Structures. Math. 115. I and II. (4). (Excl). (BS).

370/EECS 370. Introduction to Computer Organization. CS 270 and CS 280. I and II. (4). (Excl). (BS).

380/EECS 380. Data Structures and Algorithms. CS 280 and CS 303. I and II. (4). (NS). (BS).

381/EECS 381. Systems Programming. CS 380. I and II. (4). (Excl). (BS).

400/EECS 400/Math. 419. Linear Spaces and Matrix Theory. Four terms of college mathematics beyond Math. 110. No credit granted to those who have completed or are enrolled in 417 or 513. I and II. (3). (Excl). (BS).

426/EECS 426. Fundamentals of Electronic Computer-Aided Design. CS 280 and senior standing. I. (3). (Excl). (BS).

442/EECS 442. Computer Vision. CS 303 and CS 380. I. (3). (Excl). (BS).

470/EECS 470. Computer Architecture. CS 370. I or II. (4). (Excl). (BS).

473/EECS 473. Advanced Digital System Design. EECS 373 or permission of instructor. II. (3). (Excl). (BS).

476/EECS 476. Foundations of Computer Science. CS 280 and 303 or equivalent. I and II. (4). (Excl). (BS).

477/EECS 477. Introduction to Algorithms. CS 380. (3). (Excl). (BS).

478/EECS 478. Switching and Sequential Systems. CS 270 and CS 303, and senior or graduate standing. I and II. (3). (Excl). (BS).

481/EECS 481. Software Engineering. CS 380. I and II. (4). (Excl). (BS).

482/EECS 482. Introduction to Operating Systems. CS 370 and 381. I and II. (4). (Excl). (BS).

483/EECS 483. Compiler Construction. CS 370 and 381. I and II. (4). (Excl). (BS).

484/EECS 484/IOE 484. Database Management Systems. CS 380 or IOE 473. I and II. (3). (Excl). (BS).

486/EECS 486. Object-Based Software Development CS 380. II. (3). (Excl). (BS).

487/EECS 487/IOE 478. Interactive Computer Graphics. CS 380 or IOE 373, and senior standing. I and II. (3). (Excl). (BS).

489/EECS 489. Computer Networks. CS 482. II. (3). (Excl). (BS).

492/EECS 492. Introduction to Artificial Intelligence. CS 380. I and II. (4). (Excl). (BS).

493/EECS 493/IOE 437. User Interface Design and Analysis. CS 481. I. (3). (Excl). (BS).

500. Special Study. Graduate or undergraduate concentration in Computer Science; and permission of instructor. (1-6). (Excl). (INDEPENDENT). May be repeated for credit.

505/EECS 505/Math. 562/Aero. 577/IOE 511. Continuous Optimization Methods. Math. 217, 417 or 419. I. (3). (Excl). (BS).

506/EECS 506. Computing System Evaluation. CS 183 or 280, and CS 370 and EECS 501. II, odd years. (3). (Excl). (BS).

542/EECS 542. Vision Processing. CS 442. II in odd years. (3). (Excl). (BS).

543/EECS 543. Knowledge-Based Computer Vision. CS 492 and permission of instructor. II in even years. (3). (Excl). (BS).

545/EECS 545. Machine Learning. CS 492. II, odd years. (3). (Excl). (BS).

547/EECS 547. Cognitive Architecture. CS 492. II. (3). (Excl). (BS).

570/EECS 570. Parallel Computer Architecture. CS 470. II. (3). (Excl). (BS).

571/EECS 571. Principles of Real-Time Computing. CS 470 and CS 482 or permission of instructor. II. (3). (Excl). (BS).

572/EECS 572. Digital Computer Arithmetic. CS 470 or CS 370, and CS 478. I. (3). (Excl). (BS).

574/EECS 574. Theoretical Computer Science I. CS 476. I. (4). (Excl). (BS).

575/EECS 575. Theoretical Computer Science II. CS 574. II. (4). (Excl). (BS).

577/EECS 577. Reliable Computing Systems. CS 280 and 478. I. (3). (Excl). (BS).

579/EECS 579. Digital System Testing. CS 478. II. (3). (Excl). (BS).

581/EECS 581. Software Engineering Tools. CS 481 or equivalent programming experience. II. (3). (Excl). (BS).

582/EECS 582. Advanced Operating Systems. CS 482. II. (4). (Excl). (BS).

583/EECS 583. Programming Languages. CS 476 and CS 483. I. (4). (Excl). (BS).

584/EECS 584. Distributed Database Concepts. CS 484. II. (3). (Excl). (BS).

585/EECS 585. Object-Oriented Databases. CS 484 and permission of instructor. I. (3). (Excl). (BS).

586/EECS 586. Design and Analysis of Algorithms. CS 380. II. (3). (Excl). (BS).

588/EECS 588/IOE 578/ME 551. Geometric Modeling. CS 487 or ME 454 or permission of instructor. II. (3). (Excl). (BS).

589/EECS 589. Raster Graphics-Principles and Applications. CS 487. I. (3). (Excl). (BS).

592/EECS 592. Advanced Artificial Intelligence. CS 492, or permission of instructor. I and II. (4). (Excl). (BS).

594/EECS 594. Introduction to Adaptive Systems. CS 303 and Math. 425. I. (3). (Excl). (BS).

595/EECS 595/Ling. 541. Natural Language Processing. Senior standing. I. (3). (Excl). (BS).

598/EECS 598. Special Topics in Electrical Engineering and Computer Science. Permission of instructor or advisor. I, II, III, IIIa, and IIIb. (1-4). (Excl). (BS). May be repeated for credit.

Copyright © 1994-9
The Regents of the University of Michigan, Ann Arbor, MI 48109 USA
1.734.764.1817 (University Operator)