|
|
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
Admission to Degree Program
The degree programs in the Department of Computer Science carry special enrollment limitations. Please see the college advisement center for specific details.
The Discipline
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.
Career Opportunities
Graduates from the Computer Science Department find ready employment in almost any area of computer use.
Graduation Requirements
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.
General Education Requirements
Please see your college advisement center for information about general education courses you should take to dovetail with your major program.
Languages of Learning
|
Precollege Math (none to three courses)
(or Math ACT score of at least 22) |
0-3.0 hours |
| First-Year Writing (one course) | 3.0 |
| Advanced Writing (one to four courses) | 3-8.0 |
|
Advanced Languages/Math/Music (one to four courses) |
3-20.0 |
Liberal Arts Core
| 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-3.0 |
| History of Civilization (two courses) | 6.0 |
Arts and Sciences Electives
| 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.
Minimum University Requirements
| Religion | 14.0 |
| Upper-division hours | 40.0 |
| Residency | 30.0 |
| Total hours | 128.0 |
Cumulative GPA must be at least 2.0.
Note: See the Graduation section of this catalog for more information.
Major Requirements
Complete the major requirements listed for one of the folowing undergraduate degree programs.
Undergraduate Programs and Degrees
| BS | Computer Science |
| Minor | Computer Science Teaching |
For help or information on the undergraduate programs, please see your college advisement center.
Graduate Programs and Degrees
| MS | Computer Science |
| PhD | Computer Science |
For more information See the 1997-98 BYU Graduate Catalog.
General Information
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.
BS Computer Science (78-80 hours*)
Major Requirements
*Hours include courses that may fulfill GE or university requirements.
Minor Computer Science Teaching (19 hours)
Complete the following:
CS 142, 143, 235, 236, 240, 302.
| Class Schedule | Major Academic Plan (MAP) | ||||
|
|
|
|
|
|
|
Undergraduate Courses
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. (2:2:0) F, W, Sp, Su Prerequisite:
knowledge of algebra.
199R. Computer Science Cooperative Education. (1-3:0:0 ea.) F, W, Sp, Su
Prerequisite: department's consent.
235. Foundations of Computer Science 1. (4:4:0) F, W, Sp, Su Prerequisite:
CS 142.
236. Foundations of Computer Science 2. (4:4:0) 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.
302. Computer Science Education. (3:3:0) F, W Prerequisite: Math 112 or
119; CS 103 or 142.
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, 330.
452. Database Modeling Concepts. (3:3:0) F, W, Prerequisite: CS 312, 330.
453. Advanced Data Structures. (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.
500-Level Graduate Courses (available to advanced undergraduates)
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 330, 453, or instructor's
consent.
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: calculus and senior or
graduate standing or instructor's consent. Recommended: linear algebra.
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.
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: Math 119 or equivalent and
graduate or senior standing.
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 380, Math 113.
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.
Graduate Courses
For 600- and 700-level courses, See the 1997-98 BYU Graduate Catalog.
Computer Science Faculty
Professors
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.
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.
Stokes, Gordon E. (1969) BS, Brigham Young U., 1961; MS, U. of Idaho, 1969; EdD, Brigham Young U., 1981.
Woodfield, Scott N. (1985) BA, MS, Brigham Young U., 1975, 1978; PhD, Purdue U., 1980.
Associate Professors
Beus, H. Lynn (1971) BA, Brigham Young U., 1961; MS, Case Inst. of Technology, 1964; PhD, Case Western Reserve U., 1967.
Martinez, Tony R. (1987) BA, Brigham Young U., 1982, MS, PhD, U. of California, Los Angeles, 1983, 1986.
Windley, Phillip J. (1993) BS, U. of Idaho, 1982; MS, PhD, U. of California, Davis, 1988, 1990.
Assistant Professors
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.
Ng, Yiu Kai (Dennis) (1991) BS, Brigham Young U., 1982; MS, Brigham Young U., 1984; PhD, Kansas State U., 1991.
Whitehurst, Alan (1995) BS, Brigham Young U., 1983; MS, Johns Hopkins U., 1985; PhD, U. of Illinois, 1995.
Lecturer
Ivie, William E. (1964) BS, Brigham Young U., 1974.
Emeriti
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.
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.
Adjunct Professors
Ashton, Alan C. (1972) BA, PhD, U. of Utah, 1966, 1970.
Tate, Karen E. (1989) BA, PhD, U. of Utah, 1977, 1988.
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 |