Santa Clara University
School of Engineering Graduate Programs 2002-2003

Search the Bulletin:

9

Department of Computer Engineering

Professors: Ruth E. Davis, Nam Ling (Associate Dean)
Associate Professors: Ronald L. Danielson, Daniel W. Lewis (Chair), Qiang Li, Weijia Shang, Thomas Schwarz
Assistant Professors: Darren Atkinson, Hans Peter Dommel, Silvia Figueira, JoAnne Holliday (Clare Booth Luce Professor), John Noll
Senior Lecturer: Neil Quinn
Lecturer: Rani Mikkilineni

OVERVIEW

“Computing sits at the crossroads among the central processes of applied mathematics, science, and engineering. The three processes have equal and fundamental importance in the discipline, which uniquely blends theory, abstraction, and design.”

  • 1989 Task Force Report on the Core of Computer Science prepared by the ACM and the IEEE Computer Society.

The most successful graduates in the field of computing are those who understand computers as systems—not just the design of hardware or software, but also the relationships and interdependencies between them and the underlying theory of computation.

The department offers a variety of degree and certificate programs including courses that cover the breadth of the discipline, from the engineering aspects of hardware and software design to the underlying theory of computation.

DEGREE PROGRAMS

In general, no credit is allowed for courses that duplicate prior course work, including courses listed as degree requirements. Students should arrange adjustment of these requirements with their academic advisor when they file their program of studies.

With the prior written consent of the advisor, master’s students may take a maximum of 12 units of course work for graduate credit from selected senior-level undergraduate courses.

Performance in SCU graduate coursework taken as a non-degree student is not considered when evaluating an application for admission into any graduate degree program offered by the department.

Master of Science in Computer Engineering

All students admitted to the MSCE program are expected to already have competence in the fundamental subjects listed below, as required within an accredited program for a B.S. in Computer Engineering or Computer Science. An applicant without such background may still be admitted provided the deficiencies are corrected by SCU coursework that is in addition to the normal degree requirements and that must be completed within the first year of graduate studies. Alternatively, a student may take a similar course at another institution, but must then also take a challenge exam at SCU. The subjects and corresponding SCU courses that may be used to correct the deficiencies include:

  1. Logic design: COEN 21
  2. Data structures, including ADTs: COEN 70
  3. Computer organization and assembly language: COEN 20
  4. Discrete math: AMTH 240
  5. Probability: AMTH 210
  6. One of the following:
    1. Differential equations: AMTH 106
    2. Numerical analysis: AMTH 220 and 221
    3. Linear algebra: AMTH 245 and 246
  7. One additional advanced programming course or one year of programming experience in industry

The SCU courses listed above are considered undergraduate-level and may not be used to satisfy the requirements for the M.S. in Computer Engineering. However, students who have satisfied item 6 above, but who have never studied numerical analysis, may use AMTH 220/221 as free electives; students who have satisfied item 6 above, but who have never studied linear algebra, may use AMTH 245/246 as free electives.

Students must file a program of studies during their first term of enrollment at Santa Clara. The program of studies must include:

  1. MSCE Core: AMTH 377, COEN 210, 233, 256, 283, and one of 260 or 271 or both 207 and 208
  2. MSCE Specialization Track (one of the following):
    1. Software Engineering: COEN 275, 285, 286, 385, and 386
    2. Information Management: COEN 250, 280, 285, and one of COEN 276, 277, or 330
    3. Multimedia Processing: COEN 201, 238, 338, and 4 units from AMTH 211, COEN 202, 290, 339, 340, 343, 346, 336, ELEN 241, 244, or 444
    4. Networking: COEN 236, 237, 330, and 4 units from COEN 331, 335, 336, or 350
    5. Computer Architecture and Systems: COEN 307, 318, 320, and 4 units from COEN 203, 204, 218, 259, 301, 303, 304, 311, 313, 317, 319, or ELEN 473
  3. Issues in Professional Practice: One course from COEN 288, ENGR 201, 210, 230, 300, EMGT 267, 269, 273, or 319
  4. Free Electives: Sufficient units to bring total to at least 45

Note: Students wishing to do a thesis (COEN 497) should consult with their academic advisor regarding a modification of these requirements.

Master of Science in Software Engineering

All applicants for the Master of Science in Software Engineering Program must have a bachelor’s degree from an accredited four-year program. The ideal candidate has completed a bachelor’s degree in Computer Science or Computer Engineering. However, exceptional candidates who hold a bachelor’s degree in another field may apply for consideration if they can clearly demonstrate the ability to perform graduate-level work in software engineering. Individuals who possess a B.S. degree in Computer Science or Computer Engineering are not required to take the Computer Science subject test of the GRE. Individuals with a bachelor’s degree in another field must submit scores of the Computer Science subject test of the GRE, which will be used to assess whether the candidate has the necessary technical knowledge to begin graduate work in software engineering.

The program consists of a software engineering core, a set of software engineering electives, and a Capstone project. The electives expose each student to multiple areas of study within technology, thus providing breadth to their technical proficiency. Students are required to sample courses across diverse software disciplines, including databases, networks, parallel and distributed systems, graphical user interfaces, artificial intelligence, and computer languages. Students must work with their advisor and select 15 units of coursework. The Capstone project comprises three consecutive terms of effort, and provides an opportunity for students to apply their technical breadth and the core engineering principles toward the development of a complex, team-oriented software project. Ideally, projects will involve collaboration with industry. The Capstone integrates the engineering knowledge acquired in the core courses, with the technical breadth acquired in the diverse electives. Thus, each student must complete all requirements of the core prior to registering for the first Capstone project course. They must also have completed 6 units of electives prior to registering for the second Capstone course, COEN 483, to ensure the project teams consist of the appropriate blend of technical background and engineering knowledge.

Students must file a program of studies during their first term of enrollment at Santa Clara. The program of studies must include:

  1. The MSSE Core: AMTH 377, COEN 260, 275, 285, 286, 385, and 386
  2. Software Engineering Electives: 15 units selected in consultation with advisor from courses such as COEN 234, 259, 261, 276, 277, 280, 287, 319, or 366
  3. Software Engineering Capstone Project: COEN 482, 483, and 484
  4. Issues in Professional Practice: COEN 288
  5. Free Electives: Sufficient units to bring total to at least 45

Doctor of Philosophy in Computer Engineering

The Doctor of Philosophy degree is conferred by the School of Engineering primarily in recognition of competence in the subject field and the ability to investigate engineering problems independently, resulting in a new contribution to knowledge in the field.

The work for the degree consists of engineering research, the preparation of a dissertation based on that research, and a program of advanced studies in engineering, mathematics, and related physical sciences. The student’s work is directed by the department, subject to the general supervision of the School of Engineering.

See the section on Academic Regulations for details on admission and general degree requirements. The following departmental information augments the general School requirements.

Preliminary Exam

A preliminary written exam is offered at least once per year by the School of Engineering as needed. The purpose is to ascertain the depth and breadth of the student’s preparation and suitability for Ph.D. work.

Faculty Advisor

The student and their advisor jointly develop a complete program of studies for research in a particular area. The complete program of studies (and any subsequent changes) must be filed with the Graduate Services Office and approved by the student’s Doctoral Committee. Until this approval is obtained, there is no guarantee that courses taken will be acceptable toward the Ph.D. course requirements.

Doctoral Committee

Upon the student’s request, the advisor will form a Doctoral Committee. The committee will consist of at least five members, including the thesis advisor and at least two members from the Computer Engineering Department. The committee must also include at least one member from outside the department, preferably from outside the School of Engineering. The Doctoral Committee will review the proposed program of studies and determine any further changes that may be required prior to approving the program.

Engineer’s Degree in Computer Engineering

The program leading to the Engineer’s degree is particularly designed for the education of the practicing engineer. The degree is granted on completion of an approved academic program and a record of acceptable technical achievement in the candidate’s field of engineering. The academic program consists of a minimum of 45 quarter units beyond the master’s degree. Courses are selected to advance competence in specific areas relating to the engineering professional’s work. Evidence of technical achievement must include a paper principally written by the candidate and accepted for publication by a recognized engineering journal prior to the granting of the degree. A letter from the journal accepting the paper must be submitted to the Office of the Dean, School of Engineering. In certain cases, the department may accept publication in the proceedings of an appropriate conference.

Admission to the program will generally be granted to those students who demonstrate superior ability in meeting the requirements for their master’s degree. Normally, the master’s degree is earned in the same field as that in which the Engineer’s degree is sought. Students who have earned a master’s degree from Santa Clara University must file a new application (meeting deadlines) to continue work toward the Engineer’s degree. A program of studies for the Engineer’s degree should be developed with the assistance of an advisor and submitted during the first term of enrollment.

CERTIFICATE PROGRAMS

Advanced Studies in Software Engineering

This certificate program places an emphasis on methodologies used during the development of large, complex software. The program is appropriate for anyone who is developing new software, maintaining existing software, or who is the technical head of a software development project. In addition to the general requirements, students must have completed prior course work in data structures and analysis of algorithms, software engineering, discrete mathematics, and predicate logic.

Required Courses (10 units)
  1. COEN 286 Software Quality Assurance and Testing (2)
  2. COEN 287 Software Development Process Management (2)
  3. COEN 385 Formal Methods in Software Engineering (2)
  4. COEN 386 Software Architectures (2)
  5. COEN 481 Software Engineering Project (2)
Elective Courses (Select any 6 units)
  1. COEN 261 Structure and Interpretation of Computer Programs (2)
  2. COEN 275 Object-Oriented Analysis and Design (4)
  3. COEN 276 Software Tools Design (4)
  4. COEN 277 Graphical User Interface Design and Programming (2)
  5. COEN 388 Principles of Computer-Aided Engineering Design (2)
  6. EMGT 332 Software Engineering Economics (2)
  7. EMGT 339 Quality Issues in Managing Software (2)
  8. EMGT 341 Software Project Issues (2)

Advanced Studies in High-Performance Computing

This certificate program provides proficiency in high-performance architectures, particularly parallel computing and the software methodologies used with such architectures. The program is appropriate for both computer architects and software developers dealing with large scientific and data-processing applications. In addition to the general admission requirements, students are expected to have completed an introductory-level course in computer architecture and operating systems.

Required Courses (6 units)
  1. COEN 318 Parallel Computation Systems (4)
  2. COEN 319 Advanced Parallel Programming (2)
Elective Courses (Select any 10 units)
  1. COEN 233 Computer Networks (4)
  2. COEN 307 Digital Computer Arithmetic (2)
  3. COEN 311 Comparative Computer Architecture (2)
  4. COEN 313 Advanced Computer Architecture (2)
  5. COEN 320 Computer Performance Evaluation (4)
  6. COEN 330 Network Design, Analysis, and Management (2)
  7. COEN 332 Local Area Networks (2)
  8. COEN 338 High-Performance Data Compression (4)
  9. COEN 358 Introduction to Parallelizing Compilers (4)
  10. COEN 384 Advanced Operating Systems (2)

LABORATORIES

The School of Engineering Design Center has a network of 50 Hewlett-Packard and SUN high-end workstations grouped in two large labs. These workstations run either HP’s UNIX or Sun’s Solaris operating system. In addition, the Design Center houses three 24-seat PC workstation labs for a total of 72 Windows-based computers. Many of the PC workstations are configured to dual-boot with a choice of Windows 2000/XP or LINUX. Terminal emulation software allows all PCs to perform as X-terminals to access the HP and Sun workstations. All systems have large, high-resolution color monitors or LCD displays and are connected by a 100Mbps switched Ethernet network. The Design Center offers more than 25 major commercial software packages including computer-aided design (CAD) and analysis applications for civil, computer, electrical, and mechanical engineering, as well as a variety of programming languages. Advanced color printing, scanning, and plotting capability are available throughout the Design Center. The Design Center also offers a unique multimedia classroom/lab with projection screen capability for UNIX, LINUX, and Windows applications.

The Networking and Parallel Computing Lab supports research in algorithms, protocols, and architectures for parallel and cluster computing, packet switching, internetworking, multipoint communication, and multimedia networking. The lab is equipped with four Linux and two Windows PCs, one Sun Ultra10, one programmable Router, and one HP laserprinter.

The ASIC Testing Laboratory (ATL), operated jointly with the Department of Electrical Engineering, supports research conducted by graduate students from the Electrical Engineering and Computer Engineering departments. Computer-aided testing packages from industry and the public domain are used in such projects as fault analysis on the device level, functional testability measures, partitioning HDL models for testability, and rapid prototyping using field programmable gate arrays (FPGAs).

The Computer Systems and Parallel Processing Research Laboratory supports research in systolic array design, interconnection networks, parallel operating systems, formal design verification, expert system development for architectural design, parallel software development methodology, application-oriented parallel algorithms, and VLSI design.

The Digital Systems Laboratory (operated jointly with the Electrical Engineering Department) provides complete facilities for experiments and projects ranging in complexity from a few digital integrated circuits and other electronic components to complete computer systems. It includes a variety of development systems to support microprocessor-based design, VLSI design, and other computer design projects. It also holds facilities to support digital signal processing projects.

The Distributed Computing Research Laboratory is designed to support a variety of research activities in distributed computing, including parallel architectures; parallel applications; high-performance, high-speed, local area networks; light-weight protocols; and distributed operating systems.

The Multimedia Compression Laboratory supports research in video/audio compression and decompression.

The Multimedia Education Laboratory (operated jointly with the Department of Electrical Engineering) is dedicated to the development and delivery of multi-media educational resources and to the development of tools to create and present these resources. The laboratory is equipped with eight Unix workstations with high-speed ATM networking.

The Software Engineering Research Laboratory is a dedicated facility for the support of various research activities aimed at developing techniques and tools that help produce and validate high-quality software. Specific research activities include formal specification and verification methods/tools, design framework for concurrent systems; Case architect, logic programming paradigms, and automatic reasoning. The lab also supports the SCU Virtual Development Center, a collaborative effort with the Institute for Women and Technology, in which people from the local community brainstorm with students on ways in which technology can improve our lives, and the students interact with the community in the implementation of some of the resulting ideas.

The Storage Technology Laboratory is used primarily for graduate research, although senior projects are encouraged and supported The laboratory is orienting its activities towards storage interfaces and networked storage systems. Technical advances in disk drive technology are tracked and analyzed in terms of emerging applications opportunities. Symposia and workshops on data storage technology are undertaken, and documents of historical interest are produced for general use of the storage industry. Our head/media disk drive spin stand experimental facility has been relocated nearby off-campus and is available for hardware studies.

Other Bulletins

A PDF version of this publication is also available.

To view PDF documents, you'll need Adobe Acrobat Reader.