Trinity University
Computer Science Department

\includegraphics[totalheight=1in]{seal.eps}

General Information Bulletin

Dr. Gerald Pitts
Chair and Caruth Distinguished Professor
Department of Computer Science
Trinity University
715 Stadium Drive
San Antonio, Texas 78212-7200
Voice: (210) 999-7480
Fax: (210) 999-7477
E-mail: gpitts@trinity.edu

What is computer science?

Computer Science has evolved into a distinct discipline characterized by three basic paradigms (theory, abstraction and design) with fundamental roots in both Mathematics and Engineering. Computer Science is the systematic study of algorithmic processes - their theory, analysis, design, efficiency, implementation and application - that describe and transform information 1. The principle mission of the Trinity University Computer Science Department is to provide a state of the art foundation of principles, skills, knowledge and creativity for the development of liberally educated computer scientists of the highest quality. Students in the Department are among the most highly motivated, intelligent and talented Trinity students. The Computer Science program is designed to provied an appropriate mix of current technology and theory and also challenges its majors to think critically and communicate effectively. A student's experience in this discipline would include a substantial interaction with computers, but would also include broad training in the areas of systems, applications and theory of computing. At Trinity, computer science is not limited to programming, but also involves a much broader view of the discipline. The underlying theory of computer science and its range of applications are of equal importance, and this perspective allows for the breadth and depth of study that is essential to keep pace with the rapidly changing and growing field.

Does Trinity have a Computer Science major?

Trinity University is rated as one of the finest liberal arts and sciences universities in the country. Not only does Trinity University have an outstanding computer science major, it has excellent companion programs in the Division of Science, Mathematics and Engineering. Our computer science majors often complete optional minors in one of the fields of mathematics, physics, biology, geoscience, engineering, business, economics, communications or accounting.

A recently revised curriculum has been designed following specific guidelines set down by the Association for Computing Machinery (ACM). A major in computer science requires the completion of 42 semester hours of computer science and related disciplines. Courses include programming languages, computer architecture, data structures, computer graphics, software engineering and many others.

The Computer Science Department has been continually developing and revising its curriculum. We are convinced that its present form provides the proper balance between theory and application through a collection of core principles courses. The computer science major also includes a sequence of three seminar courses, taken in the Spring semester of the sophomore, junior and senior years, which emphasize the design process, professional conduct and ethics.

What is the history of computer science at Trinity?

In the Spring of 1970, the University Curriculum Council established a separate Department of Computer Science. Dr. John E. Howland was hired to chair the Department and develop an undergraduate major in Computer Science, as well as to recruit a Computer Science faculty.

Prior to 1970, two computer science courses were being taught: a numerical analysis course in the Mathematics Department and a programming course in the Engineering Science Department.

During the 1970-1971 academic year, a Computer Science curriculum was developed following ACM guidelines (the ACM is the primary professional organization for Computer Science). Several students who were majoring in either Mathematics, Physics or Engineering Science were among the first Computer Science graduates in 1972. This graduation established Trinity University as the first college or University in the Southwest to graduate students with a major in computer science. During the years 1972 through 1975, the number of graduates with majors in Computer Science were 4, 8, 4 and 13. During the years 1976 to the mid 1980's, the number of majors in Computer Science gradually grew from about 20 to more than 150.

In the 1971-1972 academic year, the Computer Science faculty increased to three plus several part-time instructors. During the 1972-1973 year, a fourth faculty member was added to the Department and the faculty remained that size until the 1976-1977 academic year when the Department's first woman faculty member and another new Ph.D. were hired.

During the 1973-1974 academic year, the University Graduate Council approved a Master's degree program in Computer Science. This program continued until the 1987-1988 academic year when, at the recommendation of the University, the Department voted to discontinue its graduate program so that it could devote all its resources towards improving the quality of its undergraduate offerings. This decision was part of a broader University initiative to terminate Master's level programs in all but a few professional programs. During the mid 1980's, when the graduate program was at its peak, each year 60 to 80 graduate students were in varying stages of completion of their Master's degrees.

During the 1981-1982 year, two faculty were added, bringing the Computer Science Department to a total of eight faculty. During the mid-1980's, the faculty grew to a maximum of ten full-time professors, each holding the Ph.D. degree in computer science or a closely related field.

In the early 1990's, the Department was down-sized to seven Ph.D. faculty members due to the discontinuation of the graduate program. The 2000 - 2001 academic year finds the department with eight full-time and three part-time faculty. The Computer Science Department has grown to about 145 majors, making it the second largest department on the campus.

Does Trinity hire graduate students to teach?

Often colleges and universities use graduate assistants to teach undergraduate courses. Trinity does not use graduate students to teach any of its classes! All computer science classes are taught by full-time faculty who have doctorates in computer science or a closely related area.

How large are computer science classes?

The average class size for freshmen level classes ranges from 15 to 30. The average class size for sophomore, junior and senior level classes ranges from 10 to 25. Smaller classes mean that students have an opportunity to work closely with faculty who are dedicated teachers and researchers.

What type of computers do computer science majors use?

We feel that it is important to be exposed to a variety of hardware systems. All students have the opportunity to use Unix and Windows systems. Many of our laboratory systems have multiple boot software systems so that they may be used as MacOS or Windows systems. Recently, the Linux operating system has been deployed in some of our laboratories allowing the same Unix based software to run on Macintosh and Intel machines as runs on our Silicon Graphics Unix machines. Since Linux, which is distributed under the GNU software license, is free, students can install Linux on their own computers and run the same software systems which the Department uses in its teaching and research.

Does a computer science major have to own a computer?

The Computer Science Department provides 107 computers for student, faculty and staff use. Thanks to grants from the Semmes Foundation, Meadows Foundation and the National Science Foundation, the Computer Science Department maintains three laboratories for student use. The Unix Laboratory (Halsell 228) contains 22 Pentium III Linux workstations which can also run the Windows 2000 operating system. This laboratory is a combined lecture room and laboratory room which operates on a 24-hour per day basis. Since each Unix workstation supports multiple users, the machines in this lab may be accessed by students in other labs or residence halls even while the room is in use as a lecture room. Each machine in the Unix lab is connected to a Cisco 4006 series switch by a dedicated 100MB ethernet cable. The switch allows these 22 machines to participate in the Department's 66 procesor Beowulf parallel processing system.

The Department provides a common password database (NIS) and home directory server (NFS and SMB) for use on all of the Unix and NT machines. Students can develop, for example, OpenGL graphics programs on a Linux machine and then log into a Silicon Graphics workstation and re-compile the program to run at higher levels of performance.

Students may access all University computing services, including e-mail, Internet and World Wide Web from each of the Department's laboratories, as well as student owned machines in residence halls.

Another laboratory is the Graphics/Parallel Processing Laboratory (Halsell 200). This lab contains five high performance Silicon Graphics workstations and a BeBox dual PowerPC processor machine. This laboratory also houses seven dual Pentium III processor machines, each having 1G memory and 18.2G disk, which run the Linux operating system and form a principle computational resource of the Department's 66 processor Beowulf parallel processing system. The Beowulf system also has server machine which has 4 Pentium III processors, 4G memory and 72G of disk space. These machines are used primarily for graphics and parallel processing research projects.

A third laboratory, called the Workstation Laboratory (Halsell 342), is available. This lab contains 22 Intel Pentium III workstations which are configured to boot either Linux or Windows 2000 operating system. Each of these machines is connected to a Cisco 4006 series switch by a dedicated 100MB ethernet cable. The switch allows these 22 machines to participate in the Department's 66 processor Beowulf parallel processing system.

A fourth laboratory, called the Virtual Reality Laboratory (Halsell 330), contains three Silicon Graphics dual processor Windows NT graphics workstations which have large wide-format LCD displays. Also available in this lab are a variety of special peripherals such as head-mounted displays, 3-D glasses, 6-D joysticks, 3-D speakers and a data-glove. These machines are used for simulation and virtual reality research projects.

In addition, the Trinity University Computing Center provides about 1200 computers, approximately 400 of which are available to students. These machines are conveniently located in various campus laboratories such as the Library and Student Center. The Computing Center also maintains the campus internet and various server machines for e-mail, USENET and Web access. The Trinity internet is connected to the Internet by a one-third fraction of a Time Warner DS 3 line and is available in every campus building including residence halls. This network facility provides access to computing services in a convenient and consistent manner from all campus locations.

What computer access does Trinity provide for students?

Trinity maintains about 1200 computers for students, faculty and staff use. About 400 of these machines are available for student use. The Computer Science Department maintains 107 computer systems for its students, faculty and staff. The following listing shows the details of these machines.

Mon Jul 16 17:47:18 CDT 2001
 
 Name           Room          IP         Admin      Machine     Mem-M Disk-M CD     OS                  Use
 
 Alamogordo.CS  HAS201C	 131.194.131.182 Howland    I-PII400     128  25376  CD  Linux/W2K            Faculty-WS
 Ananke3.CS     HAS339   131.194.131.51  Hicks      I-P400       128   6000      NT 4.0               Faculty-WS
 Ananke4.CS     HAS339   131.194.131.52  Hicks      I-P400       128   6000      NT 4.0               Faculty-WS
 Ariel.CS       HAS201C  131.194.131.13  Howland    I-PIV1400    256  40000  CD  Linux                Faculty-WS  
 Athena.CS      HAS201L  131.194.131.185 Massingill 2-I-PIII500  128   8000  CD  Linux/NT 4.0         Faculty-WS,PPP-Server
 Atlas.CS       HAS200   131.194.131.29  CS-Admin   SGI-Indigo    64   1000  CD  Irix 6.2             Graphics-Lab, NIS-client
 Atlas00.CS     HAS329   131.194.131.80  CS-Admin   I-P233        32   7200  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Atlas01.CS     HAS329   131.194.131.81  CS-Admin   I-P233        32   7200  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Atlas02.CS     HAS329   131.194.131.82  CS-Admin   I-P233        32   8900  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Atlas03.CS     HAS329   131.194.131.83  CS-Admin   I-P233        64   8500  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Atlas04.CS     HAS329   131.194.131.84  CS-Admin   I-P233        32   7800  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Atlas05.CS     HAS329   131.194.131.85  CS-Admin   I-P233        32   8900  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Atlas06.CS     HAS329   131.194.131.86  CS-Admin   I-P233        64   8500  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Atlas07.CS     HAS329   131.194.131.87  CS-Admin   I-P233        64   8500  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Atlas08.CS     HAS329   131.194.131.88  CS-Admin   I-P233        64   8500  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Bianca.CS      HAS200   131.194.131.17  CS-Admin   I-P233       128  11000  CD  Linux/W2K            Outside Access, NIS-client
 Callisto.CS    HAS200   131.194.131.36  CS-Admin   I-P90         32   5300  CD  NT 4.0               Graphics-Lab
 Carme.CS       HAS339   131.194.131.38  Hicks      I-P233        32  23500  CD  NT 4.0 Server        Faculty-WS
 Charon.CS      HAS200   131.194.131.27  CS-Admin   I-P133        32   5400  CD  NT 4.0               Graphics-Lab
 Cressida.CS    HAS201H  131.194.131.5   Prather    I-P200        80   2000  CD  Linux                Faculty-WS, (Web, PPP)-Server
 Deimos.CS      HAS201F  131.194.131.23  Myers      I-P450       320   6000  CD  NT 4.0               Faculty-WS 
                HAS201F                  Myers      I-P166        64   2000  CD  NT 4.0               Faculty-WS
 Dwarf1.CS      HAS200   131.194.131.71  CS-Admin   2-I-PIII550 1024  18200  CD  Linux                Beowulf 
 Dwarf2.CS      HAS200   131.194.131.72  CS-Admin   2-I-PIII550 1024  18200  CD  Linux                Beowulf 
 Dwarf3.CS      HAS200   131.194.131.73  CS-Admin   2-I-PIII550 1024  18200  CD  Linux                Beowulf 
 Dwarf4.CS      HAS200   131.194.131.74  CS-Admin   2-I-PIII550 1024  18200  CD  Linux                Beowulf 
 Dwarf5.CS      HAS200   131.194.131.75  CS-Admin   2-I-PIII550 1024  18200  CD  Linux                Beowulf 
 Dwarf6.CS      HAS200   131.194.131.76  CS-Admin   2-I-PIII550 1024  18200  CD  Linux                Beowulf 
 Dwarf7.CS      HAS200   131.194.131.77  CS-Admin   2-I-PIII550 1024  32200  CD  Linux                Beowulf 
 Elara.CS       HAS201G  131.194.131.169 Allen      I-P133        64   6400  CD  NT 4.0               Faculty-WS
 Grumpy.CS      HAS330   131.194.131.32  Pitts      2-I-PIII550  512   9100  CD  NT 4.0               VR-Lab
 Hebe.CS        HAS201L  131.194.131.186 Massingill I-PII400     128  25376  CD  Linux/NT 4.0         Faculty-WS
 Io.CS          HAS339A  131.194.131.16  Eggen      2-I-PIII500  128   8000  CD  Linux/NT 4.0         Faculty-WS, PPP-Server, Beowulf
 Janus00.CS     HAS228   131.194.131.150 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus01.CS     HAS228   131.194.131.151 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus02.CS     HAS228   131.194.131.152 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus03.CS     HAS228   131.194.131.153 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus04.CS     HAS228   131.194.131.154 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus05.CS     HAS228   131.194.131.155 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus06.CS     HAS228   131.194.131.156 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus07.CS     HAS228   131.194.131.157 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus08.CS     HAS228   131.194.131.158 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus09.CS     HAS228   131.194.131.159 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus10.CS     HAS228   131.194.131.160 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus11.CS     HAS228   131.194.131.161 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus12.CS     HAS228   131.194.131.162 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus13.CS     HAS228   131.194.131.163 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus14.CS     HAS228   131.194.131.164 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus15.CS     HAS228   131.194.131.165 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus16.CS     HAS228   131.194.131.172 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus17.CS     HAS228   131.194.131.173 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus18.CS     HAS228   131.194.131.174 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus19.CS     HAS228   131.194.131.175 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus20.CS     HAS228   131.194.131.176 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Janus21.CS     HAS228   131.194.131.177 CS-Admin   I-PIII500    128  10200  CD  Linux/W2K            Unix-Lab, NIS-client, Beowulf
 Krypton.CS     HAS339B  131.194.131.79  Hicks      I-PIV1400    256  40000  CD  W2KServer            Faculty-Lab
 Larissa.CS     HAS330A  131.194.131.193 Pitts      HP                           HP-JetDirect         HP Print Server
 Laurel.CS      HAS330   131.194.131.21  Pitts      I-PIV1400    256  40000  CD  W2K                  Faculty-WS
 Leda.CS        HAS201C  131.194.131.178 Howland    Mac9500      128   6000  CD  Linux/MacOS          Faculty-WS, (Web, PPP, DNS)-Server
 Louie.CS       HAS330A  131.194.131.187 Pitts      I-PIII1000   256  10000  CD  W2K                  Faculty-WS
 Metis.CS       HAS329   131.194.131.39  CS-Admin   I-P200        32   9600  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Miranda.CS     HAS329   131.194.131.15  CS-Admin   I-P133       128   9600  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Moof.CS        HAS201N  131.194.131.60  Konstam    I-P233        64   5000  CD  Linux/Win95          Faculty-WS, PPP-Server
 Nemesis.CS     HAS329   131.194.131.59  CS-Admin   I-PPro-200    96   9800  CD  Linux/NT 4.0         CS-Lab, NIS-client
 Nereid.CS      HAS200   131.194.131.40  CS-Admin   SGI-Indy      32   2000      Irix 5.3             Graphics-Lab, NIS-client
 Oberon.CS      HAS201J  131.194.131.35  CS-Admin   I-P233       128   6000  CD  Linux/W2K            Faculty-WS
 Pandora.CS     HAS201   131.194.131.57  CS-Admin   I-P133        32   1000  CD  NT 4.0               Secretary-WS ()
 Phoebe.CS      HAS201   131.194.131.1   CS-Admin   I-P133        32   1000  CD  NT 4.0               Secretary-WS (Barb)
 Portia.CS      HAS201   131.194.131.56  CS-Admin   HP4050        16             HP JetDirect         HP Print Server
 Prometheus.CS  HAS200   131.194.131.61  Eggen      BeBox-2-603   48    540  CD  BeOS                 Graphics-Lab
 Puck.CS        HAS200   131.194.131.8   CS-Admin   SGI-O2        64   2000  CD  Irix 6.2             Graphics-Lab, NIS-client
 Rhea.CS        HAS201   131.194.131.28  CS-Admin   HP-500X       16             HP-JetDirect         HP Print Server
 Satori.CS      HAS330A  131.194.131.69  Pitts      2-I-P400      64  10800  CD  NT 4.0 Server        Faculty-WS, NT-Server
 Shrew.CS       HAS339A  131.194.131.4   Eggen      I-PIV1400    256  40000  CD  Linux/W2K            Faculty-WS
 Sleepy.CS      HAS330   131.194.131.33  Pitts      2-I-PIII550  512   9100  CD  NT 4.0               VR-Lab
 Sneezy.CS      HAS330   131.194.131.34  Pitts      2-I-PIII550  512   9100  CD  NT 4.0               VR-Lab
 SnowWhite.CS   HAS200   131.194.131.78  CS-Admin   4-I-PIII550 4096  72700  CD  Linux                Beowulf
 Sol.CS         HAS120   131.194.131.168 CS-Admin   2-I-PIII550 1024  51834  CD  Linux                (NFS, NIS, SMB, MAIL, Web, PPP, Unix-Print)-Server
 Stylus.CS      HAS201   131.194.131.114 CS-Admin   HP4000N        8             HP JetDirect         HP Print Server
 Tethys.CS      HAS330   131.194.131.44  Pitts      VR-Glove                                          VR-Lab
                HAS201E  131.194.131.58  Semmes     I-P450        64   4000  CD  NT/ 4.0              Faculty-WS
 Thebe.CS       HAS201E  131.194.131.58  Semmes     I-PIII733    128  10200  CD  Linux/W2K            Faculty-WS
 Thor.CS        HAS200   131.194.131.31  CS-Admin   SGI-RealEng  128   2000  CD  Irix 6.1             Graphics-Lab, NIS-client
 Titania.CS     HAS201   131.194.131.6   CS-Admin   Mac7500       32   1500  CD  Linux/MacOS          Graphics-Lab, NIS-client
 Tori.CS        HAS330   131.194.131.55  Pitts      2-I-PIII733  128   9000  CD  W2K-Server           Faculty-WS, W2K-Server
 Triton.CS      HAS200   131.194.131.37  CS-Admin   SGI-I-II-E   128   4000  CD  Irix 5.3             Graphics-Lab, NIS-client
 Umbriel.CS     HAS201   131.194.131.41  CS-Admin   Mac7500       32   1500  CD  Linux/MacOS          Graphics-Lab, NIS-client
 Uranus.CS      HAS330A  131.194.131.11  Pitts      I-P366       128   4600  CD  Win98                Faculty-WS
 Venus.CS       HAS329   131.194.131.2   CS-Admin   I-P133        64   8600  CD  Linux/W2K            CS-Lab, NIS-client
 Xena00.CS      HAS342   131.194.131.90  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena01.CS      HAS342   131.194.131.91  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena02.CS      HAS342   131.194.131.92  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena03.CS      HAS342   131.194.131.93  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena04.CS      HAS342   131.194.131.94  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena05.CS      HAS342   131.194.131.95  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena06.CS      HAS342   131.194.131.96  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena07.CS      HAS342   131.194.131.97  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena08.CS      HAS342   131.194.131.98  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena09.CS      HAS342   131.194.131.99  CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena10.CS      HAS342   131.194.131.100 CS-Admin   I-PIII550    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena11.CS      HAS342   131.194.131.101 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena12.CS      HAS342   131.194.131.102 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena13.CS      HAS342   131.194.131.103 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena14.CS      HAS342   131.194.131.104 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena15.CS      HAS342   131.194.131.105 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena16.CS      HAS342   131.194.131.106 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena17.CS      HAS342   131.194.131.107 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena18.CS      HAS342   131.194.131.108 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena19.CS      HAS342   131.194.131.109 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena20.CS      HAS342   131.194.131.110 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf
 Xena21.CS      HAS342   131.194.131.111 CS-Admin   I-PIII733    128  10200  CD  Linux/W2K            WS-Lab, NIS-client, Beowulf

What are the lab access hours?

Computer labs in most buildings are open on a daily basis until 12:00 p.m. Most computer labs have doors with numeric keypad locks. After 5:00 p.m. lab doors are locked to provide security and access to students who know the lock access codes. Computer Science Department machines, being Unix based, are accessible 24 hours per day over the internet. This allows convenient access to machines and software from other locations, such as residence hall locations.

What networks are available?

The campus internet provides Microsoft SMB networking services, TCP/IP and AppleTalk networking protocols. Higher level protocols such as WWW, FTP, e-mail, USENET, etc., are also available. The Trinity internet is connected to the Internet through a firewall so that all machines, including student owned machines located in residence halls, have the full range of Internet services, but are protected by the firewall from outside access. Students are able to buy, for a nominal fee, a network connection package which includes a network interface (if necessary) and network software drivers and utilities. Some limited dial-up access facilities are available to support students, faculty and staff who live off campus, however, most off campus use of Trinity's networks comes through commercial Internet Service Providers.

How much mathematics do I have to take?

There are a variety of computing career opportunities for students who have learned a minimal amount of mathematics. Computer Science majors are required to take MATH 1311 (Calculus I) and at least two of the courses MATH 1312 (Calculus II), 1320 (Statistical Methods), 2324, PHIL 2340 (Symbolic Logic)

Are computer science scholarships available?

Several computer science students have received prestigious scholarships for undergraduate research. One of our students was awarded the Goldwater Scholarship, which amounted to approximately $7000.00 per semester. One of our Spring 1995 graduates received a National Science Foundation Fellowship to pursue a Ph.D. in computer science. This award was one of only 43 made to computer science students nationwide and covered all expenses at the University of Texas at Austin. Paradigm Simulation, Inc., Old Crows Foundation, USAA and Trident each have offered several scholarships for computer science students. The Department grants the Turing Award, Charles Babbage Award and SGI Award to the top graduating seniors in research and academic achievement, respectively. In addition, the Department maintains a file on scholarships and fellowships available to our students and always encourages students to seek these awards.

Do computer science graduates attend graduate school?

Recent graduates have been accepted directly into master's and doctoral programs at Princeton, Yale, Purdue, Ohio State, Penn State, University of California at Davis, University of Tennessee, University of Texas at Austin, Texas A&M, Duke, University of New Mexico, University of Wisconsin, Arizona State, Brown University, California Institute of Technology, Carnegie Mellon University, Harvard University, Indiana University, Michigan Institute of Technology, Notre Dame University, Pepperdine University, Rice University, Southern Methodist University, University of Colorado at Boulder, University of Houston, University of North Carolina at Chapel Hill, University of Oregon etc. Graduates have also entered law schools at Pepperdine, Harvard, Washington and Lee University and the University of Texas. Our graduates have received scholarships and fellowships from individual universities and the National Science Foundation. Recently, one of our graduates received one of only 42 National Science Foundation scholarships which covered all expenses for a Ph.D. degree at the school of her choice. The number of graduates attending graduate school varies from year to year. Recently, intensive job recruiting and high salaries have caused a decrease in the number of students entering graduate school. Also, some employers provide job benefits which pay for graduate school.

What type of jobs do your graduates accept?

While in their undergraduate studies, students may secure part-time jobs, internships and summer employment with the many companies that call the Department seeking assistance. Many of these positions lead to full-time employment after graduation. About half of our graduates go on to work with larger companies such as Apple, IBM, Microsoft, Cisco, Texas Instruments, Ferranti International Control, Exxon, TRW, Fairchild Aircraft, Texaco, Motorola, General Dynamics, Tesoro Petroleum, Paradigm Simulation, Inc., EDS, USAA, UNISYS, EDP, DSC, Metier Management Systems, Southwestern Bell, Lockheed, USAF, Sandia National Laboratory, Apple, Dell, Compaq, Chrysler Corporation, Arthur Andersen, Southwest Research Institute, Origin Systems, etc. Because of the wide variety of opportunities for summer internships, undergraduate research and the extensive selection of elective courses, graduates accept jobs involving systems analysis, software design, software testing, computer graphics, database management, research and design as well as programming. Starting salaries for last year's graduates ranged from the high 40's to the mid 50's. Several graduates received signing bonuses as well.

What are the career opportunities in computer science?

The Department offers a program which leads to a Bachelor of Science degree with a major in computer science. A wealth of opportunity is open to a student who earns this degree. Because the discipline of computer science is experiencing explosive growth, it is estimated that the need for experienced professionals in this field will double by the year 2002. Several recent Trinity computer science graduates, who have chosen advanced studies, have been successful in gaining admissions to doctoral programs at the finest universities. Other recent graduates have entered highly sought industrial positions. Cisco, IBM, Exxon, EDP, Arthur Andersen, University of Texas Medical Center, Armstrong Laboratory and Southwest Research Institute are examples of companies who recruit undergraduate summer interns and co-op applicants. These positions often lead to permanent positions with the company.

The policy of the Department is to provide theory courses essential to graduate school, as well as applied courses essential in industry. Extensive advising sessions enable students to select courses which best compliment their occupational goals. Many doctoral programs prefer students which have the combination of theory course-work, as well as practical application courses. All students are encouraged to take the Graduate Record Exam (GRE).

Can students participate in research projects?

More than one third of our undergraduate majors are actively involved in research with a faculty mentor. The Departmental computing laboratories support research projects in computer graphics, virtual reality, genetic algorithms, software engineering, functional programming, artificial intelligence, parallel processing, combinatorial mathematics and related fields. The Department recently completed a National Science Foundation Research Experience for Undergraduates program. This three year REU grant brought undergraduate students to the Trinity campus during the summer to work on virtual reality research projects. The Department encourages student researchers to publish research results by faculty co-authorship of papers and by student paper participation in the National Undergraduate Research Conference each year. During the last three years, student researchers have produced an average of 12 papers per year.

Some of our majors choose to complete a three semester Bachelor's thesis or an Honors thesis. Thesis options involve research and thesis writing as a substitute for completion of all or part of the senior software engineering project.

Who are the computer science faculty?

Many of our faculty have taught at large universities where class size is sometimes larger than 100 students. We are pleased that Trinity offers the opportunity to work with talented young people in much smaller classes. Student-faculty relationships are fostered by classroom interaction, office visitations, social gatherings, research collaborations, professional organizations, atheletic competition and programming competition.

MIRELA DJORDJEVIC  
Rank Visiting Assistant Professor
Degrees Ph.D. University of Maryland
Research Interests Programming Languages
MAURICE EGGEN  
Rank Associate Professor
Degrees B.S., Northern Montana College, M.A., Ph.D., Western Michigan University
Research Interests Combinatorics, Numerical Algorithms, Parallel Processing, Software Engineering
Hobbies Basketball, Racquetball, Music, Audio & Video
THOMAS E. HICKS  
Rank Associate Professor
Degrees B.S., M.S., Ed.D., West Virginia University
Research Interests Software Engineering, Software Testing, Data Structures, Interactive Systems Design
Hobbies Bridge, Golf, Computers, Chess and Logic Games
JOHN E. HOWLAND  
Rank Professor
Degrees B.S., Anderson College, M.S., Ohio State University, Ph.D. University of Oklahoma
Research Interests Computer Graphics, Functional Languages, Human Computer Interface
Hobbies Marathon Racing, Hunting
AARON H. KONSTAM  
Rank Professor Emeritus
Degrees B.S. Polytechnic Institute of Brooklyn, Ph.D. Pennsylvania State University
Research Interests Expert Systems, Genetic Algorithms, Parallel Programming Languages
Hobbies Traveling, Bicycling
BERNA MASSINGILL  
Rank Assistant Professor
Degrees B.S. University of Texas at Austin, M.S., Ph.D. California Institute of Technology
Research Interests Parallel and Distributed Computing, Design Patterns, Formal Methods
Hobbies  

J. PAUL MYERS  
Rank Associate Professor
Degrees B.A., M.S., M.A., Ph.D., University of Denver
Research Interests Software Engineering, Software Testing, Constructivity, Logic and Computer Science
Hobbies Fencing, Chess, Music, Twin Peaks
GERALD N. PITTS  
Rank Caruth Distinguished Professor and Chair
Degrees M.S. American Technological University, B.A., M.S., Ph.D., Texas A&M University
Research Interests Expert Systems, Intelligent Agent Simulation, Operating Systems, Network Design,
  Artificial Intelligence, Software Engineering, Virtual Reality
Hobbies Hunting, Water Skiing, Classic Car Restoration, Weight Lifting
RONALD E. PRATHER  
Rank Professor Emeritus
Degrees B.S., M.S., M.A., University of California, Berkeley, Ph.D., Syracuse University
Research Interests Software Engineering, Software Metrics, Programming Languages,
  Theory of Computation, Computational Musicology
Hobbies Music

PAT SEMMES

 
Rank Instructor
Degrees B.A. The American University, M.A., University of Maryland,
  Ph.D. University of Texas at Austin
Research Interests Mathematics Education, Computer Science Education
Hobbies Walking

What are the requirements for a computer science major?

The Major

The requirements for the degree of Bachelor of Science with a major in Computer Science are as follows:

  1. The common curriculum
  2. Departmental requirements:

    42 semester hours of computer science including:

    1. The Principles:

      CSCI 1320, 1321, 2320, 2321, 2322, 3320, 3321, 4320

    2. Additional Requirement:

      CSCI 1323

    3. Professional/Ethical/Design Seminar (3 hours)

    4. Senior Software I, CSCI 4285 and Senior Software II, CSCI 4286; or Senior Software I, CSCI 4285 and Senior Thesis, CSCI 4295; or Honors Reading, CSCI 3398 and Honors Thesis, CSCI 4398 and 4399

    5. Sufficient computer science electives to total 42 semester hours

  3. Additional requirements include MATH 1311 and two of the following courses:

    MATH 1312, 1320, 2324, PHIL 2340, CSCI 2324

  4. Electives sufficient to total 124 semester hours

Guidelines for Acceptance of Majors

FULL-ACCEPTANCE is granted if the following requirements are met at the time of application:

  1. Completion of CSCI 1320, 1321, 1323 and 2322 with grades of C or better.

  2. Completion of MATH 1311 with a grade of C or better.

  3. Good academic standing at the university

PROVISIONAL-ACCEPTANCE may be granted if it is apparent that the applicant can meet the requirements for full acceptance by the end of the semester in which application is made. If provisional acceptance is not removed in the semester following application, the application will be canceled. The student may re-apply in a future semester.

Transfer Students will be accepted provisionally pending completion at Trinity of at least one upper division Computer Science course with a grade of C or better, and transfer hours equivalent to CSCI 1320, 1321, 1323, and 2322.

Do you have an honors program?

Honors in Computer Science

Requirements:

  1. Overall grade point average of at least 3.3.

  2. Grade point average of at least 3.3 in Computer Science.

  3. Two faculty letters of recommendation.

  4. Application for admission to the honors program in the fall semester of the junior year. Application is made to the chair of the Computer Science department.

  5. Applications must be approved by majority vote of the faculty of the Computer Science department.

  6. Identification of the faculty committee and submission of the thesis proposal during the spring semester of the junior year. The thesis committee consists of three Trinity faculty members, two of which must be from Computer Science. (The third may also be from Computer Science.)

  7. Register for CSCI 3398, Honors Reading, during the spring semester of the junior year. Note: Only 3398 may be used as a Computer Science Major Elective, counting toward the required 42 hours.

  8. Register for CSCI 4398, Honors Thesis, during the fall semester of the senior year. Note: 4398 is required in addition to the 42-hour requirement.

  9. Register for CSCI 4399, Honors Thesis, during the spring semester of the senior year. Note: 4399 is required in addition to the 42-hour requirement.

  10. The requirement of CSCI 4286 is met for those students successfully completing the Honors Thesis, CSCI 4398 and 4399.

  11. Students must make formal presentation and defense of the Honors Thesis during the spring semester of the senior year.

  12. If the student successfully completes each of the above requirements, then the student is a candidate for Honors in Computer Science, and is recommended to the Vice President for Academic Affairs for graduation with Honors.

  13. Successful thesis will be bound and placed in the library. Binding costs will be paid by the student.

Is there a computer science minor?

Minor in Computer Science

For the liberal arts student, the department offers a minor in Computer Science. This minor is designed to provide students with entry level career skills in computer science, as well as prerequisite preparation for graduate study in applied areas of computing science. This minor consists of at least 21 hours of Computer Science and at least 6 hours of Mathematics.

The Computer Science requirements are CSCI 1320, 1321, 1323, 2322, and 2320, plus at least three additional upper division Computer Science electives.

The Mathematics requirements are MATH 1311 and at least one of MATH 1312, 1320, 2324, PHIL 2340, or CSCI 2324.

Do you have any other minor programs?

Minor in Management Information Systems

For the business oriented student, the department offers a minor in Management Information Systems. This minor is designed to provide students with some knowledge of business principles and the necessary background to permit them, through the use of computer operations, to efficiently manage and transmit information.

The requirements are as follows:

  1. Those courses required for the B.A., B.S., or minor in Business Administration;

  2. CSCI 1302, 1320, 1321, 1323, 2320, and one of CSCI 3352, 3353, or 3343.

What are the computer science course offerings?

Each of the following courses is offered at least once each year. Note that these course offerings include some courses which are offered only at the graduate level at some colleges and universities.

Service Courses

1300 Essential Computing Skills

An introduction to computer skills. Computing hardware, software, files and formats. Text processing. Numbers and quantitative analysis. Information structure and retrieval. Graphics and visualization. Communication, networking and the World Wide Web. Computer ethics, privacy and legal use of software and data. Solution of several problems illustrating each of these skill areas.

No prerequisites.

1101 Laboratory for Great Ideas in Computer Science

Laboratory experiments in computer science. Techniques for constructing experiment software and analysis of experimental data.

Prerequisite: None. Must be taken concurrently with CSCI 1301.

1301 Great Ideas in Computer Science

Introduction to computer science topics for students majoring in disciplines other than computer science. Topics include computer organization, computer arithmetic, computer circuits, algorithms, data structures, programming methodology, software engineering, language translation, program execution time, computer networks, parallel computation, computability and artificial intelligence. Impact of computer science on modern society.

Prerequisite: None. Must be taken concurrently with CSCI 1101.

1302 Introduction to Computing: Business Applications

An introduction to computers and programming with special emphasis on applications for non-scientists, including business and data processing. Introduction to programming in BASIC. Applications packages including spreadsheet, database and word processing. Computer solution of several business and data processing applications and interpretation of results. No credit after completion of CSCI 1303 or 1304.

Prerequisite: None.

1303 Introduction to Computing for Scientists

An introduction to computers and programming with special emphasis on applications in the sciences and mathematics. Programming in a high level programming language. Computer solution of several science and mathematics applications and interpretation of results. No credit after completion of CSCI 1302 or 1304.

Prerequisite: None.

1304 Computers and Society

An examination of the impact of computer technology on issues of society and culture. The course will contain several components: an introduction to computing (software and hardware concepts); an introduction to problem-solving using one or more high-level languages / software applications to include information retrieval and processing (numeric, text, and graphics); computer communications; and discussions of the uses and ethical issues surrounding computers in our society.

No credit after completion of CSCI 1300, 1302, or 1303.
Prerequisite: None.

Courses for Computer Science Majors

Lower Division

1320 Principles of Algorithm Design I

Introduction to the notion of an algorithm. Survey of algorithmic problem solving principles in relation to computer solutions: divide and conquer, searching and sorting strategies, recursion, and structured programming. Top-down design and analysis of algorithms. Computer organization. Computer programming solutions to several laboratory exercises. May be taken concurrently with CSCI 1323 or 2322.

Prerequisite: None.

1321 Principles of Algorithm Design II

Algorithm development, program logic, program design strategies, program implementation strategies. Program correctness and program verification, algorithm analysis and computational complexity. User defined structures, data types, specification requirements, sequential and direct access files, sorting, searching, and computer organization. Abstract data types including stacks, queues, and linked lists. Computer programming solutions to several laboratory exercises. May be taken concurrently with CSCI 1323 or 2322.

Prerequisite: CSCI 1320 or consent of instructor.

1323 Discrete Structures

Algebra of sets including mappings, relations and functions. Algebraic structures including semi-groups, groups and propositional logic. Boolean algebra. Elements of the theory of directed and undirected graphs. Application of these structures to various areas of computer science. May be taken concurrently with CSCI 1320 and CSCI 1321.

Prerequisite: None.

2194 Professional/Ethical/Design Seminar

Emphasis changes each semester. Topics include professional concerns (legal issues including software licensing, warranties, patents, copyrights, etc.) and history of the field, ethical issues in computing, introduction to large-scale design through examples of good versus bad design.

Prerequisite: Consent of instructor.

2318 Computers in Music

Software tools for music applications. Historical development of musical encoding systems, including DARMS, MUSTRAN, SML, and MIDI. Musical applications programming. Chronological survey of the uses of computers in music. Common themes in the development of music programming languages. Examples of the use of sophisticated software in the development of solutions to elementary musical analysis tasks.

Prerequisites: Sophomore standing, computer literacy and music literacy.

2320 Principles of Data Abstraction

Abstract data types and their implementation in an object-oriented environment. Axiomatic systems describing the classical computer science data structures: stacks, queues, lists, trees, graphs, and the like. Analysis of the computational complexity of alternative implementation strategies in the context of the typical algorithmic applications.

Prerequisite: CSCI 1321.

2321 Principles of Computer Design

A study of computer organization and design including emphasis on logical design, the role of performance, the structure of instructions, computer arithmetic, processor control and methods of performance enhancement. Some attention will also be given to assembly programming.

Prerequisite: CSCI 1321.

2322 Principles of Functional Languages

An introduction to functional programming. Functional composition, recursion and iteration. Procedure and data abstraction using functions. Managing state, streams, delayed evaluation and continuations. Using functional languages as an analytic notation for reasoning about programs. Solution of several laboratory problems.

Prerequisite: None; may be taken concurrently with CSCI 1320 or 1321.

2324 Numerical Calculus

Introduction to the numerical algorithms fundamental to scientific computer work. Elementary error analysis, interpolation, quadrature, linear systems of equations, and introduction to the numerical solution of ordinary differential equations. (Also listed as MATH 2324.)

Prerequisites: CSCI 1320, MATH 1311.

Upper Division

3-90 Directed Study

Credit will vary depending on work done.

Prerequisites: Consent of department chair and instructor.

3-94 Seminar

Topics will vary depending on student interest. May be taken for a maximum of six (6) semester hours credit.

Prerequisite: Consent of instructor.

3-98 Honors Reading

Independent study in selected areas in preparation for Honors Thesis. May be taken up to three hours of credit.

Prerequisites: Consent of instructor and Commission on Honors Studies.

3194 Professional/Ethical/Design Seminar

Emphasis changes each semester. Topics include professional concerns (legal issues including software licensing, warranties, patents, copyrights, etc.) and history of the field, ethical issues in computing, introduction to large-scale design through examples of good versus bad design.

Prerequisite: CSCI 2194 or consent of instructor.

3291 Current Topics in Computer Science

New developments in the field of computer science, beyond the scope of standard courses, of interest to faculty and students. May be taken more than once, as long as course content changes.

Prerequisite: CSCI 2320; others determined by course content.

3320 Principles of Theoretical Computer Science

Core topics from finite Automata, languages and the theory of computation. The Chomsky hierarchy, abstract machines and their associated grammars. Models of computation (e.g., Turing machines), Church's thesis, unsolvability and undecidability. Computational complexity, intractability and NP-completeness.

Prerequisites: CSCI 2320, 1323, and junior standing.

3321 Principles of Software Engineering

Issues involved in developing large-scale software systems. Models for the software life-cycle; techniques and tools of analysis, design, programming, testing, debugging, and maintenance. May include formal methods, CASE, expert systems, case-studies.

Prerequisites: CSCI 2320, 1323, and junior standing.

3342 Computer Networks

Local area networks, high-speed networks and bridges. Wide area networks and internets. Network protocols including OSI protocols. Network security, reliability and performance. Laboratory experience with one or more network protocols.

Prerequisite: CSCI 2320.

3343 Database Systems

The goals of DBMS including data independence, relationships, logical and physical organizations, schema and subschema. Entity relationship diagrams. Hierarchical, network and relations models. Data definition and data manipulation languages. Query languages, relational algebra and relational calculus. Data normalization techniques, data security integrity and recovery. Case studies of several existing systems.

Prerequisite: CSCI 2320.

3344 Artificial Intelligence

The purpose of this course is to update the student on state of the art artificial intelligence concepts, such as heuristic programming, state-space search techniques, and/or graphs for problem solving, game playing techniques, theorem proving procedures for propositions and first-order logic, knowledge representation and examples of knowledge-based systems.

Prerequisites: CSCI 1323, 2320.

3351 Numerical Analysis

Methods of solution of algebraic and transcendental equations, simultaneous linear algebraic equations, numerical integration and differentiation, initial and boundary value problems or ordinary differential equations. (Also listed as MATH 3351.)

Prerequisites: CSCI 1321, MATH 2336.

3352 Simulation Theory

Introduction to simulation, discrete simulation models, queuing theory and stochastic processes. Survey of simulation languages. Simulation methodology including generation of random numbers, design of simulation experiments and validation of simulation models.

Prerequisites: CSCI 1320 or 1303 and Knowledge of Statistics.

3353 Graphics

Survey of display devices, display data structures, graphics input, 2D transformations, windowing, clipping, viewing, 3D transformations, perspective, depth, hidden line removal. Graphics programming techniques and several laboratory problems using available graphics devices.

Prerequisites: MATH 1311, CSCI 2320.

3361 Analysis of Algorithms

Complexity of algorithms, time and space requirements and trade-offs. Searching and sorting, mathematical algorithms, graph and combinatorial algorithms. Divide and conquer, branch and bound, dynamic programming, exhaustive search. Limitations, intractability and NP-completeness, approximation algorithms.

Prerequisites: CSCI 1321 and 1323.

3366 Introduction to Parallel Processing

An introduction to parallel processing with particular emphasis on algorithm development. Comparison between sequential and parallel algorithm development. Survey of hardware and software for parallel processing. Comparison of symmetric multiprocessors and parallel processors. Discussion of architectures and mappings of virtual to physical machines. Models of parallel computation including parallel random access machines, circuits and networks. Students will be expected to implement several projects in a suitable parallel programming environment.

Prerequisites: CSCI 2320 and junior standing.

3368 Principles of Programming Languages

An introduction to the syntax and semantics of programming languages. This will include a study of data structures and control structures, proof of programs, a comparison of functional and imperative programming languages, parameter passing, storage allocation schemes and concurrent language features.

Prerequisite: CSCI 2320.

4194 Professional/Ethical/Design Seminar

Emphasis changes each semester. Topics include professional concerns (legal issues including software licensing, warranties, patents, copyrights, etc.) and history of the field, ethical issues in computing, introduction to large-scale design through examples of good versus bad design.

Prerequisite: CSCI 3194 or consent of instructor.

4285 Senior Software Project I

The analysis and design of an actual large scale software system. Application of the analysis and design tools within the software life cycle presented in CSCI 3321 (Software Engineering). Students work in teams under direct supervision of the faculty.

Prerequisites: 21 hours of Computer Science, including CSCI 3321.

4286 Senior Software Project II

The implementation, testing and maintenance of the large scale software systems designed in CSCI 4285. Students working in teams under direct supervision of faculty implement and demonstrate the deliverable software package.

Prerequisite: CSCI 4285.

4295 Senior Thesis

A significant research project chosen by the student and completed under the direction of a thesis advisor (a Computer Science department faculty member). The purpose of a research project is to introduce the student to research methods and investigative techniques sufficient to produce research results which are a recognized contribution to the body of knowledge encompassing a Computer Science area. Each thesis will be bound with copies being placed in both the university library and the department.

Prerequisites: Senior level status and acceptance by a thesis advisor.

4320 Principles of Operating Systems

Introduction to operating systems, batch systems, multiprogramming systems, multiprocessor systems, input-output systems, interrupt handling, language processors, file management systems, concurrency, teleprocessing systems.

Prerequisite: CSCI 2321.

4353 Advanced Graphics

Geometric modeling, algorithms for hidden surface removal, shading models, rendering, texture mapping, reflectance mapping, ray tracing and radiosity. Introduction to animation. Several laboratory programming problems using available graphics devices.

Prerequisite: CSCI 3353.

4365 Advanced Theoretical Computer Science

Advanced topics in theory. Closure properties, ambiguity, contact-sensitive and recursively enumerable languages, alternate models of computation, non-determinism, decidability, Ackermann's function, computational complexity speed-up.

Prerequisite: CSCI 3320.

4398, 4399 Honors Thesis

Individual research and scholarly investigation under faculty supervision leading to the preparation of an Honors Thesis. To be taken only by Senior Honors students in both terms of their Senior year. Includes participation in Senior Colloquium where students present reports on their Thesis work.

What special topics courses have you offered recently?

Some universities offer special topics courses, whose content changes from time to time, to supplement their regular course offerings. The Department has offered seminar and special topic courses on:

Is there a schedule which shows the proper sequence for courses in the computer science major?

\includegraphics[totalheight=6in]{schedule.eps}



Footnotes

... information1
Peter Denning et. al., ``Computing as a Discipline'', Communications of the ACM, Volume 32, Number 1, January, 1989, 9-23.


2005-08-20