|
|
Computer Science |
William A. Barrett, Chair
3361 TMCB, PO Box 26576, (801) 378-3027
College of Physical and Mathematical Sciences Advisement Center
1116 TMCB, PO Box 26539, (801) 378-6270
The degree programs in the Department of Computer Science carry special enrollment limitations. Please see the college advisement center for specific details.
Computer science, even though it is a relatively new field, touches virtually every area of human endeavor. It is the systematic study of the algorithmic processes—their theory, analysis, design, efficiency, implementation, and application. Fundamentally, computer science is a science of abstraction—creating the right model for a problem and devising the right computer manipulations to solve it.
The BS curriculum is accredited by the Computer Science Accreditation Commission of the Computing Sciences Accreditation Board (CSAB).
The degree programs in computer science concentrate on the fundamental techniques and knowledge used in designing and implementing information processing systems, with emphasis on systems software design and computer organization.
Graduates from the Computer Science Department find ready employment in almost any area of computer use.
To receive a bachelor's degree a student must fill three groups of requirements: (1) general education requirements, (2) university requirements, and (3) major requirements.
Students should contact their college advisement center for information about general education courses that will also fill major requirements.
|
Precollege Math (zero to one course)
|
0–3.0 hours |
| First-Year Writing (one course) | 3.0 |
| Advanced Writing (one course) | 3.0 |
|
Advanced Languages/Math/Music
|
3–20.0 |
| Biological Science (one to two courses) | 3–6.0 |
| Physical Science (one to two courses) | 3–7.0 |
| American Heritage (one to two courses) | 3–6.0 |
| Wellness (one to three courses) | 1.5–2.0 |
| Civilization (two courses) | 6.0 |
| Arts and Letters (one course) | 3.0 |
| Natural Sciences (one course) | 3–4.0 |
| Social and Behavioral Sciences (one course) | 3.0 |
Note 1: For a complete list of courses that will fill each GE category, see the General Education section of the current class schedule.
Note 2: Additional information about general education requirements can be found in the General Education section of the current class schedule or this catalog.
| Religion | 14.0 |
| Upper-division hours | 40.0 |
| Residency | 30.0 |
| Hours needed to graduate | 120.0 |
Cumulative GPA must be at least 2.0.
Note: See the Graduation section of this catalog for more information.
Complete the major requirements listed for one of the folowing undergraduate degree programs.
| BS | Computer Science |
| Minor | Computer Science Teaching |
Students should see their college advisement center for help or information concerning the undergraduate programs.
| MS | Computer Science |
| PhD | Computer Science |
For more information see the 1999–2000 BYU Graduate Catalog.
Majors are selected on the basis of overall GPA, performance in the fundamental courses, and availability of openings in the program.
Computer science majors, especially those planning graduate work, are advised to acquire a strong background in mathematics, possibly a minor.
Personnel in the College of Physical and Mathematical Sciences Advisement Center will advise regarding the fundamental and core courses, major admittance, and suggested General Education. Questions regarding curriculum and career decisions should be directed to the undergraduate advisor in the Computer Science Department.
Fundamental courses to be completed by all majors are CS 142, 143, 235, Math 119, Phscs 121.
Note: All hours of credit applied toward a major in computer science must be of C– or better and must be taken within eight years of declaring the computer science fundamentals major. Any exceptions must be approved by the department. Students may choose to graduate under later requirements by updating their date of entry into the major at the college advisement center.
*Hours include courses that may fulfill GE or university requirements.
| Class Schedule | Major Academic Plan (MAP) | ||||
|
|
|
|
|
|
|
103. Elementary Computer Applications. (2:2:0) F, W, Sp, Su
130. Scientific Computing—C. (2:2:2) F, Su
142. Introduction to Computer Programming. (3:3:0) F, W, Sp, Su Prerequisite: knowledge of algebra.
143. Introduction to Computer Organization. (3:3:0) F, W, Sp, Su Prerequisite: knowledge of algebra.
199R. Academic Internship. (1–3:0:0 ea.) F, W, Sp, Su
235. Foundations of Computer Science 1. (4:4:1) F, W, Sp, Su Prerequisite: CS 142.
236. Foundations of Computer Science 2. (4:4:1) F, W, Sp, Su Prerequisite: CS 235.
240. Advanced Programming Concepts. (3:3:0) F, W Prerequisite for CS majors: CS 236. Prerequisite for ECEn majors: CS 235, ECEn 325.
252. Introduction to Computational Theory. (3:3:0) F, W, Alt. term Prerequisite: CS 236.
312. Algorithm Analysis. (3:3:0) F, W, Alt. term Prerequisite: CS 240, 252.
330. Concepts of Programming Languages. (3:3:0) F, W, Sp Prerequisite: CS 240, 252.
345. Operating Systems Design. (3:3:0) F, W, Sp, Su Prerequisite: CS 380; or CS 240, ECEn 325.
380. Computer Architecture. (3:3:0) F, W, Alt. term Prerequisite: ECEn 220, CS 240.
404. Ethics and Computers in Society. (3:3:0) F, W, Alt. term Prerequisite: Engl 316; junior standing.
428. Software System Design and Implementation. (3:3:0) Alt. sem., Alt. term Prerequisite: CS 312, 330.
429. Software Testing. (3:3:0) F Prerequisite: CS 312, 330.
431. Algorithmic Languages and Compilers. (3:3:0) Alt. sem., Alt. term Prerequisite: CS 312, 330.
450. Introduction to Digital Signal and Image Processing. (3:3:0) On dem. Prerequisite: CS 312, Math 119, 343, or equivalent.
452. Database Modeling Concepts. (3:3:0) F, W, Prerequisite: CS 312, 330.
453. Database Implementation. (3:3:0) F, W, Sp, Su Prerequisite: CS 312, 330.
455. Computer Graphics. (3:3:0) Alt. sem., Alt. term Prerequisite: CS 312, 330, and instructor's consent.
456. Introduction to User Interface Software. (3:3:0) Prerequisite: CS 312, 330.
460. Computer Communications and Networking. (3:3:0) F, W Prerequisite: CS 312, 380.
470. Introduction to Artificial Intelligence. (3:3:0) F Prerequisite: CS 312, 330.
501R. Special Topics in Computer Science. (1–3:Arr.:0 ea.) F, W, Sp, Su Prerequisite: instructor's consent.
510. Formal Languages and Syntactic Analysis. (3:3:0) F, Alt. term Prerequisite: CS 431 or instructor's consent.
512. Analysis of Algorithms. (3:3:0) W Prerequisite: CS 252, 312, or instructor's consent.
521. Pattern Recognition. (3:3:0) W Prerequisite: CS 450, or equivalent.
525. Software Creation. (3:3:0) F Prerequisite: CS 428.
531. Compiler Theory and Design. (3:3:0) Alt. yr. Prerequisite: CS 431.
532. Advanced Programming Languages and Models. (3:3:0) Alt. yr. Prerequisite: CS 431.
535. (CS-Psych 577) Human-Computer Interaction. (3:3:0) F Prerequisite: graduate or senior standing.
544. Advanced Operating Systems. (3:3:0) F, Alt. term Prerequisite: CS 345.
545. Process Control Systems. (3:3:0) W Prerequisite: CS 345.
550. Computer Vision 1. (3:3:0) F Prerequisite: CS 450 or equivalent.
551. Object-Oriented Database Theory. (3:3:0) F, Alt. term Prerequisite: CS 452 or instructor's consent.
552. Object-Oriented Database Systems. (3:3:0) Prerequisite: CS 452.
554. Distributed Databases. (3:3:0) Prerequisite: CS 452 or equivalent.
555. Advanced Computer Graphics. (3:3:0) W Prerequisite: CS 455 or instructor's consent.
556. Interactive Software Systems. (3:3:0) W Prerequisite: CS 330, 455.
557. (CS-CEEn 572-MeEn 572) Computer-Aided Geometric Design. (3:3:0) Prerequisite: FORTRAN or C, or similar computer language background.
560. Computer Networks. (3:3:0) W Prerequisite: CS 460, Stat 321.
561. Theoretical Foundations of Computer Science. (3:3:0) W, Su Prerequisite: CS 312 or instructor's consent.
565. Data Security. (3:3:0) W Prerequisite: CS 404. Recommended: CS 453, 560.
572. Machine Learning. (3:3:0) Prerequisite: CS 250, 470; or instructor's consent.
575. Expert Systems Design. (3:3:0) W Prerequisite: CS 470 or instructor's consent.
576. Intelligent Tutoring. (3:3:0) Alt. term Prerequisite: CS 575 or instructor's consent.
578. Neural Networks and Connectionist Computing. (3:3:0) F Prerequisite: CS 252, 380; or equivalent. Recommended: CS 470 or equivalent.
580. High-Performance Computer Architecture. (3:3:0) Prerequisite: CS 380, ECEn 425, or equivalent.
584. Parallel Processing. (3:3:0) Prerequisite: CS 380 or equivalent.
586. Formal Methods in Computer System Design. (3:3:0) Prerequisite: CS 236, 380, or equivalent.
598R. Special Projects. (1–3:0:0 ea.) Prerequisite: instructor's consent.
For 600- and 700-level courses, see the 1999–2000 BYU Graduate Catalog.
Barrett, William A. (1987) BA, PhD, U. of Utah, 1974, 1978.
Burton, Robert Preece (1974) PhD, U. of Utah, 1973.
Campbell, Douglas M. (1971) BA, Harvard U., 1967; PhD, U. of North Carolina, 1971.
Christensen, Larry C. (1983) BA, Brigham Young U., 1963; MA, Central Michigan U., 1968; EdD, Brigham Young U., 1981.
Cornell, Aurel (1980) MS, PhD, Polytechnic Inst. of Timisoara, Rumania, 1960, 1971.
Embley, David W. (1982) BA, MS, U. of Utah, 1970, 1972; PhD, U. of Illinois, 1976.
Hays, Bill (1970) BS, East Texas State U., 1963; MS, U. of Iowa, 1967; PhD, Northwestern U., 1970.
Higgins, John C. (1961) BA, MA, Brigham Young U., 1958, 1960; PhD, U. of California, Berkeley, 1966.
Martinez, Tony R. (1987) BA, Brigham Young U., 1982, MS, PhD, U. of California, Los Angeles, 1983, 1986.
Norman, Theodore A. (1970) BS, U. of Utah, 1962; MS, PhD, Washington State U., 1968, 1970.
Olsen, Dan R. (1985) BS, MS, Brigham Young U., 1976, 1978; PhD, U. of Pennsylvania, 1981.
Sederberg, Thomas W. (1978) BS, MS, Brigham Young U., 1975, 1977; PhD, Purdue U., 1983.
Woodfield, Scott N. (1985) BA, MS, Brigham Young U., 1975, 1978; PhD, Purdue U., 1980.
Ng, Yiu Kai (Dennis) (1991) BS, Brigham Young U., 1982; MS, Brigham Young U., 1984; PhD, Kansas State U., 1991.
Windley, Phillip J. (1993) BS, U. of Idaho, 1982; MS, PhD, U. of California, Davis, 1988, 1990.
Clement, Mark J. (1994) BS, MS, Brigham Young U., 1985, 1989; PhD, Oregon State U., 1994.
Egbert, Parris (1992) BS, Utah State U., 1986; MS, PhD, U. of Illinois, 1990, 1992.
Flanagan, Kelly J. (1993) BS, MS, PhD, Brigham Young U., 1988, 1989, 1993.
Morse, Bryan S. (1994) BS, MS, Brigham Young U., 1986, 1990; PhD, U. of North Carolina, 1994.
Peterson, Todd (1999) BS, Brigham Young U., 1993; MS, PhD, U. of Alabama, 1996, 1999.
Quass, Dallan H. (1997) BS, MS, Brigham Young U., 1986, 1988; PhD, Stanford U., 1997.
Snell, Quinn (1997) BS, MS, Utah State U., 1992, 1993; PhD, Iowa State U., 1997.
Beus, H. Lynn (1971) BA, Brigham Young U., 1961; MS, Case Inst. of Technology, 1964; PhD, Case Western Reserve U., 1967.
Burton, Robert C. (1964) BS, Brigham Young U., 1956; PhD, U. of North Carolina, 1963.
Dean, C. Edwin (1949) BS, MS, Brigham Young U., 1948, 1952; MS, U. of Michigan, 1955.
Ivie, Evan Leon (1979) BS, BES, Brigham Young U., 1956, 1956; MS, Stanford U., 1957; PhD, Massachusetts Inst. of Technology, 1966.
McClurg, Lynn E. (1972) BGE, U. of Nebraska, 1966; MS, U. of Southern California, 1972; EdD, Brigham Young U., 1978.
Robison, Parley P. (1967) BS, U. of Utah, 1958.
Stokes, Gordon E. (1969) BS, Brigham Young U., 1961; MS, U. of Idaho, 1969; EdD, Brigham Young U., 1981.
Todd, Henry S. (1982) BES, MS, Brigham Young U., 1960, 1965; MS, U. of Rochester, 1968; PhD, U. of Arizona, 1973.
Wright, Norman Edward (1963) BS, Brigham Young U., 1951.
Ashton, Alan C. (1972) BA, PhD, U. of Utah, 1966, 1970.
Urie, Paul McKay (1989) BS, Brigham Young U., 1971; PhD, MD, U of Utah, 1975, 1979.
James K. Archibald and Brent E. Nelson of the Electrical and Computer Engineering Department are assisting with computer science courses and graduate programs by approval of the Computer Science Department.
|
Back |
Catalog Homepage |
BYU Homepage |