Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SELF-STUDY
QUESTIONNAIRE FOR REVIEW
of the
COMPUTER SCIENCE PROGRAM
submitted by
California State Polytechnic University, Pomona
Institution
to the
Computing Accreditation Commission
Primary Contact:
Telephone Number:
(909) 869-3447
Electronic Mail:
carich@csupomona.edu
Fax Number:
(909) 869-4733
ABET
Computing Accreditation Commission
111 Market Place, Suite 1050
Baltimore, Maryland 21202-4012
Phone: 410-347-7700
Fax: 410-625-2238
E-mail: cac@abet.org
www: http://www.abet.org/
Page 1 of 224
C3 CS 12/14/04
Table of Contents
I. Objectives and Assessments ...................................................................................................5
A.
B.
C.
D.
E.
F.
Objectives ...........................................................................................................................5
Implementation of Objectives ............................................................................................9
Assessments......................................................................................................................11
Program Improvement......................................................................................................13
Program Evolution............................................................................................................14
Program Current Status ....................................................................................................15
III.Faculty ....................................................................................................................................22
A.
B.
C.
D.
E.
F.
G.
IV.Curriculum ............................................................................................................................81
A.
B.
C.
D.
E.
Computing Facilities.......................................................................................................190
Student Access................................................................................................................193
Documentation................................................................................................................194
Faculty Access................................................................................................................194
Support Personnel...........................................................................................................195
Instructional Assistance..................................................................................................196
Page 2 of 224
C3 CS 12/14/04
Faculty Stability..............................................................................................................197
Faculty Professional Activities.......................................................................................199
Office Support ................................................................................................................200
Time for Administration.................................................................................................200
Adequacy of Resources ..................................................................................................201
Leadership ......................................................................................................................202
Laboratory and Computing Resources ...........................................................................202
Library Resources...........................................................................................................203
Continuity of Institutional Support .................................................................................203
Appendix II. Information on the Unit Responsible for Computer Science Program.......213
A.
B.
C.
D.
Page 3 of 224
C3 CS 12/14/04
Introduction
The Criteria for Accrediting Computer Science Programs are divided into seven major
Categories, each Criterion containing a statement of Intent and Standards. An intent statement
provides the underlying principles associated with a Criterion. In order for a program to be
accredited, it must meet the intent statement of every Criterion.
Standards provide descriptions of how a program can minimally meet the statements of intent.
The word must is used within each standard to convey the expectation that the condition of the
standard will be satisfied in all cases. For a program to meet the intent of a Criterion, it must
either satisfy all the standards associated with that Criterion or demonstrate an alternate approach
to achieving the intent of the Criterion.
For each of the following seven sections, corresponding to each of the seven Categories of the
Criteria, answer all of the questions associated with the standards. If one or more standards are
not satisfied, it is incumbent upon the institution to demonstrate and document clearly and
unequivocally how the intent is met in some alternate fashion.
If you are having more than one program evaluated, particularly if the programs are on separate
campuses, the answers to these questions may vary from one program to another. If this is the
case, please use separate copies of each section for each program, and clearly delineate which
program is being described.
Page 4 of 224
C3 CS 12/14/04
1. Indicate below or attach to this document the programs measurable objectives. These
objectives must include expected outcomes for graduates.
The objectives of the program are described by Educational Objectives, Program Objectives,
and Strategic Goals.
Achieving the Educational Objectives (EOs) prepares students for careers as software
professionals and for graduate study in Computer Science.
The programs Educational Objectives for students are:
EO1
EO2
EO3
EO4
EO5
EO6
Page 5 of 224
C3 CS 12/14/04
EO2
EO3
EO4
EO5
EO6
x
x
Our Educational Objectives and Program Outcomes are supported by specific courses that we
call Witness Coursescourses that are assessed each quarter. Currently, these are the Witness
Courses we are using:
CS 130
CS 140
CS 141
CS 210
CS 240
CS 241
CS 301
CS 311
CS 331
CS 380
CS 420
CS 431
CS 435
CS 463
Discrete Structures
Introduction to Computer Science
Introduction to Programming and Problem-Solving
Computer Logic
Data Structures and Algorithms I
Data Structures and Algorithms II
Numerical Methods
Language Translation and Automata
Design and Analysis of Algorithms
Computer Networks
Artificial Intelligence
Operating Systems
Database Systems
Undergraduate Seminar
Note: CS 140 and CS 141 are evaluated together as a single course; CS educators often call
this CS1. Similarly, CS 240 and CS 241 are evaluated together as a single course; this is often
called CS2.
Page 6 of 224
C3 CS 12/14/04
The relationship of the Witness Courses to our Program Outcomes is shown in the following
table:
Dept Course PO1 PO2 PO3 PO4 PO5
CS 130
x
CS 140
x
x
CS 141
x
CS 210
x
CS 240
x
x
CS 241
x
x
CS 301
x
CS 311
x
CS 331
x
x
CS 380
x
CS 420
x
x
x
CS 431
x
x
x
CS 435
x
x
x
CS 463
x
x
Each Witness Course is assessed at least once per year by the collection of materials and
student work. The collected material is assessed by a group of course instructors who
determine what changes should be made in the course for the following year. The minutes of
these meetings can be found on the web page
http://www.csupomona.edu/~cs/department/assessment/minutes/.
Additional periodic reports concerning assessment can be found on the web page
http://www.csupomona.edu/~cs/department/assessment/.
Witness Courses will change as a new curriculum takes effect in Fall 2008. A discussion of the
changes can be found in
http://www.csupomona.edu/~cs/department/assessment/minutes/minutes_dept_080416.doc.
Each year, the department gathers to discuss Educational Objectives, Program Outcomes, and
Strategic Goals.
Page 7 of 224
C3 CS 12/14/04
Recruit and retain high quality faculty to satisfy student demand for the program.
Provide adequate opportunities for faculty professional growth.
Update curriculum to ensure a modern, comprehensive, standardized program of
instruction.
Manage enrollment to provide an appropriate number of high quality students.
Provide a high level of student support to promote academic success and steady
progress toward degree.
Refresh classrooms and laboratories to provide up-to-date facilities for teaching and
research.
Maintain outreach with industry and the community for curricular feedback and
program visibility.
Offer more service and general education courses in order to smooth out enrollment
swings.
We last assessed progress towards our Strategic Goals in a department meeting in April 2008.
The minutes of that meeting can be found at
http://www.csupomona.edu/~cs/department/assessment/minutes/minutes_dept_080416.doc.
2. Describe how the program's objectives align with your institution's mission.
Cal Poly Pomonas mission is to advance learning and knowledge by linking theory and
practice in all disciplines, and to prepare students for lifelong learning, leadership, and careers
in a changing, multicultural world. The campus motto is Learn by Doing.
There are six major University goals. All of the following goals are essential, and do not
appear in priority order.
Associated program
objectives and goals
University Goal
SG5,6,8
SG1,2,4,5,6
SG7
Note: On the following page is a table that can be filled out with pertinent information relating to
objectives, their measurement, and their effect on the implementation of program improvements.
Page 8 of 224
C3 CS 12/14/04
B. Implementation of Objectives
Please complete the following table with as many objectives as needed.
How measured
When
measured
E01
Quarterly
(collection of
materials and
check off of
Learning Outcomes).
Annually (assessment of
course direction).
E02
E03
Objective
E04
E05
E06
Improvements
Identified
Annually.
Annually.
Improvements
Implemented
Annually.
Annually.
Students and
alumni reported
little learning of
ethics in the
dispersed version.
Annually.
Page 9 of 224
C3 CS 12/14/04
Objective
SG1
SG2
SG3
SG4
SG5
How measured
Faculty growth.
Faculty publications
and conference
attendance.
Comparing our program to ACM-IEEE
CC 2001 and later
standards.
Number of majors.
Number of entering
majors. Free slots in
offered courses.
Student esprit de
corps. Participation
in the student club
and programming
contests.
SG6
Technology survey
of classrooms and
labs.
SG7
Placement of new
graduates. Alumni
survey. Industry
feedback re
graduates and
curriculum.
SG8
When
measured
Improvements
Identified
Improvements
Implemented
Annually.
Annually.
Nonebudget is pitiful.
Annually.
Annually.
Annually.
Annually.
Classrooms needed
new technology.
Annually.
Annually.
Standard I-3. Data relative to the objectives must be routinely collected and documented, and
used in program assessments.
Standard I-4. The extent to which each program objective is being met must be periodically
assessed.
Standard I-5. The results of the programs periodic assessment must be used to help identify
opportunities for program improvement.
Page 10 of 224
C3 CS 12/14/04
C. Assessments
For each instrument used to assess the extent to which each of the objectives is being met by
your program, provide the following information:
1. Frequency and timing of assessments
2. What data are collected (should include information on initial student placement and
subsequent professional development)
3. How data are collected
4. From whom data are collected (should include students and computing professionals)
5. How assessment results are used and by whom
Attach copies of the actual documentation that was generated by your data collection and
assessment process since the last accreditation visit, or for the past three years if this is the first
visit. Include survey instruments, data summaries, analysis results, etc.
Our assessments have involved Course Assessments, Graduating Student Surveys, and an
Alumni Survey.
Course Assessments
This procedure is documented on the Departments assessment web page,
http://www.csupomona.edu/~cs/department/assessment/,
which describes the instruments used to collect data about individual courses. This data is
collected each quarter for each Witness Course.
Annually, the recent instructors (past, present, and future) of a Witness Course will meet to
discuss the material, which has been collected over the past year. The minutes of these course
meetings can be found at
http://www.csupomona.edu/~cs/department/assessment/minutes/.
A typical file is
http://www.csupomona.edu/~cs/department/assessment/minutes/minutes_301_070525.doc,
which can be parsed as CS 301, with the date 07052507 is the year, 05 is the month, and 25
is the day. Course meetings examine how well the Learning Outcomes have been achieved,
and sometimes we propose changes in the course description and Learning Outcomes.
Page 11 of 224
C3 CS 12/14/04
and the survey is administered to students in CS 463 (Senior Seminar) every quarter. Students
in this course are very close to graduation, and we solicit their opinions about our Program
Outcomes and how well we have achieved them. The surveys are discussed in annual reports
(see Assessment Reports on http://www.csupomona.edu/~cs/department/assessment/), and at
our latest full Department meeting about assessment:
http://www.csupomona.edu/~cs/department/assessment/minutes/minutes_dept_080416.doc.
Alumni Survey
In Spring 2007, we contacted all the alumni of the Computer Science program (including the
graduate program), and we asked them to consider our program with respect to an expanded
set of Program Outcomes (loosely approximating what we will use when we finally switch
over to the new ABET criteria). The results of that survey are discussed in
http://www.csupomona.edu/~cs/department/assessment/report_06-07.doc
and
http://www.csupomona.edu/~cs/department/assessment/minutes/minutes_dept_080416.doc.
Alumni Tracking
We are unable to answer ABETs request that we include information on initial student
placement and subsequent professional development. We are not currently tracking our
graduates either immediately upon graduation or afterwards. Frankly, we dont see how to do
this with our current resources. In Spring 2007, the University provided us with mailing labels
for about 2000 alumni of the program; of these, only 54 took the online alumni survey. We can
envision a more active alumni group, but we lack human resources to bring it to life.
Meanwhile, our best information about alumni can be found in unedited self-reports at
http://www.csupomona.edu/~cs/alumni/.
Standard I-6. The results of the programs assessments and the actions taken based on the
results must be documented.
Page 12 of 224
C3 CS 12/14/04
D. Program Improvement
Describe your use of the results of the programs assessments to identify program improvements
and modifications to objectives.
Include:
1. Any major program changes within the last five years
2. Any significant future program improvement plans based upon recent assessments
We have condensed the hardware sequence from four courses to three (CS 210264365).
We have condensed the language theory sequence from three courses to two (CS 311411), of
which the last is elective.
We added a required General Education course, CS 375 (Computers and Society), which
brings together, in one course, our teaching about social and ethical issues. This eliminates
student objections that social and ethical issues were presented in a rag-tag manner in a variety
of courses (CS 140, 420, 431, 435, 463).
After ABETs visit, we expect to address some student skills that we should teach better: more
teamwork, and improved written and oral communication.
Page 13 of 224
C3 CS 12/14/04
E. Program Evolution
1. Describe in what respect, if at all, the philosophy and direction of the computer science
program has changed at your institution during the last five years, or since the last
accreditation visit, whichever is the more recent.
We have originated more applied courses:
CS 356
CS 380
CS 460
CS 480
We are implementing courses that tap students current interests: game development and
robotics.
We added a required General Education course, CS 375 (Computers and Society).
In Fall 2008, students will find a new curricular structure: we have decided to go with a
smaller core and to permit students to take more elective courses. We think this new
curriculum will provide a more coherent and targeted core, and will allow students to tackle
their interests by selecting appropriate elective courses. The new core can be seen here:
Dept Course
CS 130
CS 140
CS 141
CS 210
CS 240
CS 241
CS 256
CS 264
CS 311
CS 331
CS 365
CS 408
CS 431
CS 463
CS 480
CS 301
CS 380
CS 420
CS 435
currently becomes
to be
assessed required assessed
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
Page 14 of 224
C3 CS 12/14/04
2. Describe any major developments and/or progress made in connection with the program in
the last five years, or since the last accreditation visit, whichever is the more recent, that is
not included in your response to Question I.C.
See responses to preceding Questions I.C, I.D and I.E.1
F. Program Current Status
1. List the strengths of the unit offering the computer science program.
The Department awarded eight scholarships in 200708. An anonymous donor gave $15,000
to be awarded to one or two deserving juniors to fund their senior year. The Boeing
Corporation gives $5,000 per year, awarded in $1000 scholarships. Nodus Corporation gave
$1,000 this year.
Many of our graduates go on to graduate school. John Georgas will be receiving a Ph.D. in
Computer Science from UC Irvine, and hell be joining the CS faculty at Northern Arizona
University. Jonathan Dautrich, Lan Dang, and Jefferson Herk are going to UC Riverside.
Andrew Clark is continuing his studies in the masters program at Cal Poly Pomona.
Our labs in the newly refurbished Building 3 will contain brand-new equipment running
Linux. CS tech Nam Kim will supervise and administer this equipment.
Our teaching is very strong, and we have produced 668 graduates over the past six years.
Most of our faculty have received assigned time to work on projects in research, scholarship,
and administration.
Several of our students have participated in Research Experience for Undergraduate programs
around the world. Lan Dang went to Tennessee. Jim Herold went to Harvey Mudd College.
Christopher Phillips (CS minor) went to China. Lesia Bilitchenko will be going to Harvey
Mudd College.
We have an ongoing internship program that places many students in part-time jobs with local
industry. In particular, the SIRI program matches our students to the needs of the Jet
Propulsion Laboratory (JPL) in Pasadena, CA.
Our curriculum underwent a major revision when we trimmed the number of quarter units for
the degree from 194 to 180. We always keep an eye on the ACM/IEEE model curriculum for
Computer Science.
Students are kept on track in their studies by an enrollment system, which automatically
enforces course prerequisites (BroncoDirect).
Page 15 of 224
C3 CS 12/14/04
2. List any weaknesses or limitations of the institution or unit offering the computer science
program.
The budget of the University is unstable and unpredictable. This plays havoc with our course
offerings, since budget cuts have caused cuts in the number of lecturers we can hire.
The budget cycle of the University is structurally inimical to the hiring process. We need to
place ads during the summer, but the budget is not known until late September or October.
This has led to two cycles of placing ads and then cancelling the searches.
There is no component of the budget that refreshes computers in the labs. Indeed, there may
not be a budget component for refreshing faculty computers.
Historically, there was a long (almost ten-year) period during which new faculty were not
hired. This led to a situation in which few faculty are poised career-wise to serve as Chair. In
the last hiring cycle, we began a search for an outside Department Chair, but this search was
cancelled because of budget problems. Luckily, a long-serving faculty member was convinced
to take the Chair post. He succeeds a six-quarter temporary Chair.
There is insufficient money for travel at the University, College, and Department levels.
Acquiring the meager support thats available requires going to two or three sources, and
waiting for brief sign-up opportunities. If travel support were stronger and simpler, faculty
would attend more national conferences that would keep them current in the discipline.
3. List any significant plans for future development of the program.
We want to develop an effective system for tracking our graduates and keeping in touch with
them. This might include a newsletter, annual banquet, and surveys.
We want to increase the involvement of industrial partners in our assessment activities.
Page 16 of 224
C3 CS 12/14/04
Course Title
Programming Graphical User Interfaces
Symbolic Programming
Object-Oriented Design and Programming
Parallel Processing
Compilers and Interpreters
Computer Graphics
Computability
Secure Communication
Quarter
hours
4
4
4
4
4
4
4
4
Offerings
in 2 years
4
2
2
1
2
2
2
2
Page 17 of 224
C3 CS 12/14/04
4. Explain how it is determined when they will be offered, e.g., rotation, odd-numbered years,
or whatever.
Electives are offered when demand warrants and when faculty are available to teach them. We
are hard put to offer courses with low enrollment. Low enrollment may mean less than 10 or
15 students.
Standard II-2. Computer science courses must be structured to ensure effective interaction
between faculty/teaching assistants and students in lower division courses and between
faculty and students in upper division courses.
B. Interaction with Faculty
1. Describe how you achieve effective interaction between students and faculty or teaching
assistants in lower-division courses, particularly in large sections.
We do not have large sections. Typical courses are capped at 35 students, but the average class
size is closer to 25 students. Tenure-track faculty teach almost all courses. The number of parttime lecturers has shrunk to just a few. We recently had two courses taught by a very
competent graduate teaching assistant (Ms. Bao Ngo). Courses are regularly graded by the
instructor, and not by teaching assistants.
CS 375 (Computers and Society) is a General Education course required of our majors, and it
has been offered a few times, with enrollments of 50 or 60. A graduate student served as the
grader for these sections.
2. Describe how you achieve effective interaction between students and faculty in upperdivision courses. Give detailed explanation and/or documentation how you do this for
sections with more than thirty students, if applicable.
The comments above apply equally to upper and lower division courses.
Page 18 of 224
C3 CS 12/14/04
Standard II-3. Guidance on how to complete the program must be available to all students.
C. Student Guidance
Describe what determines the requirements that a student will follow and how the student is
informed of these requirements.
Students admitted to Cal Poly Pomona attend a comprehensive orientation session conducted
by the department student advisor (Mr. Brian Pangan) and a senior faculty member. Students
receive a curriculum sheet listing the courses necessary for graduation, as specified by the
university catalog for that year. Transfer students are given a curriculum sheet that shows the
course credits they have received from other institutions. The requirements remain the same
for a student until his or her graduation or until a break in enrollment of three or more quarters.
For each student there is an advising folder that contains a copy of their particular curriculum
sheet and any petitions. At orientation, students can ask questions regarding their concerns,
and individual advising appointments can be arranged. Curriculum sheets are available in the
department office, and course descriptions and department policies are maintained on the
department web site.
One responsibility of the advisor (see advising below) is to determine that the student is
making proper progress. The department provides three handouts to help the students in
planning their course scheduling so as to experience minimum difficulty in that aspect of
completing the program.
One of the handouts is the prerequisite graph of all CS courses. Another is a suggested
schedule listing the courses by quarter by year, as shown in Section IV. The third is a schedule
of planned course offerings that shows which courses will likely be offered in which future
quarters.
Students who do not actually take Computer Science courses for a period of time and are
deemed not to be making progress in the major can be placed on administrative probation and
so are required to see the Department Chair for a determination of the problem.
Page 19 of 224
C3 CS 12/14/04
Standard II-4. Students must have access to qualified advising when they need to make course
decisions and career choices.
D. Student Advisement
Describe your system of advisement for students on how to complete the program. Indicate how
you ensure that such advisement is available to all students.
Students first receive advising during orientation before they begin their first quarter at Cal
Poly. Students are expected and encouraged to see their advisors periodically, and are expected
to know and follow the published curriculum. Students are required to see an advisor at least
once every year. This is enforced by placing a hold on the students registration permit. Each
quarter, one third of the students have such a hold placed on a rotation basis. Any student with
a grade point average of 2.2 or less is required to see his or her advisor each quarter while in
such status.
Additional advising opportunities are available through the Science Education Enhancement
Services (SEES) and through the Career Center.
E. Access to Qualified Advising
When students need to make course decisions and career choices, what is their procedure for
obtaining advising? Do they have adequate access to qualified professionals when necessary?
During their first year at Cal Poly Pomona, all Computer Science students see our department
advisor. Following that year, students are assigned to a faculty member for advising. Students
are urged to discuss course selection and careers with their advisor or with any faculty
member. In addition, the university has a career center with counselors available for more
general career guidance and planning.
An online service, http://www.assist.org/, lets students investigate equivalences between
courses taken at Cal Poly Pomona and those taken at other CSU campuses or community
colleges.
Page 20 of 224
C3 CS 12/14/04
Standard II-5. There must be established standards and procedures to ensure that graduates
meet the requirements of the program.
F. Meeting the Requirements
Describe your standards and procedures for ensuring that graduates have met all of the
requirements of the program.
The department employs a full-time student advisor/admissions coordinator (Mr. Brian
Pangan) who is well-versed in course articulation and other complexities of handling students
from diverse backgrounds. His prior experience in the Registrars Office has proven invaluable
in steering students through the program. He has developed a worksheet for tracking student
progress toward completion of degree requirements.
When students have ten or fewer classes left before graduation, they apply for a graduation
check. The evaluations office uses the curriculum sheet to determine which remaining courses
the student needs in order to graduate. This evaluation is sent to the student prior to their final
quarters. This provides the student with the opportunity to clear up any discrepancies and
makes certain the student is aware of any additional courses that must be taken. The
Universitys online information systemBroncoDirectallows students and faculty to see
what courses are satisfied or missing from a students selected major program.
Students are expected to meet with their advisor if they have any questions about how to
proceed based on the information from the graduation check or degree audit. Students apply
for graduation at the beginning of the quarter in which they plan to graduate. A final check by
the evaluations office determines that all requirements have been met before the degree is
awarded.
Page 21 of 224
C3 CS 12/14/04
III. Faculty
Intent: Faculty members are current and active in the discipline and have the necessary
technical breadth and depth to support a modern computer science program. There are
enough faculty members to provide continuity and stability, to cover the curriculum
reasonably, and to allow an appropriate mix of teaching and scholarly activity.
If different programs have different faculty members, please identify which faculty members are
associated with which program(s), and the percentage of time allotted, if they are associated with
more than one.
Standard III-1. There must be enough full-time faculty members with primary commitment to the
program to provide continuity and stability.
A. Faculty Size
The purpose of this section is to determine whether you have sufficient faculty to offer courses
often enough for students to complete the program in a timely manner.
In Section II you gave the course numbers of courses required for the major which are offered
less frequently than once per year, and those allowed for the major but not required, and
explained how it is determined when they will be offered. Explain (if applicable) any difficulties
you have offering required or optional courses frequently enough, particularly as they might be
affected by faculty size.
The number of faculty has declined from 17 to 11 over the last six years, but we have so far
been able to offer required and elective courses sufficiently often so students havent been
unduly delayed. The recent elimination of lecturers has further reduced the scheduled course
offerings, which will probably lengthen average time-to-graduation.
B. Faculty with Primary Commitment
1. Indicate the number of faculty with primary commitment to the program, that is, who
regularly teach courses in the computer science segment of the program: 13 .
The purpose of the next question is to ascertain the continuity and stability provided by the
faculty with primary commitment to the program.
Page 22 of 224
C3 CS 12/14/04
2. Please list below the number (FTE) of faculty with primary commitment to the program in
each academic rank, broken down within rank by tenure status.
Tenured
Untenured
Full
Professor
Associate
Professor
8.5
2.0
Assistant
Professor
Instructor
or
Lecturer
Other
Faculty
1.0
Details:
Faculty
FTE
Rank
Tenure Status
Member
Hillam
0.5
Professor
Tenured (FERP)
Kerbs
1.0 Associate Professor Tenured
Lee
0.5
Professor
Tenured (FERP)
Liu
1.0
Professor
Tenured
Przymusinska 0.5
Professor
Tenured (FERP)
Raheja
1.0 Associate Professor Tenured
Rich
1.0
Professor
Tenured
Salloum
1.0
Professor
Tenured
Sang
1.0
Professor
Tenured
Soroka
1.0
Professor
Tenured
Tang
1.0 Assistant Professor Untenured
Yang
1.0
Professor
Tenured
Young
1.0
Professor
Tenured
FERP is the Faculty Early Retirement Program. Retiring faculty on FERP continue to teach
half-time for up to five years after retirement.
Page 23 of 224
C3 CS 12/14/04
Standard III-2. Full-time faculty members must oversee all course work.
Standard III-3. Full-time faculty members must cover most of the total classroom instruction.
C. Faculty Oversight
Full-time faculty must oversee all computer science course work allowed towards the major.
That means each course must be either taught or coordinated by a full-time faculty member with
primary commitment to the program. For those courses with sections not taught by full-time
faculty during the last or current academic year, list the course numbers below and the name of
the full-time faculty coordinator. (The last academic year is the academic year prior to the year in
which this report is prepared.)
Dept Course
Course Title
CS 128
CS 130
CS 140
CS 141
CS 210
CS 240
CS 241
CS 245
CS 256
CS 264
CS 301
CS 311
CS 331
CS 352
CS 356
CS 365
CS 370
CS 375
CS 380
CS 408
CS 411
CS 420
CS 431
CS 435
CS 445
CS 450
CS 460
CS 463
CS 480
Introduction to C++
Discrete Structures
Introduction to Computer Science
Introduction to Programming and Problem-Solving
Computer Logic
Data Structures and Algorithms I
Data Structures and Algorithms II
Programming Graphical User Interfaces
C++ Programming
Computer Organization and Assembly Programming
Numerical Methods
Language Translation and Automata
Design and Analysis of Algorithms
Symbolic Programming
Object-Oriented Design and Programming
Computer Architecture
Parallel Processing
Computers and Society
Computer Networks
Programming Languages
Compilers and Interpreters
Artificial Intelligence
Operating Systems
Database Systems
Computer Graphics
Computability
Secure Communication
Undergraduate Seminar
Software Engineering
Full-time Faculty
Coordinator
Raheja
Tang
Soroka
Soroka
Salloum
Soroka
Salloum
Soroka
Raheja
Salloum
Liu
Sang
Young
Soroka
Sang
Yang
Young
Rich
Young
Liu
Sang
Liu
Liu
Soroka
Kerbs
Rich
Rich
Yang
Salloum
Page 24 of 224
C3 CS 12/14/04
Standard III-4. The interests and qualifications of the faculty members must be sufficient to
teach the courses and to plan and modify the courses and curriculum.
Standard III-5. All faculty members must remain current in the discipline.
Standard III-6. All faculty members must have a level of competence that would normally be
obtained through graduate work in computer science.
Standard III-7. Some full-time faculty members must have a PhD in Computer Science.
D. Interests, Qualifications, and Scholarly Contributions
The Criteria states that the interests, qualifications, and scholarly contributions of the faculty
must be sufficient to teach the courses, plan and modify the courses and curriculum, and to
remain abreast of current developments in computer science. This information should be
contained in the faculty vitas attached to this report and need not be repeated here. A sample vita
questionnaire is attached in Section G below. Although it is not necessary to follow this format,
it is important that whatever format is followed contain all the information asked for. And, to
make things easier for the visiting team, please see that all faculty vitas are in the same format,
whichever format is used.
This is an appropriate place to insert a description of general departmental or institutional
activities that promote faculty currency, if such exist.
Departmental and institutional activities and policies that promote faculty currency include:
The campus Faculty Center for Professional Development offers workshops on a wide range
of topics, many of which involve the application of emerging technologies to teaching and
learning. Faculty are thereby encouraged and assisted in the use of advanced software tools
and web-based resources in support of their classes. This provides an additional opportunity
for students and faculty to experience the practical application of the technology while it
enhances the learning experience.
The campus has several competitive mechanisms for faculty to obtain course release for
professional development. These include the CSU-funded Research, Scholarship and Creative
activities (RSCA) program and various annual grant programs from the Division of Academic
Affairs.
The departments Retention, Tenure and Promotion (RTP) policies state explicit expectations
with regard to curricular development and professional development activities. Candidates
being evaluated for RTP actions are required to show their accomplishments in these areas.
Page 25 of 224
C3 CS 12/14/04
New hires bring new expertise and new areas of research to the department. We expect that
they will continue their research, create new courses and refresh existing ones. Their input to
these courses, their participation in joint research, and their service on thesis committees gives
existing faculty an opportunity to expand their expertise.
CS 463, the Undergraduate Seminar, requires students to make presentations on topics of
current interest to computer scientists. These topics tend to focus on new developments that
have piqued the interest of students. Faculty benefit from helping students in the preparation of
these presentations and from the group discussions that follow.
The department operates a Masters program in Computer Science that currently enrolls about
50 students. Most of the faculty teach one or more graduate courses, and most are active in
thesis supervision. Department-hosted graduate forums help match graduate students with
faculty having common interests. Faculty members also post their interests on the department
web site. Students and faculty both tend toward thesis topics suggested by current
developments in the field.
Standard III-8. All full-time faculty members must have sufficient time for scholarly activities
and professional development.
E. Scholarly Activities
Describe the means for ensuring that all full-time faculty members have sufficient time for
scholarly activities and professional development.
The universitys mission is derived from the California Master Plan for Higher Education.
Consistent with this mission, teaching is the primary function of faculty in the department.
80% of the time (12 out of 15 WTUs) of a tenure-track appointment is assigned to teaching.
While the teaching mission of the CSU assigns faculty a relatively heavy teaching load, there
is time to spend on scholarly activities and professional development. All faculty teach on
9-month contracts, with no obligation to teach or be on campus during the summer, which
gives them three months that can be devoted to research or professional development. When
quarterly class scheduling occurs, faculty express what courses and time slots they prefer, and
those preferences are usually met. Almost all faculty have teaching schedules that afford them
one or two days a week without classes. The amount of internal and external funding, research
papers, publications, conference presentations, journal review, thesis supervision, and course
development is evidence that there is sufficient time beyond teaching.
Page 26 of 224
C3 CS 12/14/04
Faculty professional development activities include research and scholarship to support the
universitys mission, as well as efforts to improve teaching, advising, faculty governance and
administration skills. The previous section discussed assigned time mechanisms available to
faculty to pursue professional development. New tenure-track faculty are released from
teaching one course per quarter during their first year in order to establish their teaching and
research portfolios.
In the past year, most faculty have obtained some time reassigned from teaching for various
professional activities, as indicated in the following table.
Quarter
units
Kerbs
24
Raheja
10
Rich
28
Salloum
2
Sang
14
Soroka
12
Tang
10
Yang
6
Young
4
Name
Source
Quality Learning Fund, SCI 101 development, Sabbatical
SCI 101/102 development, Thesis supervision, Laszlo substitution
CS 375 development, Dept Chair
Thesis supervision
Grad. Coordinator, JPL SIRI, Thesis supervision
Accreditation/Assessment Coordinator
Grant writing, Quality Learning Fund
Chair, WEEA Grant
Quality Learning Fund
Standard III-9. Advising duties must be a recognized part of faculty members workloads.
F. Support for Advising
Advising duties must be a recognized part of faculty members workloads, which means that
faculty with large numbers of advisees must be granted released time. Explain your advising
system and how the time for these duties is credited.
All tenure track faculty members participate in student advising, and have advisees assigned to
them. A standard tenure track appointment consists of 15 WTUs (weighted teaching units) per
quarter, of which 12 are for teaching and 3 for related activities including advising. The
department currently has 508 majors, of which 129 are classified as freshmen. All incoming
freshmen are assigned to Brian Pangan, the department Advisor/Admissions Coordinator. The
rest are assigned to faculty members based on the last two digits of their ID number. Students
are encouraged to see Brian or their faculty advisor for all advising questions. Department
policies related to electives, dropping classes, disqualification, etc. are posted on the
department web page.
Page 27 of 224
C3 CS 12/14/04
All Computer Science students receive mandatory advising annually, using a schedule based
on their BroncoNumber, to ensure adequate progress toward their degree. Students whose
GPA falls below 2.2 must see an advisor each quarter according to campus policy. A standard
advising worksheet is used in each case, which requires students to plan their course selection
two quarters ahead. The department maintains a folder for each student that contains
transcripts, grade reports, petitions and other relevant paperwork that assist in the advising
process. The campus has implemented an online Degree Progress system that students can
consult in order to determine what requirements they have yet to fulfill.
Page 28 of 224
C3 CS 12/14/04
Field
Computer Science
Computer Science
Computer Science
Institution
Iowa State University
Iowa State University
Iowa State University
Date
1988
1984
1979
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
April 2008 Wireless Telecommunications Symposium (WTS) 2008, Cal Poly Pomona.
October 2007 Cyber Security Fair, Cal Poly Pomona.
October 2005 Cyber Security Fair, Cal Poly Pomona.
Page 29 of 224
C3 CS 12/14/04
Evaluated whether and to what extent similarities existed between software programs.
8. Department, college and/or university committees of which you are a member.
Chair, Computer Science Department
Chair, Computer Science Department Laboratory Committee
Member, Computer Science Department RTP Committee
Page 30 of 224
C3 CS 12/14/04
9. Principal publications during the last five years. Give in standard bibliographic format.
Invited Presentations and Papers
Elliptic Curve Cryptography, Computer Science Society Lecture, Cal Poly Pomona,
May 2008.
Cryptographic Primitives for Secure Communication, Computer Science Society Lecture,
Cal Poly Pomona, April 2008.
Cryptographic Primitives for Secure Communication, Wireless Telecommunications
Symposium (WTS) 2008, Cal Poly Pomona, April 2008.
The Cal Poly Pomona Intranet, Part Deux: The New Linux-Based Intranet, Computer
Science Society Lecture, Cal Poly Pomona, January 2008.
Do You Accept This Certificate? Cyber Security Fair 2007, Cal Poly Pomona,
October 2007.
SOAP v. RESTThe Battle for Web Services Supremacy, Computer Science Society
Lecture, Cal Poly Pomona, February 2007.
Whats Up With AJAX, Computer Science Society Lecture, Cal Poly Pomona, April 2006.
On Used Car and Software Sales, 2005 College of Science Distinguished Teaching Award
Presentation, Cal Poly Pomona, November 2005.
Dissecting Pretty Good Privacy (PGP), Cyber Security Fair 2005, Cal Poly Pomona,
October 2005.
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
Author, Identity::, integrated Perl module for synchronizing user and group identity
information across disparate computing environments, 2007. Provides single sign-on and
identity management services for a community of 85,000 users and 15,000 groups at Cal
Poly Pomona.
Author, Generic Interpreter (gi), open-source Java-based software for building compilers
and interpreters, http://www.csupomona.edu/~carich/gi/, 19992008.
Author, Interpreter Theory and Implementation, textbook presenting regular language
theory, context-free language theory, denotational semantic theory and their applications,
in preparation, 2008.
Masters Students Supervised
Ngo, Bao. Implementation of an Identity-Based Cryptosystem, Summer 2008
Yousef, Rania. Implementing a Denial-of-Service Monitoring Tool, Fall 2006
Cheng, Robert. Masquerade Detection using Sequence Alignment, Summer 2005
Liu, Yang. Cryptographic Database Security with Practical Key Management, Summer 2005
Hartono, Johanes. Mobile Agent Security using Public Key Cryptography, Fall 2004
Page 31 of 224
C3 CS 12/14/04
11. Scientific, professional and honor societies of which you are a member.
Member, Association for Computing Machinery (ACM), 1981present
12. Honors and awards.
Recipient, 2005 College of Science Distinguished Teaching Award, Cal Poly Pomona
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Dept
Course
Fall 2006
CS 130
Fall 2006
CS 264
Winter 2007 CS 411
Winter 2007 CS 460
Fall 2007
CS 375
Fall 2007
CS 460
Term/Year
Quarter Class
hours
size
Discrete Structures
4
35
Computer Organization and Assembly Programming
4
33
Compilers and Interpreters
4
25
Secure Communication
4
24
Computers and Society
4
59
Secure Communication
4
18
Course Title
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
As Chair of the Computer Science Department, I am responsible for supervising staff
(administrative, information technology and advising), scheduling classes and hiring part-time
lecturers, budgeting and operations, and presiding at department meetings.
15. Number of students for which you serve as academic advisor: 55
16. Estimate the percentage of your time devoted to scholarly and/or research activities: 10 %.
Please give a brief description of your major research and scholarly activities:
Research is done largely in conjunction with Masters student supervision. During the last five
years, all of my Masters students have studied in the area of secure communication and
cryptography. Most recently, Bao Ngo and I have implemented an identity-based cryptosystem
using bilinear pairings on elliptic curve groups.
17. If you are not a full-time faculty member, state what percentage of full-time you work:
100 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 32 of 224
C3 CS 12/14/04
Associate Professor
Field
Computer Science
Computer Science
Electrical Engineering
Recording Engineering
Institution
Nova Southeastern University
Nova Southeastern University
California State University, Long Beach
Goldenwest College, Huntington Beach
Date
2001
1999
1987
1984
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Each year I attend at least one CS-related seminar at the California Institute of Technology
(Caltech) in Pasadena, California; these are presented by Caltech faculty.
Partner Representative in the International Game Developers Association (IGDA) for
California State Polytechnic University, Pomona (200507).
Referee: International Journal of Computers and Their Application (200405).
Page 33 of 224
C3 CS 12/14/04
Associate Professor
Page 34 of 224
C3 CS 12/14/04
Associate Professor
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
Spring 2008
Grants
California State Polytechnic University, Pomona, Quality Learning Fund, 2007 ($12912).
ACM, Federated Computing Research Conference Educators Travel Grant, 2007 ($1060).
California State Polytechnic University, Pomona, Presidential Travel Fund Grant to attend
2007 Game Developers Conference ($400).
California State Polytechnic University, Pomona, Presidential Travel Fund Grant to attend
2006 Game Developers Conference ($400).
California State Polytechnic University, Pomona, Academic Travel Grant, 2005 ($400).
California State Polytechnic University, Pomona, Faculty Development Grant, 2003 ($560).
11. Scientific, professional and honor societies of which you are a member.
Member, Association for Computing Machinery (ACM).
Member, Institute of Electrical and Electronic Engineers (IEEE) Computer Society.
Member, Tau Beta Pi honor society.
12. Honors and awards.
Winner, one of ten best papers at the 3rd International Conference on Application and
Development of Games (ADCOG) 2004 for Social and Ethical Considerations in Virtual
Worlds.
Winner, one of nine best papers at the 2nd International Conference on Application and
Development of Games (ADCOG) 2003 for Internet Gaming in the Era IPv6.
Page 35 of 224
C3 CS 12/14/04
Associate Professor
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Term/Year
Fall 2006
Fall 2006
Winter 2007
Winter 2007
Spring 2007
Spring 2007
Fall 2007
Fall 2007
Fall 2007
Fall 2007
Fall 2007
Fall 2007
Winter 2008
Winter 2008
Winter 2008
Dept
Course
CS 140
CS 431
CS 499
CS 570
CS 499
CS 565
SCI 101
SCI 101A
SCI 101
SCI 101A
SCI 101
SCI 101A
CS 140
SCI 102
SCI 102A
Quarter Class
hours
size
Introduction to Computer Science
4
35
Operating Systems
4
23
Special TopicsProgramming Game Engines
4
25
Human Computer Interaction
4
14
Special TopicsGame Development
4
10
Advanced Computer Networks
4
9
Science and Mathematics: Freshman Experience I
1
29
Science and Mathematics: Freshman Experience I
1
29
Science and Mathematics: Freshman Experience I
1
29
Science and Mathematics: Freshman Experience I
1
29
Science and Mathematics: Freshman Experience I
1
25
Science and Mathematics: Freshman Experience I
1
25
Introduction to Computer Science
4
38
Science and Mathematics: Freshman Experience II
1
28
Science and Mathematics: Freshman Experience II
1
29
Course Title
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
15. Number of students for which you serve as academic advisor: 55 undergraduate and
23 graduate
16. Estimate the percentage of your time devoted to scholarly and/or research activities: 15 %.
Please give a brief description of your major research and scholarly activities:
17. If you are not a full-time faculty member, state what percentage of full-time you work:
100 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 36 of 224
C3 CS 12/14/04
Professor Emeritus
Field
Biostatistics
Crop Science
Agronomy
Agronomy
Institution
University of California, Los Angeles
Michigan State University
Seoul National University
Seoul National University
Date
1973
1970
1967
1965
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
Programming Languages (Fortran, PL/I) at Michigan State University (Fall 1968)
Computer Application of Statistical methods at Michigan State University (Winter 1970)
Programming Language (Pascal, Fortran) At UCLA (Fall 1972)
Operating Systems (OS/360) at UCLA (Fall 1972)
Attended short courses in Database, Computer graphic, networking, Unix system, Software
Engineering, CAI, Bioinformatics and AI.
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Various short workshops while at Chancellors office (19781982) and at Cal Polyattended
at least 25 workshops and tutorial sessions on the subjects including statistics, Unix operating
system, communication/network, computer graphics, programming languages, OO methods,
software engineering (V&V, HCI), AI, and teaching methods.
Page 37 of 224
C3 CS 12/14/04
Professor Emeritus
Publication/Presentation
C. Lee, Visualization of Multidimensional Database, Conference on Visualization and Data
Analysis, January 2829, 2008 at San Jose, California, published in Proceeding SPIE
Vol 6809 OM7.
Special Seminar/Presentations
School of engineering, Ho Chi Minh University of Engineering and Technology, Vietnam,
May 56, 2008
Current trends in Software Engineering methods
Agile software development method
Guatemala City Cultural Center, August 1416, 2007
Java programming workshop
A+ certification workshop
University of Malang, Indonesia, May 2123, 2007
Medical imaging and application of graphics
Java GUI programming workshop
Cyber University
University of Malang, Indonesia, May 29June 2, 2006
Bioinformatics for new age
Java language workshop
IT education and curriculum
Workshops and seminars in the subject of A+, multimedia file management, usage of
PowerPoint and web programming
6. Other related computing experience including teaching, industrial, governmental, etc.
(Where, when, description and scope of duties)
198587
Taught in-house training courses in data Structures and the Ada language.
Production team for video course series in Software Engineering.
Conducted research project in software tools usage analysis.
Planned joint project for computerized restoration of old design specifications.
Served as faculty advisor for unit testing of Gun Ship control software in Ada.
Page 38 of 224
C3 CS 12/14/04
Professor Emeritus
Conduct courses in object-oriented methods, graphics and database for Korean teachers.
2001present Bethel Korean Church, Irvine, CA
Conducted numerous training courses in computer literacy, productivity software and
internet usage.
2002present Overseas seminar and workshop
Traveled to China, Indonesia, Guatemala and Vietnam to present workshops and seminars
in the subjects Medical Imaging, Software Engineering, Agile development method,
SOA/ESB, Java programming language and bioinformatics.
7. Consultinglist agencies and dates, and briefly describe each project.
1994present Ministry of Agriculture, Republic of Korea (Advising on computer
applications and software)
1997present Yanbian Univ. of Tech., China. Adjunct professor (Curriculum development
and teaching)
2000 Rutilus Inc, Irvine, CA (Supervision of software development team)
8. Department, college and/or university committees of which you are a member.
9. Principal publications during the last five years. Give in standard bibliographic format.
C. Lee, Visualization of Multidimensional Database, Conference on Visualization and Data
Analysis, January 2829, 2008 at San Jose, California, published in Proceeding SPIE
Vol 6809 OM7.
Page 39 of 224
C3 CS 12/14/04
Professor Emeritus
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
Attended 3 conferences on Biotechnology and bioinformatics.
Presented a paper on database visualization (January 2008).
Directing masters thesis and serving graduate thesis committees.
Reviewed textbook drafts in the subject of Software Engineering.
Develop software for vote counting system for a large organization.
11. Scientific, professional and honor societies of which you are a member.
ACM, IEEE, SPIE
12. Honors and awards.
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Term/Year
Fall 2006
Fall 2006
Winter 2007
Winter 2007
Fall 2007
Winter 2008
Winter 2008
Winter 2008
Dept
Course
CS 245
CS 599
CS 480
CS 519
CS 480
CS 245
CS 463
CS 585
Course Title
Programming Graphical User Interfaces
Bioinformatics for Computer Scientists
Software Engineering
Computer Vision
Software Engineering
Programming Graphical User Interfaces
Undergraduate Seminar
Software Verification and Validation
Quarter
hours
4
4
4
4
4
4
2
4
Class
size
41
10
30
9
24
42
10
15
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Page 40 of 224
C3 CS 12/14/04
Professor Emeritus
16. Estimate the percentage of your time devoted to scholarly and/or research activities:
_____%. Please give a brief description of your major research and scholarly activities:
Visualization of database
Development of softwareVoting system
Curriculum development for Biotechnology and animation program
Chairing program committee of IT Conference (Outside of Cal Poly)
Mission trips to Indonesia, Vietnam, Guatemala; offer seminars and workshops
17. If you are not a full-time faculty member, state what percentage of full-time you work:
50 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 41 of 224
C3 CS 12/14/04
Dr. H. K. Liu
Professor
Field
Computer Science
Electrical Engineering
Electrical Engineering
Institution
State University of New York at Buffalo
University of Cincinnati
Taiwan National Cheng Kung University
Date
1976
1971
1968
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Page 42 of 224
C3 CS 12/14/04
Dr. H. K. Liu
Professor
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
Sabbatical leave, 1986, 1993, 2002
11. Scientific, professional and honor societies of which you are a member.
Member, Association for Computing Machinery (ACM)
Referee, IEEE Transactions on Medical Imaging
Referee, IEEE Transactions on Systems, Man and Cybernetics
Referee, The SRA Computer Science Series
Referee, National Computer Conference
Referee, George E. Forsythe Student Paper Competition
Page 43 of 224
C3 CS 12/14/04
Dr. H. K. Liu
Professor
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Term/Year
Dept
Course
CS 331
CS 431
CS 463
CS 140
Winter 2007
CS 264
Winter 2007
Spring 2007
Spring 2007
Spring 2007
Fall 2007
Fall 2007
Fall 2007
Winter 2008
Winter 2008
Winter 2008
Spring 2008
Spring 2008
Spring 2008
CS 420
CS 301
CS 408
CS 420
CS 140
CS 301
CS 431
CS 408
CS 420
CS 431
CS 141
CS 408
CS 431
Course Title
Computer Organization and
Assembly Programming
Design and Analysis of Algorithms
Operating Systems
Undergraduate Seminar
Introduction to Computer Science
Computer Organization and
Assembly Programming
Artificial Intelligence
Numerical Methods
Programming Languages
Artificial Intelligence
Introduction to Computer Science
Numerical Methods
Operating Systems
Programming Languages
Artificial Intelligence
Operating Systems
Introduction to Programming and Problem-Solving
Programming Languages
Operating Systems
Quarter Class
hours
size
4
17
4
4
2
4
26
23
11
36
26
4
4
4
4
4
4
4
4
4
4
4
4
4
17
35
30
34
19
13
11
28
22
23
33
22
18
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Page 44 of 224
C3 CS 12/14/04
Dr. H. K. Liu
Professor
17. If you are not a full-time faculty member, state what percentage of full-time you work:
100 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 45 of 224
C3 CS 12/14/04
Professor Emeritus
Field
Mathematics
Mathematics
Institution
University of Warsaw, Poland
University of Warsaw, Poland
Date
1979
1970
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
Several CS courses taken at the University of Pittsburgh in 1982.
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Page 46 of 224
C3 CS 12/14/04
Professor Emeritus
9. Principal publications during the last five years. Give in standard bibliographic format.
J. Alferes, L. Pereira, H. Przymusinska, T. Przymusinski, ''LUPSa language for updating
logic programs,'' Artificial Intelligence Journal, 138, (12), 87116, 2002.
J. A. Leite, J. J. Alferes, L. M. Pereira, H. Przymusinska, T. C. Przymusinski, ''A Language for
Multi-dimensional Updates,'' Electronic Notes in Theoretical Computer Science, 70, 5,
N/A, 2002.
J. A. Leite, J. J. Alferes, L. M. Pereira, H. Przymusinska, T. C. Przymusinski, ''A Language for
Multi-dimensional Updates,'' Procs. of the 3rd Intl. Workshop on Computational Logic in
Multi-Agent Systems, (CLIMA'02), Roskilde University, Denmark, August 2002, 1934,
2002.
J. A. Leite, J. J. Alferes, L. M. Pereira, H. Przymusinska, T. C. Przymusinski, ''A Language for
Updates with Multiple Dimensions,'' Procs. of the APPIA-GULP-PRODE'02 Joint
Conf. on Declarative Programming (AGP'02), Madrid, Spain, September 2002, 11 pages,
2002.
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
11. Scientific, professional and honor societies of which you are a member.
Member of the Center for Research in Intelligent Systems (CRIS) at the University of
California at Riverside.
12. Honors and awards.
Member of the editorial board of two international journalsJournal of Experimental and
Theoretical Artificial Intelligence and Journal of Applied Non-Classical Logics.
College of Sciences 1996 R. W. Ames Award for Research Excellence.
Founding member of the Center for Research in Intelligent Systems (CRIS) at the University
of California at Riverside.
Page 47 of 224
C3 CS 12/14/04
Professor Emeritus
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Term/Year
Fall 2006
Fall 2006
Spring 2007
Spring 2007
Winter 2008
Winter 2008
Spring 2008
Spring 2008
Dept
Course
CS 420
CS 515
CS 311
CS 352
CS 130
CS 311
CS 130
CS 311
Quarter
hours
4
4
4
4
4
4
4
4
Course Title
Artificial Intelligence
Automated Reasoning
Language Translation and Automata
Symbolic Programming
Discrete Structures
Language Translation and Automata
Discrete Structures
Language Translation and Automata
Class
size
15
7
29
28
35
25
35
35
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
16. Estimate the percentage of your time devoted to scholarly and/or research activities: 20 %.
Please give a brief description of your major research and scholarly activities:
My scientific work was centered around the knowledge representation issues with the special
emphasis on problems associated with non-monotonic reasoning and with applications of logic
programming to knowledge representation. Together with M. Gelfond I was one of the early
proponents of the study of Autoepistemic Logic and its relations to other formalisations of
common sense reasoning. This work was followed by some preliminary studies of
applicability of logic programming as a language for software specifications and issues of
elaboration tolerance. More recently I was working with J. Alferes, L. Pereira, and
T. Przymusinski on dynamic updates of knowledge bases.
17. If you are not a full-time faculty member, state what percentage of full-time you work:
50 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 48 of 224
C3 CS 12/14/04
Associate Professor
Field
Engineering
Physics (Electronics)
Physics
Institution
University of Toledo, OH
Indian Institute of Technology, Kharagpur, India
Indian Institute of Technology, Kharagpur, India
Date
1999
1994
1992
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
Have taken various computer science courses at undergraduate and graduate level.
Taught computer science courses in the Computer Science department at Philadelphia
University as a tenure track assistant professor for two years (19992001).
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Page 49 of 224
C3 CS 12/14/04
Associate Professor
Page 50 of 224
C3 CS 12/14/04
Associate Professor
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
National Science Foundation
IDBR: Excitation-Emission Matrix Fluorescence Detection for Capillary Electrophoresis
(NSF DBI 0754837) Role: Co-PI (PI: Dr. Timothy Corcoran); $177,564; May 2008
June 2010
National Science Foundation
Acquisition of a workstation network for research in parallel and distributed computing
(NSF MRI 0321333) Role: Co-PI (PI: Dr. Hairong Kuang); $159,658; September 2003
August 2005
National Textile Center (US Department of Commerce)
Fuzzy Forecasting Model for Apparel Sales (NTC S01-PH10)
Role: PI; $300,000; June 2001May 2004
Sabbatical: Fall 2005, Worked on using distributed computed for wavelet based image
reconstructions algorithms for Positron Emission Tomography.
11. Scientific, professional and honor societies of which you are a member.
Member, Association for Computing Machinery (ACM).
Member, Institute of Electrical and Electronic Engineers (IEEE).
Member, IEEE Engineering in Medicine and Biology Society.
Member, IEEE Computer Society.
12. Honors and awards.
Referee, IEEE Transactions on Medical Imaging.
Referee, IEEE Transactions on Biomedical Engineering.
Page 51 of 224
C3 CS 12/14/04
Associate Professor
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Dept
Course
Fall 2006
CS 256
Fall 2006
CS 445
Summer 2006 CS 301
Summer 2006 CS 408
Winter 2007
CS 301
Winter 2007
CS 408
Spring 2007
CS 128
Spring 2007
CS 445
Summer 2007 CS 408
Fall 2007
CS 130
Fall 2007
CS 555
Fall 2007
SCI 101
Fall 2007
SCI 101A
Winter 2008
CS 128
Winter 2008
CS 256
Spring 2008
CS 128
Spring 2008
CS 299
Term/Year
Quarter Class
hours
size
C++ Programming
4
16
Computer Graphics
4
19
Numerical Methods
4
19
Programming Languages
4
29
Numerical Methods
4
28
Programming Languages
4
24
Introduction to C++
4
50
Computer Graphics
4
28
Programming Languages
4
13
Discrete Structures
4
27
Computer Image Processing
4
10
Science and Mathematics: Freshman Experience I
1
14
Science and Mathematics: Freshman Experience I
1
14
Introduction to C++
4
34
C++ Programming
4
25
Introduction to C++
4
37
Special TopicsUnix and Scripting
4
33
Course Title
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Computer Science Department Curriculum Coordinator: 200508
Hours spent per quarter: 8
15. Number of students for which you serve as academic advisor: 55 undergraduate and
25 graduate
16. Estimate the percentage of your time devoted to scholarly and/or research activities: 30 %.
Please give a brief description of your major research and scholarly activities:
Conduct research for grants and direct graduate students' theses in soft computing methods,
image processing, medical image compression and denoising, bioinformatics.
17. If you are not a full-time faculty member, state what percentage of full-time you work:
100 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 52 of 224
C3 CS 12/14/04
Professor
Field
Computer Science
Electrical Engineering (Computer)
Applied Math
Computer Science
Mathematics
Institution
University of Southern California
University of Southern California
University of Southern California
University of Southern California
University of Baghdad
Date
1979
1980
1977
1974
1971
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Attended the joint-Cal Poly Pomona-IBM training workshop on Rational System Architecture,
June 1416, 2006.
Attended the 2007 Federated Computing Research Conference and selected affiliated
conferences and tutorials, June 816, 2007.
Page 53 of 224
C3 CS 12/14/04
Professor
Page 54 of 224
C3 CS 12/14/04
Professor
Page 55 of 224
C3 CS 12/14/04
Professor
Received a grant from Microsoft that provided software and hardware needed for the research
project of the NASA Software Team in designing and implementing a rover using
embedded software technology.
Served as the coordinator for the joint-Cal Poly Pomona-IBM training workshop on Rational
System Architecture, for the faculty and graduate students in southern California.
Co-Program Chair of the 2005 International Conference on Computer Design, June 2005, Las
Vegas, Nevada.
Served as the Capitan of the event Robot Ramble of the 2004 and 2005 LA County Regional
Science Olympiad in which 28 regional high schools participated.
Served as the Capitan of the event Robot Ramble of the 2004 State Science Olympiad in
which 24 high schools participated.
Served as a reviewer for the IEEE Transaction on Parallel and Distributed Systems.
Served as a reviewer for the IEEE Transaction on Circuits and Systems.
Served as a reviewer for the International Journal of Information Science.
Served as a reviewer for promotion applications of three faculty members, University of
Applied Science and Muta University in Jordan.
Sabbatical Leave, Winter 2006: Conducted research on Fast RNS Converters Using
Multimoduli of the Form 2n-1.
Served on the Program Committee of the Wireless Telecommunication Symposiums 2004
2008, Pomona, California.
Served as a reviewer for several conferences.
Lectured at the Japanese Software Engineers Training Programs.
11. Scientific, professional and honor societies of which you are a member.
IEEE, IEEE Computer Society, and Computer Science Teachers Association.
12. Honors and awards.
Best Paper Award, The International Computer Science and Technology Conference, April 1
3, 2008, San Diego, CA.
Page 56 of 224
C3 CS 12/14/04
Professor
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Fall 2006
Fall 2006
Fall 2006
Summer 2006
Summer 2006
Summer 2006
Winter 2007
Winter 2007
Spring 2007
Spring 2007
Summer 2007
Summer 2007
Summer 2007
Dept
Course
CS 210
CS 241
CS 435
CS 241
CS 365
CS 480
CS 241
CS 435
CS 435
CS 580
CS 240
CS 241
CS 480
Fall 2007
CS 264
Fall 2007
Fall 2007
Winter 2008
CS 463
CS 575
CS 210
Winter 2008
CS 264
Winter 2008
Spring 2008
CS 480
CS 210
Spring 2008
CS 264
Spring 2008
CS 435
Term/Year
Course Title
Computer Logic
Data Structures and Algorithms II
Database Systems
Data Structures and Algorithms II
Computer Architecture
Software Engineering
Data Structures and Algorithms II
Database Systems
Database Systems
Advanced Software Engineering
Data Structures and Algorithms I
Data Structures and Algorithms II
Software Engineering
Computer Organization and
Assembly Programming
Undergraduate Seminar
Topics in Database Systems
Computer Logic
Computer Organization and
Assembly Programming
Software Engineering
Computer Logic
Computer Organization and
Assembly Programming
Database Systems
Quarter
hours
4
4
4
4
4
4
4
4
4
4
4
4
4
Class
size
31
20
29
13
29
19
33
32
30
12
11
20
16
18
2
4
4
8
10
23
35
4
4
30
35
28
33
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Page 57 of 224
C3 CS 12/14/04
Professor
Page 58 of 224
C3 CS 12/14/04
Professor
Field
Computer Science
Computer Science
Business Administration
Institution
University of Texas at Dallas
University of Texas at Dallas
Tunghai University, Taiwan
Date
1990
1986
1983
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Adobe Presenter, Cal Poly, 2/6/08.
Introduction to Online Teaching and Blackboard Startup, Cal Poly, 2/1/08.
Advance STEM Doctoral Enhancement Faculty Retreat, Phoenix, Arizona, 1/18/08.
Department Colloquium (Software Infrastructure vs. Assembly Line), Cal Poly, 11/6/07.
Python Workshop at Chapman University, Orange, California, 6/1821/07.
JPL SIRI Spring presentations, Pasadena, California, 6/15/07.
Wireless Telecommunications Symposium, Cal Poly, 4/26/07.
The 15th International Conference on Software Engineering and Data Engineering, Los
Angeles, California, July 68, 2006.
College of Engineering Symposium Day, Cal Poly, 5/19/06.
Page 59 of 224
C3 CS 12/14/04
Professor
Page 60 of 224
C3 CS 12/14/04
Professor
9. Principal publications during the last five years. Give in standard bibliographic format.
S. Chen, D. Sang, C. Peng, Virtual Net: An Efficient Simulation for Parallel Computation,
International Journal of Modeling and Simulation, Volume 27, 2007.
Y. Xu, D. Sang, C. Peng, Design Patterns for Real-Time Distributed System, proceedings of
the 15th International Conference on Software Engineering and Data Engineering, Los
Angeles, California, July 68, 2006.
S. Phattarasukol, D. Sang, PatternStudio: A New Tool for Design Pattern Management, the
20th annual ACM SIGPLAN conference on Object-Oriented Programming, Systems,
Languages, and Applications, Demonstration Session, San Diego, October 1620, 2005.
Y. Xu, D. Sang, C. Peng, Logging Server: A Case Study with Design Patterns, proceedings of
the 4th annual ISOneWorld, Las Vegas, 3/304/1/2005.
S. Phattarasukol, D. Sang, Design Pattern Integrated Tool, the 19th annual ACM SIGPLAN
conference on Object-Oriented Programming, Systems, Languages, and Applications,
Poster Session, Vancouver, Canada, October 2428, 2004.
D. Chen, D. Sang, K. Tsai, Dynamic Rate Allocation in High Speed Networks, Proceedings of
the Hawaii International Conference on Computer Sciences, January 1518 2004.
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
Referee for the 3rd annual Wireless Telecommunications Symposium, 2004
Reviewed a Bachelor of Science in Software Engineering (BSSE) program proposal out of San
Jose State University for the Chancellors Office, 2004
Presidential Travel Funds, 2004, 2005, and 2008
New course developed: CS 299 Visual Basic, 2007
Sabbatical, Fall 2008
11. Scientific, professional and honor societies of which you are a member.
Member, Association for Computing Machinery (ACM)
Member, Chinese American Faculty Association (CAFA)
12. Honors and awards.
Distinguished Teaching Award by College of Science in 2003
Outstanding Computer Science Academic Advisor in 2007 and 2008
Page 61 of 224
C3 CS 12/14/04
Professor
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Term/Year
Fall 2006
Fall 2006
Winter 2007
Winter 2007
Spring 2007
Spring 2007
Fall 2007
Fall 2007
Winter 2008
Winter 2008
Spring 2008
Spring 2008
Dept
Course
CS 311
CS 480
CS 531
CS 664
CS 450
CS 463
CS 299
CS 356
CS 411
CS 664
CS 256
CS 450
Course Title
Language Translation and Automata
Software Engineering
Computability and Complexity Theory
Graduate Seminar
Computability
Undergraduate Seminar
Special TopicsVisual Basic
Object-Oriented Design and Programming
Compilers and Interpreters
Graduate Seminar
C++ Programming
Computability
Quarter
hours
4
4
4
2
4
2
4
4
4
2
4
4
Class
size
33
27
6
9
26
12
19
41
33
11
33
16
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Graduate Coordinator, 4 WTUs/quarter assigned time. Main responsibilities: Incoming and
ongoing student advising, recruitment, admissions, course planning and offering, student
progress review, and website maintenance, about 1012 hours/week.
15. Number of students for which you serve as academic advisor:
50 graduate students
25 undergraduate and
16. Estimate the percentage of your time devoted to scholarly and/or research activities: 20 %.
Please give a brief description of your major research and scholarly activities:
Research and scholarly activities in the areas of object-oriented design, software tools and
techniques, distributed computing, and embedding algorithms
Direct graduate students on their Masters theses
Supervise undergraduate projects including NASA PAIR senior project, JPL SIRI independent
research internship, and WEEA research apprenticeship
17. If you are not a full-time faculty member, state what percentage of full-time you work:
100 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 62 of 224
C3 CS 12/14/04
Professor
Field
Computer and Information Science
Computer and Information Science
Physics
Institution
University of Pennsylvania
University of Pennsylvania
Yale University
Date
1979
1976
1971
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
2007 March. Attended the 38th SIGCSE Technical Symposium on Computer Science
Education, Covington KY, March 2007. Member of a panel, Assessing Computer Science
Programs: What Have We Learned?
2006 March. Attended the 37th SIGCSE Technical Symposium on Computer Science
Education, Houston TX.
2006 February. Visited with robot manufacturers. Medical Design & Manufacturing West,
Anaheim Convention Center.
2005 April. Attended the 8th CSU Regional Symposium on University Teaching. Pomona CA,
April 2005.
2005 February. Attended the 36th SIGCSE Technical Symposium on Computer Science
Education, St Louis MO.
Page 63 of 224
C3 CS 12/14/04
Professor
2004 March. Attended the 35th SIGCSE Technical Symposium on Computer Science
Education, Norfolk VA.
2003 February. Attended the 34th SIGCSE Technical Symposium on Computer Science
Education, Reno NV.
6. Other related computing experience including teaching, industrial, governmental, etc.
(Where, when, description and scope of duties)
Sabbatical Visitor, Electrical Department, Metropolitan Opera House, New York, NY,
January 1995 to June 1995. Studied their existing motion control systems. Designed a
human interface to join four disparate systems into one unified system.
Jet Propulsion Laboratory, NASA/ASEE Summer Faculty Fellow & Academic Part-Time
Employee, Summer 1988 to February 1990. Learned and documented a force-feedback
teleoperator system. Designed a new human interface for the system.
Assistant Professor, Electrical Engineering, University of Southern California, July 1981 to
August 1987. Brought robotics courses and equipment to USC.
Research Associate, Artificial Intelligence Lab, Computer Science Department, Stanford
University, May 1979 to June 1981. Co-supervised/co-managed the robotics project.
Visitor, Institut National de Recherches dInformatique et dAutomatique (INRIA), Paris,
France, Spring 1979. Extended my dissertation results.
Visiting Scientific Researcher, Institut Informatik, University of Hamburg, Germany,
Summer 1978. Implemented computer vision algorithms.
7. Consultinglist agencies and dates, and briefly describe each project.
Lockheed-California Company, Burbank, CA, 198486. Designed and implemented a
simulator for a multi-arm robot assembly system.
Saveriano & Associates, Carlsbad CA, 198384. Analyzed the market for robotics and
artificial intelligence.
General Electric Company, Industrial Electronics Development Laboratory, Charlottesville,
VA, 1983. Guided the design of a programming language for a commercial robot.
Hughes Research Laboratories, Malibu, CA, 1982. Analyzed the portability of ACRONYM, a
computer vision system developed at Stanford University.
Logistics Technology Inc, Torrance CA, 198183. Assessed the state of the art of robot
programming languages. Designed robot programming languages.
Various manufacturers of industrial robots, 198086. (Names confidential.) Designed robot
programming languages.
Page 64 of 224
C3 CS 12/14/04
Professor
Page 65 of 224
C3 CS 12/14/04
Professor
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Term/Year
Fall 2006
Fall 2006
Summer 2006
Summer 2006
Winter 2007
Winter 2007
Spring 2007
Summer 2007
Summer 2007
Fall 2007
Fall 2007
Winter 2008
Winter 2008
Spring 2008
Spring 2008
Dept
Course
CS 128
CS 140
CS 141
CS 420
CS 141
CS 245
CS 140
CS 141
CS 435
CS 140
CS 435
CS 141
CS 240
CS 240
CS 352
Course Title
Introduction to C++
Introduction to Computer Science
Introduction to Programming and Problem-Solving
Artificial Intelligence
Introduction to Programming and Problem-Solving
Programming Graphical User Interfaces
Introduction to Computer Science
Introduction to Programming and Problem-Solving
Database Systems
Introduction to Computer Science
Database Systems
Introduction to Programming and Problem-Solving
Data Structures and Algorithms I
Data Structures and Algorithms I
Symbolic Programming
Quarter Class
hours
size
4
35
4
29
4
9
4
25
4
31
4
33
4
18
4
11
4
27
4
35
4
25
4
30
4
16
4
32
4
35
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Assessment/Accreditation Coordinator. This assignment comes with 4 WTUs/quarter assigned
time. Supervises assessment & accreditation activities. 10 hours/week.
15. Number of students for which you serve as academic advisor: 55
16. Estimate the percentage of your time devoted to scholarly and/or research activities: 10 %.
Please give a brief description of your major research and scholarly activities:
Factors which influence success in CS1. I have been gathering data from CS 140 classes, and I
hope to find time to analyze this data and prepare a paper on my findings.
17. If you are not a full-time faculty member, state what percentage of full-time you work:
100 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 66 of 224
C3 CS 12/14/04
Assistant Professor
Field
Computer Science
Computer Science
Computer Science
Institution
University of Tennessee, Knoxville
University of Tennessee, Knoxville
Sichuan University, Chengdu, China
Date
2006
2003
2000
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Conferences/Workshops/Symposium
AAAI Spring Symposium: Using AI to Motivate Greater Participation in CS, 2008.
AAAI Spring Symposium: Robots and Education, 2007.
AAAI Workshop: Auction Mechanisms for Robot Coordination, 2006.
AAAI Spring Symposium: To Boldly Go Where No Human-Robot Team Has Gone Before,
2006.
IEEE/RSJ International Conference on Intelligent Robots and Systems, 2005.
IEEE International Conference on Advanced Robotics, 2005.
Page 67 of 224
C3 CS 12/14/04
Assistant Professor
Page 68 of 224
C3 CS 12/14/04
Assistant Professor
9. Principal publications during the last five years. Give in standard bibliographic format.
F. Tang and S. Saha, An Anytime Winner Determination Algorithm for Time-Extended
Multi-Robot Task Allocation, to appear in Proceedings of International Conference on
Automation, Robotics and Control Systems, 2008.
F. Tang, R. W. Kerbs and G. S. Young, Improving CS Student Retention with Intelligent
Agents, Proceedings of the AAAI Spring Symposium on Using AI to Motivate Greater
Participation in Computer Science, 2008.
F. Tang and L. E. Parker, A Complete Methodology for Generating Multi-Robot Task
Solutions using ASyMTRe-D and Market-Based Task Allocation, Proceedings of IEEE
International Conference on Robotics and Automation, 2007.
F. Tang, Enhance Students' Hands-On Experience With Robotics, Proceedings of the AAAI
Spring Symposium on Robots in Education, 2007.
L. E. Parker and F. Tang, Building Multi-Robot Coalitions through Automated Task Solution
Synthesis, Proceedings of the IEEE, special issue on Multi-Robot Systems, 2006.
F. Tang and L. E. Parker, Layering Coalition Formation With Task Allocation, Proceedings
of the AAAI Workshop: Auction Mechanisms for Robot Coordination, 2006.
F. Tang and L. E. Parker, Automated Human-Robot Teaming through Reconfigurable
Schemas, Proceedings of the AAAI Spring Symposium: To Boldly Go Where No HumanRobot Team Has Gone Before, 2006.
F. Tang and L. E. Parker, Distributed Multi-Robot Coalitions through ASyMTRe-D,
Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems,
2005.
F. Tang and L. E. Parker, Coalescing Multi-Robot Teams through ASyMTRe: A Formal
Analysis, Proceedings of IEEE International Conference on Advanced Robotics, 2005.
F. Tang and L. E. Parker, ASyMTRe: Automated Synthesis of Multi-Robot Task Solutions
through Software Reconfiguration, Proceedings of IEEE International Conference on
Robotics and Automation, 2005.
Page 69 of 224
C3 CS 12/14/04
Assistant Professor
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
College of Science Quality Learning Fund, Integrate Low-Cost Robots into Classroom to
Enhance Learning, College of Science, Cal Poly Pomona, Amount: $7499.5, 2007 to
2008.
Mini-Grant, Study of USARSim for Human-Robot Cooperation, Faculty Center for
Professional Development, Cal Poly Pomona, Amount: $1104.8, 2007 to 2008.
Presidential Travel Fund, Cal Poly Pomona, 2007 and 2008.
Summer Fellowship, Synthesizing Solution For Multi-Robot Applications, Research,
Scholarship, and Creative Activity Program at Cal Poly Pomona, Amount: $5000.0, 2007.
Mini-Grant, Enhance Students Hands-On Experience With Robotics, Faculty Center for
Professional Development, Cal Poly Pomona, Amount: $1108.0, 2006 to 2007.
Mentor for WEEA (Women Equity Education Act), supported by Department of Education
grant, since 2006.
11. Scientific, professional and honor societies of which you are a member.
Association for the Advancement of Artificial Intelligence (AAAI)
Association for Computing Machinery (ACM)
Upsilon Pi Epsilon International Honor Society for the Computing and Information Disciplines
(UPE)
12. Honors and awards.
Provosts Teacher-Scholar Recipient, Cal Poly Pomona (2007 to 2008)
Graduate Student Travel Scholarship for AAAI Spring Symposium (2006)
Upsilon Pi Epsilon International Honor Society for the Computing Sciences (2004)
Graduate Student Travel Award, The University of Tennessee (2003 and 2006)
Page 70 of 224
C3 CS 12/14/04
Assistant Professor
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Term/Year
Fall 2006
Fall 2006
Winter 2007
Spring 2007
Spring 2007
Fall 2007
Fall 2007
Winter 2008
Winter 2008
Spring 2008
Spring 2008
Spring 2008
Dept
Course
CS 128
CS 130
CS 240
CS 130
CS 299
CS 240
CS 420
CS 299
CS 521
CS 420
CS 463
CS 525
Course Title
Introduction to C++
Discrete Structures
Data Structures and Algorithms I
Discrete Structures
Special TopicsWeb Programming and Design
Data Structures and Algorithms I
Artificial Intelligence
Special TopicsWeb Programming and Design
Robotics
Artificial Intelligence
Undergraduate Seminar
Advanced Computer Architecture
Quarter
hours
4
4
4
4
4
4
4
4
4
4
2
4
Class
size
36
33
28
26
44
32
35
29
25
37
15
16
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Page 71 of 224
C3 CS 12/14/04
Professor
Field
Computer Science
Computer Science
Computer Science
Institution
Shanghai Jiao Tong University, China
Shanghai Jiao Tong University, China
Shanghai Jiao Tong University, China
Date
1988
1986
1983
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
Summer Computer Simulation Conference (SCSC'07), San Diego, California, July 2007.
4th ACIS International Conference on Software Engineering Research, Management &
Applications (SERA 2006), Seattle, Washington, August 2006.
7th ACIS International Conference on Software Engineering, Artificial Intelligence,
Networking, Parallel/Distributed Computing (SPND 2006), Las Vegas, NV, June,2006.
International Conference on Communications in Computing, Las Vegas, NV, June 2005.
5th World Congress on Intelligent Control and Automation, June 2004, Hangzhou, China.
IEEE Computer Communications Workshop (CCW'03), Dana Point, CA, October 2003.
International Conference on Wireless Networks (ICWN'03), Las Vegas, NV, June 2003.
Attended about a dozen of Cal Poly Pomona E-learning workshops.
Arizona State University and Cal Poly Pomona ADVANCE program retreat, Phoenix,
Arizona, January 2008.
Reviewed a number of technical papers as well as book chapters.
Page 72 of 224
C3 CS 12/14/04
Professor
Page 73 of 224
C3 CS 12/14/04
Professor
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
Sabbatical, Fall 2005
Grants, (1) A number of Presidential Travel Funds, Cal Poly Pomona, and (2) mini-grants
from Cal Poly Pomona faculty development center and I&IT.
Mentor, WEEA (Women Equity Education Act), supported by a Dept. of Education grant.
11. Scientific, professional and honor societies of which you are a member.
Member of Chinese Scholar Association, also a member of its Science and Engineering
Committee.
12. Honors and awards.
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Fall 2006
Summer 2006
Winter 2007
Winter 2007
Spring 2007
Summer 2007
Fall 2007
Winter 2008
Winter 2008
Winter 2008
Dept
Course
CS 463
CS 311
CS 365
CS 463
CS 525
CS 463
CS 365
CS 130
CS 365
CS 463
Winter 2008
SCI 102
Winter 2008
SCI 102A
Spring 2008
Spring 2008
Spring 2008
CS 365
CS 463
CS 535
Term/Year
Course Title
Undergraduate Seminar
Language Translation and Automata
Computer Architecture
Undergraduate Seminar
Advanced Computer Architecture
Undergraduate Seminar
Computer Architecture
Discrete Structures
Computer Architecture
Undergraduate Seminar
Science and Mathematics:
Freshman Experience II
Science and Mathematics:
Freshman Experience II
Computer Architecture
Undergraduate Seminar
Parallel and Distributed Algorithms
Quarter
hours
2
4
4
2
4
2
4
4
4
2
Class
size
9
19
38
18
15
13
34
28
23
14
27
27
4
2
4
24
11
20
Page 74 of 224
C3 CS 12/14/04
Professor
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Spring 2008, 2 WTUs WEEA mentoring programDept. of Education research grant.
Average 2 hours per week across the academic year.
Fall 2006Fall 2007, Department Chair. Average 30 hours per week.
15. Number of students for which you serve as academic advisor: 55
16. Estimate the percentage of your time devoted to scholarly and/or research activities: 10 %.
Please give a brief description of your major research and scholarly activities:
Advising graduate students; mentoring undergraduate student research projects including
senior projects and WEEA research apprenticeship.
17. If you are not a full-time faculty member, state what percentage of full-time you work:
100 %. Percentage of this time allocated to the computer science program being evaluated:
100 %.
Page 75 of 224
C3 CS 12/14/04
Professor
Field
Computer Science
Computer Science
Computer Science
Institution
The University of Texas at Dallas
The University of Texas at Dallas
University of Oklahoma
Date
1989
1986
1984
4. If you do not have a formal degree in computer science, describe any course work you may
have taken, or other ways in which you have achieved competence in computer science;
there is no necessity to repeat information here which is contained in later sections of this
document.
N/A
5. Conferences, workshops, and professional development programs in which you have
participated in the last 5 years to improve teaching and professional competence in computer
science.
The 2008 Wireless Telecommunications Symposium, Cal Poly, April, 2008.
The 2007 International Conference on Parallel and Distributed Processing Techniques and
Applications, Nevada, June, 2007.
The 2006 conference of Mathematical Foundations of Learning Theory, Paris, France,
June 2006.
The Eighth CSU Regional Symposium on University Teaching, Pomona, CA, April 2005.
The 2005 International MultiConference in Computer Science & Computer Engineering.
The 2005 Wireless Telecommunications Symposium, Cal Poly, April 2005.
Nevada, June 2005.
Lily West Conference on College & University Teaching, Cal Poly, March 2004.
Page 76 of 224
C3 CS 12/14/04
Professor
Page 77 of 224
C3 CS 12/14/04
Professor
9. Principal publications during the last five years. Give in standard bibliographic format.
F. Tang, R. Kerbs and G. Young, Improving CS Student Retention with Intelligent Agents,
Proceedings of the AAAI Spring Symposium, 2008, California.
T. Lee and G. Young, Multipath Routing in Reconfigurable Free Space Optics Networks,
Proceedings of the 2007 International Conference on Parallel and Distributed Processing
Techniques and Applications, pp. 817821, June 2007, Nevada.
G. Young, B. Cong and P. Ng, Large Scale Linear and Mesh Network of PCs connected by
SCSI, Journal of Combinatorial Mathematics and Combinatorial Computing, Vol. 56,
2006.
K. Ho, J. Sum and G. Young, Pricing Web Services, Lecture Notes in Computer Science
3947 (Proceedings of the 2006 International Conference on Grid and Pervasive
Computing), Springer-Verlag, pp. 147156, May 2006.
J. Sum, K. Ho, C. Ng, C. Wong and G. Young, Analysis on the Session Life Time
Distribution of Gnutella, Proceedings of the 2005 International Conference on Parallel
and Distributed Processing Techniques and Applications, Vol. III, Nevada, pp 12061211,
June 2005.
T. Lee and G. Young, Routing in Reconfigurable Free Space Optics Network, Proceedings of
the 2004 International Conference on Parallel and Distributed Processing Techniques and
Applications, Nevada, pp. 946952, June 2004.
J. Sum, M. Li, C. Ng, T. Wong and G. Young, A study of the Connectedness of Gnutella,
Proceedings of the 2004 International Conference on Parallel and Distributed Processing
Techniques and Applications, Nevada, pp. 960966, June 2004.
Book Chapter: G. Young, Chapter 37: Routing Real-Time Messages on Network, in
Handbook of Scheduling: Algorithms, Models, and Performance Analysis, J. Leung, ed.,
CRC Press, 42 pp., ISBN: 1584883979, 2004.
C. Leung, J. Sum, H. Shen, J. Wu and G. Young, Analysis and Design of an Agent Searching
Algorithm for e-Marketplaces, Cluster Computing, Vol. 7, pp. 8590, 2004.
S. Lau, G. Young, W. Kan and Y. Wu, On Open-ends Bin Packing Problem, Journal of
Combinatorial Mathematics and Combinatorial Computing, Vol. 44, pp. 39, 2003.
S. Lau, G. Young, W. Kan and Y. Wu, On-Line Open-end Bin Packing, Journal of
Combinatorial Mathematics and Combinatorial Computing, Vol. 44, pp. 129144, 2003.
J. Sum, H. Shen, G. Young, J. Wu, C. Leung, Analysis on Extended Ant routing Algorithms
for Network Routing and Management, Journal of Supercomputing, Volume 24, Issue 3,
pp. 327340, 2003.
J. Sum, H. Shen, C. Leung and G. Young, Analysis on a Mobile Agent Based Algorithm for
Network Routing and Management, IEEE Transactions on Parallel and Distributed
Systems, Volume 14, Issue 3, pp. 193202, 2003.
Page 78 of 224
C3 CS 12/14/04
Professor
10. Other scholarly activity during the last 5 years: grants, sabbaticals, software development,
etc.
NSF Grant EIA-0321333 (with Kuang, Jiang, Livesay, Park and Raheja), Acquisition of a
Network of Workstations for Research in Parallel and Distributed Computing, 8/2003
7/2005. (Awarded Amount: $159,658.00).
Lottery Grant, Computer Science Network Laboratory, 1/200312/2003. (Awarded Amount:
$42,300.00).
Quality Learning Fund, 200708.
Presidents Travel Fund, 200304, 200405, 200506, 200607, 200708.
Faculty Development Grant, 200304, 200506, 200607, 200708.
Early Career Faculty Learning Community Award, 200304.
Editorial Broad Members of the Journal of Supercomputing, Kluwer Academic Publishers.
Editorial Broad Members of the International Journal of High Performance Computing and
Networking, Inderscience Publishers.
Served as a program committee member for several international conferences.
Served as a reviewer for several journals.
Served as a reviewer for several international conferences.
Lectured at CSU Fullerton, California Lutheran University and National Chung Hsing
University of Taiwan.
New course developed: CS 599 Scheduling Algorithms, 2004.
Sabbatical, Spring 2006.
11. Scientific, professional and honor societies of which you are a member.
Member, Association for Computing Machinery (ACM).
Senior Member, Institute of Electrical and Electronic Engineers (IEEE) Computer Society.
Member, Upsilon Pi Epsilon honor society (UPE).
12. Honors and awards.
Achievement Award, presented by World Academy of Science (WAS), in recognition of
Research Contributions to the Field of Parallel and Distributed Computing and to the 2003
International MultiConference in Science and Computer Engineering, Las Vegas, June 2003.
Page 79 of 224
C3 CS 12/14/04
Professor
13. Courses taught this and last academic year term-by-term. This year is the academic year in
which this Self-Study report is prepared; the last year was the year prior to this. If you were
on sabbatical leave, please enter the information for the previous year. Please list each
section of the same course separately.
Term/Year
Fall 2006
Fall 2006
Fall 2006
Spring 2007
Spring 2007
Spring 2007
Spring 2007
Summer 2007
Summer 2007
Summer 2007
Fall 2007
Fall 2007
Spring 2008
Spring 2008
Spring 2008
Dept
Course
CS 370
CS 380
CS 463
CS 130
CS 140
CS 463
CS 463
CS 210
CS 380
CS 431
CS 380
CS 530
CS 140
CS 331
CS 380
Course Title
Parallel Processing
Computer Networks
Undergraduate Seminar
Discrete Structures
Introduction to Computer Science
Undergraduate Seminar
Undergraduate Seminar
Computer Logic
Computer Networks
Operating Systems
Computer Networks
Advanced Algorithm Design and Analysis
Introduction to Computer Science
Design and Analysis of Algorithms
Computer Networks
Quarter
hours
4
4
2
4
4
2
2
4
4
4
4
4
4
4
4
Class
size
27
36
13
23
28
15
15
11
31
15
18
16
35
32
35
14. Other assigned duties performed during the academic year, with average hours per week.
Indicate which, if any, carry extra compensation. If you are course coordinator for courses
taught by other than full-time faculty, please indicate here which courses.
Page 80 of 224
C3 CS 12/14/04
IV. Curriculum
Intent: The curriculum is consistent with the program's documented objectives. It combines
technical requirements with general education requirements and electives to prepare
students for a professional career in the computer field, for further study in computer
science, and for functioning in modern society. The technical requirements include upto-date coverage of basic and advanced topics in computer science as well as an
emphasis on science and mathematics.
(Curriculum standards are specified in terms of semester hours of study. Thirty semester hours
generally constitutes one year of full-time study and is equivalent to 45 quarter hours. A course
or a specific part of a course can only be applied toward one standard.)
A. Title of Degree Program
Give the title of the degree program under review, as specified on the transcript and diploma.
Transcript:
Diploma:
Page 81 of 224
C3 CS 12/14/04
Page 82 of 224
C3 CS 12/14/04
Page 83 of 224
C3 CS 12/14/04
First
Quarter
Freshman
Year
Second
Quarter
Freshman
Year
Third
Quarter
Freshman
Year
First
Quarter
Sophomore
Year
Second
Quarter
Sophomore
Year
Third
Quarter
Sophomore
Year
Subtotals
CS 140
MAT 114
ENG 104
CS 141
CS 130
MAT 115
G. E.
CS 210
CS 240
MAT 116
BIO 110
BIO 111L
CS 241
MAT 214
PHY 131
PHY 131L
G. E.
CS 264
MAT 208
PHY 132
PHY 132L
PLS 201
CS 256
CS 311
STA 326
PHY 133
PHY 133L
Other
General Ed.
Science
Course Title
Mathematics
Dept
Number
CS Advanced
Year
Quarter
CS Core
4
4
4
4
4
4
4
Computer Logic
Data Structures and Algorithms I
Analytic Geometry and Calculus III
Life Science
Life Science Laboratory
Data Structures and Algorithms II
Calculus of Several Variables
General Physics
General Physics Laboratory
4
4
4
3
1
4
3
3
1
4
4
4
3
1
4
4
4
4
28
27
3
1
16
16
Page 84 of 224
C3 CS 12/14/04
CS 331
CS Elect.
HST 202
G. E.
Second
Quarter
Junior
Year
CS 301
CS 365
G. E.
G. E.
Numerical Methods
Computer Architecture
Third
Quarter
Junior
Year
CS 380
CS 408
G. E.
G. E.
Computer Networks
Programming Languages
First
Quarter
Senior
Year
CS 420
CS 435
CS 375
G. E.
Artificial Intelligence
Database Systems
Computers and Society
4
4
Second
Quarter
Senior
Year
CS 480
CS Elect.
G. E.
G. E.
Software Engineering
4
4
CS 431
CS Elect.
CS 463
Operating Systems
Third
Quarter
Senior
Year
Subtotals
Totals
Other
First
Quarter
Junior
Year
Course Title
General Ed.
Dept
Number
Science
Year
Quarter
Mathematics
CS Advanced
CS Core
4
4
4
4
2
4
2
4
4
4
4
4
4
4
4
4
4
Undergraduate Seminar
4
3
2
89 quarter hours
180 quarter hours
47
51
28
2
29
16
40
56
Page 85 of 224
C3 CS 12/14/04
CS 210
CS 240
CS 241
CS 256
CS 264
CS 301
CS 311
CS 331
CS 365
CS 380
CS 408
CS 420
CS 431
CS 435
CS 463
CS 480
Total
1
2
2
1
1
1
2
2
1
0.5
1
1
0.5
1
0.5
0.5
0.5
1
1
4
0.5
1
2
1
18
1.5
1
1.5
10
Architecture
1
1
Data
Structures
Prog.
Languages
CS 141
Discrete Structures
Introduction to Computer Science
Introduction to Programming and
Problem-Solving
Computer Logic
Data Structures and Algorithms I
Data Structures and Algorithms II
C++ Programming
Computer Organization and
Assembly Programming
Numerical Methods
Language Translation and Automata
Design and Analysis of Algorithms
Computer Architecture
Computer Networks
Programming Languages
Artificial Intelligence
Operating Systems
Database Systems
Undergraduate Seminar (2)
Software Engineering
Software
Design
CS 130
CS 140
Course Title
Algorithms
Dept Number
Theoretical
Foundations
0.5
3
1
1
1
1
1
2
12.5
1
12.5
4
0.5
1
1
10
Elective CS coverage:
In addition to the above required CS courses, students must take at least 11 units (3 courses) of
CS electives, at least 8 units (2 courses) of which come from the following list:
CS 245
CS 352
CS 356
CS 370
CS 411
CS 445
CS 450
CS 460
CS 490
CS 499
Page 86 of 224
C3 CS 12/14/04
General
Standard IV-1. The curriculum must include at least 40 semester hours of up-to-date study in
computer science topics.
1. If it is not obvious from the above tables that the curriculum includes at least 40 semester
hours (60 quarter hours) of computer science topics, please explain.
As shown in the above tables, there are 28 (CS Core) + 51 (CS Advanced) = 79 quarter hours
of computer science topics in the curriculum.
Standard IV-2. The curriculum must contain at least 30 semester hours of study in mathematics
and science as specified below under Mathematics and Science.
2. If it is not obvious from the above tables that the curriculum includes at least 30 semester
hours (45 quarter hours) of study in mathematics and science, please explain.
As shown in the above tables, there are 29 (Mathematics) + 16 (Science) = 45 quarter hours of
study in mathematics and science.
Standard IV-3. The curriculum must include at least 30 semester hours of study in humanities,
social sciences, arts and other disciplines that serve to broaden the background of the
student.
3. If it is not obvious from the above tables that the curriculum includes at least 30 semester
hours (45 quarter hours) of study in humanities, social sciences, arts, and other disciplines
that serve to broaden the background of the student, please explain.
As shown in the above tables, there are 56 (General Ed.) quarter hours of humanities, social
sciences, arts, and other disciplines.
Page 87 of 224
C3 CS 12/14/04
Standard IV-4. The curriculum must be consistent with the documented objectives of the
program.
Describe the consistency between the documented objectives of the program and the curriculum.
How does the curriculum contribute to the achievement of the documented objectives?
The curriculum supports the Educational Objectives of the program:
EO1
EO2
EO3
EO4
EO5
EO6
Computer Science
Standard IV-5. All students must take a broad-based core of fundamental computer science
material consisting of at least 16 semester hours.
4. If it is not obvious from the above tables that the curriculum includes a broad-based core of
fundamental computer science material consisting of at least 16 semester hours (24 quarter
hours), please explain.
As shown in the above tables, there are 28 (CS Core) quarter hours of fundamental computer
science material.
Page 88 of 224
C3 CS 12/14/04
Standard IV-6. The core materials must provide basic coverage of algorithms, data structures,
software design, concepts of programming languages and computer organization and
architecture.
5. The core materials must provide basic coverage of the following areas. Please indicate below
the approximate number of quarter hours in the core devoted to each topic. (This material
can be gathered from your course descriptions, but it will ease the job for the visiting team if
you do this in advance.)
As shown in the above tables and the following summary, the required CS Core and
CS Advanced coursework provides coverage of all areas.
Area
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Quarter hours
(Core)
5
6.5
6.5
4.5
6
3.5
Quarter hours
(Advanced)
5
11.5
2.5
8
6.5
6.5
Quarter hours
(Total)
10
18
9
12.5
12.5
10
Standard IV-7. Theoretical foundations, problem analysis, and solution design must be stressed
within the programs core materials.
6. The following areas must be stressed within the programs core materials. Indicate the
course numbers of courses embodying a significant portion of these areas.
Area
Theoretical Foundations
Problem Analysis
Solution Design
Standard IV-8. Students must be exposed to a variety of programming languages and systems
and must become proficient in at least one higher-level language.
7. To what programming languages and operating systems are students exposed?
The required introductory programming sequenceCS 140141240241is taught in Java.
Students learn C++ in required course CS 256. Upper division projects may prescribe use of
one of these languages or may allow students to choose a language subject to instructor
approval, including languages other than Java or C++.
Students are exposed to Windows and to Unix operating system in introductory courses. These
operating systems are used (often prescribed) in advanced courses.
Page 89 of 224
C3 CS 12/14/04
Page 90 of 224
C3 CS 12/14/04
Standard IV-12. The curriculum must include at least 12 semester hours of science.
13. If it is not obvious from the tables above that students take at least 12 semester hours
(18 quarter hours) of science, please explain.
Students take PHY 131/131L, PHY 132/132L, PHY133/133L, BIO 110/111L for a total of
16 quarter hours of science.
We fell out of compliance with ABETs 18 quarter hour standard when we were required by
the Chancellor to lower the number of units in the CS major from 194 to 180. We will rectify
this problem over the next year as we revise the curriculum to comply with ABETs new
accreditation criteria.
Standard IV-13. Course work in science must include the equivalent of a two-semester sequence
in a laboratory science for science or engineering majors.
14. If it is not obvious from the tables above and from course descriptions and/or your catalog
that the science requirement includes a full year (two-semester or three-quarter) sequence in
a laboratory science for science and engineering majors, please explain.
The physics sequencePHY 131/131L, PHY 132/132L, PHY 133/133L (General Physics)
is a full year sequence including laboratories.
Standard IV-14. Science course work additional to that specified in Standard IV-13 must be in
science courses or courses that enhance the student's ability to apply the scientific
method.
Additional Areas of Study
15. If it is not obvious from the tables above and from course descriptions and/or your catalog
that the remainder of the science requirement is met with science courses or courses that
enhance the students abilities in the application of the scientific method, please explain.
(Mathematics, statistics, and courses normally considered part of the computer science
discipline should not be included here).
BIO 110/111L (Life Science) complements the physics sequence.
Page 91 of 224
C3 CS 12/14/04
Standard IV-15. The oral communications skills of the student must be developed and applied in
the program.
Standard IV-16. The written communications skills of the student must be developed and applied
in the program.
16. Each students oral and written communications skills must be developed and applied in the
program, i.e., in courses required for the major. This information should be included in
course descriptions; please give course numbers below.
Communications skills
Oral
Written
Developed in
COM 100 or COM 204
ENG 104, CS 140
Applied in
CS 375, CS 463
CS 375, CS 463, CS 480
In addition to the three required courses in Communication in the English Language, all
graduates of Cal Poly Pomona must pass a Graduation Writing Test. This test requires students
to write an essay on a topic announced at the time of the examination. The essays are graded
using a holistic grading system by faculty from various departments in the university. Students
for whom English is a second language may substitute a two-quarter sequence of courses,
preceded by preparatory courses, for the Freshman English course. No other exceptions to the
requirements are permitted. Students who have difficulty meeting the requirements are
encouraged to seek assistance; programs are available on campus to meet those needs.
In addition to the General Education courses in Communication in the English Language,
University policy requires that every course approved for General Education credit contain a
significant writing component. Thus, while the English and Foreign Language Department is
responsible for developing and assessing competence in written and oral communication,
every program on campus is involved in helping students to acquire and strengthen this
competence.
Computer Science courses require written work in the form of program documentation, essay
examination questions, term papers, and written homework. Several courses require oral
communication: the Undergraduate Seminar course requires students to prepare and deliver a
presentation; software design projects in courses may require students to give individual or
team presentations of their designs. Students receive feedback in each of these cases; specific
corrective actions vary among faculty members and courses. When a term paper is required,
the grade for the term paper is a significant part of the course grade. Oral and written
communication skills are the focus of the Undergraduate Seminar, and the basis for the grade.
The introductory course, CS 140Introduction to Computer Science, has a written essay as
one of its requirements. CS 375Computers and Society, is a General Education course that
requires several written essays.
Page 92 of 224
C3 CS 12/14/04
Standard IV-17. There must be sufficient coverage of social and ethical implications of
computing to give students an understanding of a broad range of issues in this area.
17. Social and ethical implications of computing must be covered in the program. This
information should be included in course descriptions; please give course numbers below.
E. Course Descriptions
1. For each required or elective computer science course that can be counted in the curriculum
being reviewed for accreditation, include a two-page or three-page course outline at this point in
the Self-Study. If your documentation does not exactly follow this format, be sure that all of the
requested information (if applicable) is present, and please in any case adhere to a common
format for all course descriptions.
Note that the outline format calls for information on the content of the course in the areas of
algorithms, data structures, software design, concepts of programming languages, computer
organization and architecture. This is not intended to suggest that every course must have some
coverage of each of these topics. For a given course, please include the information from a listed
area only if the course has significant content in that specific area.
Page 93 of 224
C3 CS 12/14/04
CS 128
Introduction to C++
COURSE DESCRIPTION
Course Goals
An introduction to the basic concepts of programming and its use for problem solving.
Learning good programming principles and practices using the C++ language. Good
knowledge of the syntax and semantics of C++ and its compilation and execution. Solving
simple problems by writing programs in C++.
Prerequisites by Topic
Number System
Functions
Polynomials
Systems of equations
Trigonometric functions
Page 94 of 224
C3 CS 12/14/04
CS 128
Introduction to C++
Page 95 of 224
C3 CS 12/14/04
CS 128
Introduction to C++
Modify your ATM program to include functions for the 4 cases (excluding the case when you
exit the menu). Make sure your functions use pass by value and pass by reference parameters
as needed for different cases. The functions should not be returning any value, hence they
should be all void functions. Also, have a function that prints a balance and a function that
prints the menu when called. (1.5 weeks)
Write a program that reads in 12 positive integers from a file called input.txt and stores them
in an integer array. Make sure that the user doesnt enter a negative integer and if one is
entered, prompt the user again for a positive integer until the user enters a positive integer. The
program then prints out the integers in reverse order and also the greatest, smallest, sum and
average (as a float) into a file called output.txt. The program should use a function called avg
to calculate the average of the integers.
The formatting of the output in the file is as follows:
Reverse order:
Greatest:
Smallest:
Sum:
Average:
(2 weeks)
Estimate Curriculum Category Content (Quarter hours)
Area
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
1
1
2
Page 96 of 224
C3 CS 12/14/04
CS 128
Introduction to C++
Page 97 of 224
C3 CS 12/14/04
CS 130
Discrete Structures
COURSE DESCRIPTION
Page 98 of 224
C3 CS 12/14/04
CS 130
Discrete Structures
Core
3
1
Advanced
Page 99 of 224
C3 CS 12/14/04
CS 130
Discrete Structures
Solution Design
Please describe the design experiences common to all course sections.
CS 140
Course Goals
A solid foundation in problem solving by computer, and in good programming principles and
practices. Comprehension of the role of classes, the use of methods, the declaration and
manipulation of data. Understanding of input and output using the keyboard, display, and files.
Competency with use of the command line. Experience with summing, finding extrema,
counting occurrences, sorting and searching. Basic appreciation of the roles of arrays and
strings. Understanding of the history and landscape of computing and programming languages.
Familiarity of social and ethical issues in computing.
Prerequisites by Topic
Number systems
Functions
Polynomials
Systems of equations
Mathematical induction
Trigonometric functions
CS 140
CS 140
Write a program that takes a positive integer from the keyboard. Your program will sum all the
integers from 1 up to and including the number entered. For example, if the user enters 5, the
loop will sum 1 + 2 + 3 + 4 + 5. Your program will make the same calculation three times (for
loop, while loop, do loop) your loops should result in the same sum for all three calculations.
Each loop should be implemented in its own method. Your main method will check for valid
input. Valid input will be passed to each loop method, which will in turn apply the appropriate
summing algorithm. Resultant output to the display for each loop will also be accomplished
through each method. (2 weeks)
Write a program that reads a series of integers from a file and places them in a onedimensional array. From the array, your program will sum all the integers, find the extrema,
sort the integers, and place all results in a file called array.dat. (2 weeks)
Estimate Curriculum Category Content (Quarter hours)
Area
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Core
Advanced
1
1
2
CS 140
Theoretical Content
Please list the types of theoretical material covered, and estimate the time devoted to such
coverage.
Theory is peripheral to this course.
Problem Analysis
Please describe the analysis experiences common to all course sections.
(1) Students are expected to understand how Java fits in with the history and landscape of
computing and programming languages.
(2) Students should be able to examine a problem domain and devise a hierarchy
appropriate for representing it in Java.
(3) Students should understand social and ethical issues in computing.
Solution Design
Please describe the design experiences common to all course sections.
(1) Given a word problem, students should be able to design a solution using javas builtin classes and methods.
(2) Students should be able to examine a problem domain and devise an appropriate
solution with Java constructs.
CS 141
Course Goals
A solid foundation in problem solving by computer, and in good programming principles and
practices. Fuller comprehension of the role of classes, the use of methods, the declaration and
manipulation of data. Appreciation of the role of arrays and strings; the uses of recursion; the
handling of exceptions. Experience with the process of defining objects and the creation of
reusable classes. Broader understanding of input and output using the keyboard and display
and using files. Basic understanding of interfaces and inheritance.
Prerequisites by Topic
Introduction to computers and problem solving
Basics of Java
Java control structures
Use of arrays
CS 141
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
1
1
1
1
CS 141
CS 210
Computer Logic
COURSE DESCRIPTION
CS 210
Computer Logic
Core
2
Advanced
CS 210
Computer Logic
CS 240
Course Goals
A broader understanding of the approaches to the organization of data and the algorithms for
manipulation of that data. An appreciation for the relationships between data structures and
algorithms and some of the performance issues involved.
Prerequisites by Topic
Programming capability
Classes and objects
Methods, parameter passing
Encapsulation
Arrays, vectors, matrices
CS 240
Core
Advanced
1
2
1
CS 240
CS 241
CS 241
Prerequisites by Topic
Good programming skill in Java
Abstract data type(ADT) and interfaces in Java
Physical implementation of ADT
Sequential and linked representation of list
Linked list, stack, and queue
Concept of complexity and analysis of algorithm
Hashing
Sequential file in Java
Major Topics Covered in the Course
Recursion (2 hours)
Analysis of Algorithms (3 hours)
Generic type and programming in Java (3 hours)
Trees (7 hours)
Heaps and priority queues (4 hours)
Sorting (5 hours)
Graphs (5 hours)
Sets and maps (3 hours)
File organization and processing (2 hours)
Index organization (4 hours)
Files in Java (2 hours)
Laboratory projects (specify number of weeks on each)
Writing two functions: the first function converts a tree from the sequential representation to
the linked representation, and the second function performs the reverse operation. (2 weeks)
Writing a program that uses the class Heap to construct the Hoffman code for a give set of
characters while constructing the tree, i.e. constructing the tree and the code at the same time.
(2 weeks)
Writing a program that constructs two classes for the Graph: the first class uses the Java
Collection Frame Class BitSet and the matrix representation and the second one uses the
linked representation. Each class includes several functions: adding and deleting edges and
vertices, breadth-first search, depth-first search, topological sorting, and conversion between
matrix and linked representations. (2 weeks)
Writing a program that compresses and decompresses a given file using the Hoffman code and
tree and representing the compressed file as a file of objects of type BitSet. (2 weeks)
CS 241
Core
Advanced
1
2
0.5
0.5
CS 241
Solution Design
Please describe the design experiences common to all course sections.
Top-down and bottom-up design of problems and mapping the design to classes
Building data structures using basic constructs of programming languages
Using Java Collection Framework for building data structures and applications
CS 245
CS 245
Prerequisites by Topic
Programming capability
Classes and objects
Methods, parameter passing
Basic trigonometry
Comprehensive understanding of college algebra
Major Topics Covered in the Course
Basics of HCI including metaphor and composition (3 hours)
Review of Java conceptsclass and methods (2 hours)
Graphics software components (4 hours)
AWT components and methods (6 hours)
Swing components and methods (7 hours)
Graphics algorithms (8 hours)
Animation (3 hours)
Tests (2 hours)
Laboratory projects (specify number of weeks on each)
Program simple web site using HTML and XML. (1 week)
Using Java AWT, generate various 2-D objects with different attributes. (2 weeks)
Implement geometric transformation and simplified animation effect using AWT. (2 weeks)
Using Swing, map objects over 3-D geometry sphere and torus. Also implement some chaos
theory. (2 weeks)
Write code that implements different Swing Components. (2 weeks)
Estimate Curriculum Category Content (Quarter hours)
Area
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Core
Advanced
1
1
1
1
CS 245
CS 256
C++ Programming
COURSE DESCRIPTION
CS 256
C++ Programming
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
1
1
1
1
CS 256
C++ Programming
CS 264
CS 264
Prerequisites by Topic
Programming skill in a high -level language, computer logic, and basic data structure.
Major Topics Covered in the Course
Von Neumann model and basic computer organization and operations (2 hours)
System software components (Operating systems, compilers, interpreters, assemblers, linkers)
(3 hours)
Computer and CPU structures, interfacing and communication (2 hours)
Computer abstraction and Technology (2 hours)
Instruction set architecture and performance evaluation (5 hours)
Addressing modes (2 hours)
RISC processor architecture and its instructions (2 hours)
Array representation and manipulation (4 hours)
String representation and operations (2 hours)
Record and object representation and manipulation (4 hours)
Efficient Algorithm Development(function and macro) (3 hours)
Function call using the stack and writing efficient recursive functions (6 hours)
I/O programming, memory-mapped I/O, exceptions and interrupts (3 hours)
Laboratory projects (specify number of weeks on each)
Writing a program in the MIPS assembly language that demonstrates the functions of different
instructions and macros. (1 week)
Writing a program in the MIPS assembly language that implements the improved bubble sort.
(2 weeks)
Writing a program in the MIPS assembly language that demonstrates two-dimensional array
representation and manipulation. (2 weeks)
Writing a program in the MIPS assembly language that efficiently implements specific
recursive functions, i.e. with a minimum number of stack operations. (2 weeks)
Writing a program in the MIPS assembly language that demonstrates string and record
representation and manipulation. (1 week)
CS 264
Core
Advanced
0.5
0.5
1
0.5
1.5
CS 264
Solution Design
Please describe the design experiences common to all course sections.
Top-down and bottom-up design of problems and mapping the design to a hierarchy of
functions.
Writing an efficient recursive functions in an assembly language, i.e. with a minimum
number of stack operations.
CS 301
Numerical Methods
COURSE DESCRIPTION
Course Goals
Understanding of floating point arithmetic, significance, the four basic types of error
(roundoff, representation, loss of significance, accumulation) and the role each plays in correct
implementation.
Understanding of floating point arithmetic, significance, the four basic types of error
(roundoff, representation, loss of significance, accumulation) and the role each plays in correct
implementation.
Understanding of Taylor Series and its application to error analysis and the determination of
error bounds.
Understanding of role of testing and verification in the correct implementation of numerical
methods on a digital computer and the solution of numerical problems.
Ability to find zeroes of functions using various methods; Understanding of pros and cons, and
rates of convergence, of these methods.
Ability to solve systems of equations and their solution using scaled partial pivoting and
iterative methods, including consideration of conditioning and stability.
Ability to compute and apply numerical integration and differentiation using various methods,
including computing error bounds.
CS 301
Numerical Methods
Core
Advanced
1
1
1
1
CS 301
Numerical Methods
CS 311
Course Goals
The goal of this course is to introduce students to the theoretical foundations of Computer
Science and to train them in using mathematical tools and formal methods that are applied in
computing.
Prerequisites by Topic
Good knowledge of at least one programming language and familiarity with concepts and
techniques of discrete mathematics.
Major Topics Covered in the Course
Regular Languages (3 hours)
Finite Automata (7 hours)
Kleenes Theorem (7 hours)
Nondeterminism (3 hours)
Context-free Grammars (4 hours)
Pushdown Automata (6 hours)
Context-free Languages (5 hours)
Parsing (5 hours)
CS 311
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
2
1
1
CS 311
CS 331
CS 331
Core
Advanced
4
CS 331
CS 352
Symbolic Programming
COURSE DESCRIPTION
Course Goals
The goal of this course is to introduce students to two major programming languages for
Artificial Intelligence i.e. PROLOG and LISP. Students are supposed to learn about functional
and declarative programming paradigms and appreciate their role in manipulation of symbolic
data.
Prerequisites by Topic
Good grasp of generalized list processing algorithms.
Major Topics Covered in the Course
Prolog
Syntax and semantics of Prolog programs (4 hours)
Lists, operators, arithmetic (6 hours)
Data abstraction, using Prolog (5 hours)
Controlling backtracking, the cut mechanism (4 hours)
Prolog input and output (3 hours)
Programming style and techniques (2 hours)
Page 137 of 224
C3 CS 12/14/04
CS 352
Symbolic Programming
Lisp
The evaluation process in Lisp (2 hours)
Atoms, lists, and strings (3 hours)
Built-in and user defined functions in Lisp (4 hours)
Recursion (3 hours)
Input and output (2 hours)
Programming style and techniques (2 hours)
Laboratory projects (specify number of weeks on each)
Write a PROLOG program that given an arbitrary date and a positive integer n returns the date
of the day n weeks later. (1 week)
Example:
? - date(day(april, 21, 1948), 2, X).
X = day(may, 5, 1948)
Write a PROLOG program to solve the monkey and banana problem. The top goal should be
solve(sit(X,Y,Z,W),L), where X represents initial position of the monkey, Y represents initial
position of the box, W specifies if monkey is on the box, Z states if monkey has banana and L
is the computed list of actions that monkey should take to achieve a goal situation of the form
sit(_ ,_,_,has). (1.5 weeks)
Write a PROLOG program to solve the stable marriages problem as discussed in class. The
input data for your program should be stored in the separate file. (2 weeks)
Example:
? - stable_marr.
Ann marries John.
Mary marries Tom.
.
Lisa marries Jack
Write a LISP program that given a year, a day of the week of March 15, and a positive integer
n computes the day of the week n years later. (1 week)
Example:
(date 1967 monday 4)
Write a LISP program to solve the stable marriages problem as discussed in class. (1.5 weeks)
Example:
> (STABLE-MARR WL ML)
((Ann. John) (Mary.Tom) ... (Lisa. Jack))
CS 352
Symbolic Programming
Core
Advanced
2
2
CS 352
Symbolic Programming
Solution Design
Please describe the design experiences common to all course sections.
Design knowledge base associated with the given problem to solve that problem using
PROLOG
Choose and define functions to be used to solve the problem using LISP.
CS 356
CS 356
CS 356
Core
Advanced
3
1
CS 356
Solution Design
Please describe the design experiences common to all course sections.
Given a problem description, students should be able to identify objects, design class
diagrams and behavioral diagrams such as sequence diagram, state diagram, and activity
diagram.
CS 365
Computer Architecture
COURSE DESCRIPTION
CS 365
Computer Architecture
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
CS 365
Computer Architecture
CS 370
Parallel Processing
COURSE DESCRIPTION
CS 370
Parallel Processing
Core
Advanced
2
2
CS 370
Parallel Processing
CS 375
CS 375
Prerequisites by Topic
This class is open to students in any major who have completed their lower division general
education coursework in mathematics and natural science (G.E. Area B), and in social sciences
(G.E. Area D).
Major Topics Covered in the Course
Database privacy There is a great deal of information about all of us recorded in computer
databases. What rules should govern how this information is used? What do the privacy
notices that we receive from our banks and financial institutions really mean?
Privacy vs. National Security New encryption methods make it possible to keep e-mail and
phone conversations secret from others. How should our desire for privacy be balanced
with the need of law-enforcement agencies to intercept communications of suspected
criminals or terrorists?
Web publishing: Freedom vs. Responsibility How serious are the problems created by Web
sites that contain obscene or inappropriate materials, such as pornography, hate material,
bomb-making information, and so on? Should there be any restrictions on the material that
is put on the Web?
Software risk and reliability Computers are increasingly used to control medical devices,
automobiles, aircraft, and other safety-critical systems. How safe are such systems? What
can we do to manage the risks involved?
Copyright issues in the electronic age It is easy to use computers to copy music, videos,
software and books in violation of copyright law. What is the extent of this problem?
What can or should be done about it?
Ubiquity of computers: history and current trends Compared to 40 years ago, how have
computers altered banking, commerce, communications, entertainment and other sectors?
What changes are right around the corner?
Potential dangers of emerging technologies Some leading thinkers have expressed concern
on the possible adverse effects of new technology, including AI, nanotechnology and
biotechnology. What is the basis for these fears, and are they justified?
Terrorism and cyber-security How real are the threat of cyber-terrorism? What are the issues
in information security, and what can we do about them?
Future of Artificial Intelligence and pervasive computing Is the notion of intelligent,
embedded, integrated and pervasive computing merely science fiction, or the dawn of a
new era in computing?
Laboratory projects (specify number of weeks on each)
There are no computing projects in this course.
CS 375
Core
Advanced
CS 375
Solution Design
Please describe the design experiences common to all course sections.
Students are not so much trying to solve problems, as they are trying to think as broadly
and clearly as possible about the social and ethical issues surrounding computers,
networking and the information society in which we increasingly find ourselves.
CS 380
Computer Networks
COURSE DESCRIPTION
CS 380
Computer Networks
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
1.5
0.5
1
0.5
0.5
CS 380
Computer Networks
CS 408
Programming Languages
COURSE DESCRIPTION
Course Goals
Understanding of the important concepts of abstraction, information hiding, parameterization,
and binding.
Appreciation of the major programming paradigms, and of issues such as concurrency.
Understanding of the run time representations of programs and data structures and their
relation to programming language and computer architecture.
Improved background for choosing appropriate languages.
Greater ability to learn new languages.
Understanding of the significance of language implementation.
Ability to design new languages.
Overall advancement of computing.
Prerequisites by Topic
Computer Organization and Assembly Programming
Language Translation and Automata
Programming competence
CS 408
Programming Languages
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
1
3
CS 408
Programming Languages
Theoretical Content
Please list the types of theoretical material covered, and estimate the time devoted to such
coverage.
Theory is peripheral to this course.
Problem Analysis
Please describe the analysis experiences common to all course sections.
Students are expected to analyze different programming languages in terms of readability,
writability, reliability, and portability.
Solution Design
Please describe the design experiences common to all course sections.
String processing software design.
Link-list processing software design.
CS 411
CS 411
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
1
1
1
1
CS 411
CS 420
Artificial Intelligence
COURSE DESCRIPTION
Course Goals
Understanding of the goals and ramifications of Artificial Intelligence.
Understanding of the role of search in AI, and ability to formulate AI problems as search
problems.
Understanding of, and ability to use, the general graph search algorithm, best-first search, and
A* search algorithm.
Understanding of, and ability to use, specialized search techniques for constraint-satisfaction
problems and two-agent games.
Familiarity with different approaches with different approaches to knowledge representation
and knowledge manipulation in the search for solutions to complex problems.
Understanding of neural networks and ability to design training procedure for a neural
network.
Understanding of machine learning.
Understanding of reasoning with uncertain information.
Understanding of ethical and social implications of the advances in creation of intelligent
systems.
CS 420
Artificial Intelligence
Prerequisites by Topic
Statistics
Language Translation and Automata
Programming competence
Major Topics Covered in the Course
Goals and ramifications of Artificial Intelligence (4 hours)
Search in AI (6 hours)
General graph search algorithm, best-first search, A* search algorithm (8 hours)
Two-agent games (6 hours)
Neural networks and machine learning (4 hours)
Reasoning with uncertain information (4 hours)
Knowledge representation and knowledge manipulation (4 hours)
Ethical and social implications of the intelligent systems (2 hours)
Testing (2 hours)
Laboratory projects (specify number of weeks on each)
Wine puzzle using Breadth-first-search & depth-first-search (2 weeks)
8 puzzle using heuristic (A*, admissible A*) search (2 weeks)
Machine learning on the game of Nim (2 weeks)
Estimate Curriculum Category Content (Quarter hours)
Area
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Core
Advanced
1
1
1
1
CS 420
Artificial Intelligence
CS 431
Operating Systems
COURSE DESCRIPTION
CS 431
Operating Systems
Prerequisites by Topic
Computer Architecture
Advanced data structures
File organization
Programming maturity
Major Topics Covered in the Course
Introduction and overview of operating system (2 hours)
Process/processor concepts (4 hours)
Job and processor scheduling (6 hours)
Asynchronous concurrent processes (6 hours)
Deadlock (6 hours)
Memory management (8 hours)
File system (4 hours)
Social and ethical considerations relating to OS security, privacy, and property rights (2 hours)
Testing (2 hours)
Laboratory projects (specify number of weeks on each)
Job and processor scheduling (2 weeks)
Asynchronous concurrent processes (2 weeks)
Virtual memory management (2 weeks)
Estimate Curriculum Category Content (Quarter hours)
Area
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
2
1
1
CS 431
Operating Systems
CS 435
Database Systems
COURSE DESCRIPTION
Course Goals
Theoretical foundations of database systemboth schema design and data manipulation. Use
of a current relational database system. Familiarity with SQL. Interfacing of a general-purpose
computer language to a database management system.
Prerequisites by Topic
Programming in a modern general-purpose language.
Data structuresinterfaces and implementations.
CS 435
Database Systems
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
1
1
1
1
CS 435
Database Systems
CS 445
Computer Graphics
COURSE DESCRIPTION
Course Goals
A solid foundation of 2D and 3D graphics drawing concepts and geometric transformations.
Understanding of windowing and clipping algorithms. Comprehension of hidden line and
surface removal techniques. Appreciation of the role of color models in applications. Basic
understanding of animation techniques. Experience programming with OpenGL.
Prerequisites by Topic
Abstract data types
Trees
Graphs
Sorting
Hashing and searching
File concepts: byte I/O, character I/O, object I/O, random access
Primitive types in C/C++
Class and Method design
Variables, literals, and expressions
Control statements
Functions and parameter passing
CS 445
Computer Graphics
CS 445
Computer Graphics
Core
Advanced
1
1
1
1
CS 445
Computer Graphics
Problem Analysis
Please describe the analysis experiences common to all course sections.
Students are expected to associate algorithms with the problems they solve and to
recognize when particular algorithms (e.g. Gouraud shading) are appropriate.
Students should be able to examine a problem domain and devise a hierarchy appropriate
to represent it using OpenGL and C/C++.
Solution Design
Please describe the design experiences common to all course sections.
Given a word problem involving a graphics virtual world, students should be able to
design and implement appropriate classes, data structures, and algorithms to realize that
virtual world.
Students should be able to examine a problem domain and devise a hierarchy appropriate
to represent it using OpenGL and C/C++.
CS 450
Computability
COURSE DESCRIPTION
CS 450
Computability
Core
Advanced
3
0.5
0.5
CS 450
Computability
CS 460
Secure Communication
COURSE DESCRIPTION
CS 460
Secure Communication
Core
Advanced
1
2
0.5
0.5
CS 460
Secure Communication
CS 463
Undergraduate Seminar
COURSE DESCRIPTION
CS 463
Undergraduate Seminar
Core
Advanced
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Oral and Written Communications
Every student is required to submit at least 3 written reports (not including exams, tests,
quizzes, or commented programs) of typically 5 pages and to make 1 oral
presentations of typically 40 minutes duration. Include only material that is graded for
grammar, spelling, style, and so forth, as well as for technical content, completeness, and
accuracy.
Social and Ethical Issues
Please list the topics that address the social and ethical implications of computing covered in
all course sections. Estimate the class time spent on each topic. In what ways are the students
in this course graded on their understanding of these topics (e.g., test questions, essays, oral
presentations, and so forth)?
Introduction to computer ethics (0.5 hour)
Privacy and responsibility (0.5 hour)
Reliability (0.5 hour)
Security (0.5 hour)
Intellectual property (0.5 hour)
Computer crime (0.5 hour)
One essay on computer ethics is graded.
Theoretical Content
Please list the types of theoretical material covered, and estimate the time devoted to such
coverage.
None.
CS 463
Undergraduate Seminar
Problem Analysis
Please describe the analysis experiences common to all course sections.
None.
Solution Design
Please describe the design experiences common to all course sections.
None.
CS 480
Software Engineering
COURSE DESCRIPTION
CS 480
Software Engineering
Core
Theoretical Foundations
Algorithms
Data Structures
Software Design
Concepts of Programming Languages
Computer Organization and Architecture
Advanced
1
2
1
CS 480
Software Engineering
2. Course display for the visit. The course outline for each required or elective computer
science course must also be included in a display of course materials that is available for study at
all times during the evaluation visit. The course material display must include at least the
following for each course that can be counted in the computer science segment of the curriculum
being evaluated.
If a course is taught wholly on-line by a non-resident faculty member then data about that faculty
member must be included in the Self-Study or provided in separate documents for credentialing
purposes. In addition, for wholly on-line courses or a complete degree program, the results of an
electronic CAC survey to that group of students regarding their experiences in the program
(comparative to the usual on-site class visit) should be made available to the visiting team.
If available, please provide the location of URLs on a CAC-visit Website or site containing a set
of URL links that would allow an evaluator to retrieve specific data directly (if not provided in
hardcopy) as indicated above. These should be available before the time of the visit.
Note: In addition to the display materials, it would be very helpful to the visiting team if all
assessment documentation could be available in the same location as the display materials. It is
also very helpful if the display room contains computers with network connections.
2. Describe the computing facilities planning, acquisition, and maintenance processes and their
adequacy. Include discussion of these topics for university-wide computing facilities
available to all students (if used by your majors), your own laboratories and equipment (if
applicable), and facilities controlled by other departments and/or schools (if used by your
majors).
Network acquisition and maintenance
The network infrastructure is acquired and maintained by the CSU and our I&IT Division. The
connection to campus, core routers, building routers, LAN switches and cabling are first rate.
I&IT Systems has an adequate budget to regularly upgrade switches, and has overseen two
major overhauls of the core network.
Hardware acquisition and maintenance
I&IT has an adequate budget to regularly upgrade server hardware. The I&IT Systems group
operates a substantial Windows forest (win.csupomona.edu) on hardware that was first
acquired in 2002, and much of which is newer. They also operate a substantial Unix server
farm, which is being completely transitioned from older hardware running Sun Solaris to 50+
new servers running Linux. That transition is about 75% complete, with file sharing and web
publishing remaining to transition.
There is no regular provision in the College of Science or Computer Science Department
budgets for acquisition or upgrade of computing hardware, which means it must always be
done by ad hoc means. Those means have been minimally sufficient to maintain Computer
Science Department laboratories in the past, but Windows workstations therein are past
midlife and there are no identifiable funds for replacement. On the upside, the renovation of
building 3 included capital funds for equipment, and that budget held up throughout the
planning of that renovation, leading to a recent purchase of $87,550 in computing equipment
and $98,860 in new furniture.
Software licensing
We are well-served by a combination of CSU-wide and University-wide software licensing
agreements, as well as the Microsoft Developer Network (MSDN) Academic Alliance (AA),
and open source developments, which provide the necessary software to conduct our program.
Site licenses provide the Windows and MacOS operating systems, Microsoft Office suite,
McAfee virus protection, Mathematica and Oracle products for faculty and staff. MSDN
provides all Microsoft operating systems and software development tools for faculty, staff and
students. The MSDN AA licensing terms are very generous to students, allowing them to
freely acquire (using their BroncoName and BroncoPassword), install and retain Microsoft
software tools on their personal computers. Of course, open source software is very popular
with the Computer Science community and is readily available.
3. Discuss how you assess the adequacy of your laboratory and computing support.
The College of Science IT Help Desk system tracks all requests for hardware and software
support, and all maintenance work done by College and Department IT staff. The Computer
Science Department Chair has management-level privileges in the Help Desk system, and can
monitor all activities. It provides a thorough log of ongoing needs, and also documents
responsiveness in terms of what was done and how long it took. Critical and security
patches/upgrades are applied when needed, and discretionary software installations/upgrades
are routinely done during quarter breaks. All faculty and staff have user-level access to the
Help Desk system, which is closely monitored by IT staff. This system has been in place for
about a year and a half, and has improved the quality and surety of support.
4. Please attach any equipment replacement plans to this report.
Standard V-1. Each student must have adequate and reasonable access to the systems needed
for each course.
B. Student Access
State the hours the various facilities are open. State whether students have access from
dormitories or off campus by direct access, modem, etc., and describe this access quantitatively.
The Computer Science laboratories in building 8 are regularly open and staffed Monday
through Friday, 8 a.m. to 5 p.m. Faculty and staff have key and alarm code access, and can use
the laboratories under their supervision at any time. The new laboratories in building 3 are
entered using Broncocard swipe access, managed by the College of Science IT staff. The
access system is integrated with I&IT's identity management system, so is aware of all
individuals and a rich set of groups (e.g. by department, college, class, major, etc.). This
should allow access to authorized users and groups as needed.
Network-based services are available through the Internet around the clock. If security needs
restrict access to on-campus users, then those services are available from off-campus to
authorized users through the I&IT-provided VPN. All buildings on campus, including
dormitories, have wired 100 Mb/sec network connectivity.
Standard V-2. Documentation for hardware and software must be readily accessible to faculty
and students.
C. Documentation
Describe documentation for hardware and software systems available to students and faculty in
the computer science program. Explain how students and faculty have adequate and timely
access to the documentation.
All documentation of hardware and software systems is available through the web. Paper
documentation is no longer kept or made available. I&IT documents its facilities and services
at
http://www.csupomona.edu/~ehelp/,
the College of Science documents its facilities and services at
http://sci.csupomona.edu/it/,
and the Computer Science Department documents its facilities and services at
http://www.csupomona.edu/~cs/department/labs/.
Documentation and manuals for specific hardware and software are readily available from the
vendors' web sites. It is fair to say that the amount, availability and quality of documentation
available in 2008 is fantastic compared to decades past.
Standard V-3. All faculty members must have access to adequate computing facilities for class
preparation and for scholarly activities.
D. Faculty Access
Describe the computing facilities available to faculty for class preparation and for scholarly
activities. Include specifics regarding resources in faculty offices.
All faculty have an individual office with two 100 Mb/sec data ports, a workstation and laptop
running the operating system of their choice, and an LCD monitor. CSU-wide, Universitywide, and MSDN software licenses allow faculty to have software they need and want
installed from a rich suite of commercial and open-source offerings. Every classroom has an
instructor workstation provided by I&IT and sufficient ports so the instructor can connect their
own laptop while teaching. In either case, instructors can use and demonstrate any activities in
the classroom that they can do in their office. If the class is meeting in a laboratory equipped
with workstations (e.g. in 8-51, 8-52 or 3-2636), all students can participate in computing
activities during class. All of the classrooms and laboratories have secure wireless access, and
the software faculty use is almost all available to students, so those who bring their own laptop
to class can participate in activities along with the instructor during class.
Standard V-4. There must be adequate support personnel to install and maintain the
laboratories and computing facilities.
E. Support Personnel
1. What support personnel are available to install, maintain, and manage departmental
hardware, software, and networks?
The Computer Science Department has one full-time IT Consultant, who works closely with a
full-time College of Science IT Consultant and five student assistants. This level of support is
sufficient to manage department hardware and software in offices and laboratories. Hardware
and software in lecture classrooms (i.e. the TELS equipment) is managed by I&IT staff, and
all networking infrastructure is managed by I&IT. In total, faculty, staff and students are
adequately supported.
2. Describe any limitations due to this level of support?
There are no significant limitations caused by the IT support staffing arrangements.
3. Are any faculty members expected to provide hardware, network, or software support? If so,
describe this expectation including how such expectations are addressed in evaluation,
tenure, promotion, and merit pay decisions, and indicate what, if any, released time is
awarded for this effort.
Faculty and staff are not expected to provide their own support. Hardware support is provided
by College and Department staff. Network support is provided by I&IT. Each faculty and staff
member may choose to administer their own operating system and applications, or to have
support staff do it. About half of the Computer Science faculty prefer to administer their own
software, and half are happy to have somebody else do it.
Standard V-5. Instructional assistance must be provided for the laboratories and computing
facilities.
F. Instructional Assistance
Describe the nature and extent of instructional assistance available to students in the laboratories.
The Computer Science laboratories in 8-51 and 8-52 are staffed during working hours by two
full-time staff and a College of Science IT Help Desk student assistant. They provide support
to students on how to use the hardware and some basic support on how to use the software, but
no instructional assistance relating to course projects or homework. This is an area where
support has recently declined. Until Fall 2007, the Computer Science Department provided an
additional student assistant to function as a tutor for lower division CS classes, but those
student assistant tutors were eliminated by budget cuts.
Medical: A wide variety of plans are available; the CSU provides a large contribution toward
the premiums; some plans are fully subsidized.
Dental: Two plans are offered; premiums are fully paid by the CSU.
Vision: One plan is provided; the premium is fully paid by the CSU.
Life Insurance: A $50,000 life insurance policy is fully paid for by the CSU. Additional
voluntary life insurance is available at the employees expense.
Holidays: The university observes 13 holidays per year, including one personal holiday.
Sick leave: Cumulative sick leave is accrued at the rate of one day per month of service.
Disability: Non-industrial disability insurance, workmans compensation insurance and
industrial disability leaves are fully paid by the CSU.
Other benefits include: sabbatical leave; voluntary life, disability, auto insurance; home loans;
deferred compensation and tax sheltered annuity programs; training workshops; leaves of
absence; maternity/paternity leaves; unemployment insurance; educational fee waiver
program; catastrophic leave donation program.
It is important to note that Computer Science is a department with a high level of mutual
respect and affability. Vigorous discussions take place with regard to curriculum issues and
governance from time to time, but always without rancor. The departments faculty generally
agree that their jobs are difficult, but rewarding, and that this is a good place to work.
2. Give counts of the total number of faculty and the number of resignations, retirements, and
new hires for each of the last five years. Indicate whether there are significant problems
attracting and retaining faculty, and if so, the causes.
Year
200304
Total Faculty
17
Resignations
1 (Jiang)
200405
16
1 (Kuang)
200506
200607
200708
13.5
13.5
11.5
1 (Srinivas)
2 (Laszlo, Park)
Retirements
New Hires
Resignation notes: Dr. Srinivas was appointed as Associate Dean of the College of Science,
and has return rights. Dr. Laszlo passed away. Dr. Park was not granted tenure.
Retirement notes: Retirees may opt to participate in the Faculty Early Retirement Program
(FERP), which allows them to continue teaching half-time for up to five years. Therefore,
retirements have occurred .5 at a time, whenever one enters FERP (Dr. Lee and
Dr. Przymusinska) or completes FERP (Dr. Riley and Dr. Hillam).
The department was approved to conduct searches for one additional faculty member in 2006
07 and two additional faculty members in 200708. The positions were advertised,
applications were taken, and each search was subsequently cancelled for lack of funds. These
aborted searches attracted a sufficiently large and diverse pool of applicants, as did a
successful search in 200506, but the institutions inability to fund the positions and faculty
attrition (from 17 down to 11 faculty members) over the last six years are a cause for concern.
B. Faculty Professional Activities
Summarize the professional activities of your faculty, attendance at meetings, university and
professional honors won by individuals, etc. Just summarize here; details should appear in
individual faculty vitas.
The faculty have been involved in many research and professional activities: publishing
journal articles, writing and presenting conference papers, giving invited talks and seminars,
conducting funded research and professional development through grants, supervising
masters theses, engineering software, consulting for industry and the I&IT Division, serving
on editorial boards, and reviewing journal and conference papers.
Every faculty member has been involved in some of these activities, and almost all have been
actively involved during the last year and the recent past, above and beyond their teaching
duties. We are proud of the variety of professional activities, and the breadth and depth of
computer science knowledge covered. The details of each faculty members research and
professional development are included in their curriculum vita.
Standard VI-4. There must be office support consistent with the type of program, level of
scholarly activity, and needs of the faculty members.
C. Office Support
Describe the level and adequacy of office support. The description should address secretarial
support, office equipment, and the total group supported by this equipment and staff.
The department has a full-time administrative support coordinator and a half-time
administrative support assistant. The programs operating budget is barely adequate for
running the office and providing supplies and services for the instructional program. The
department office is well-equipped for the business of the department; there is a sizeable
conference room for meetings and presentations, and a preparation/mail room including
reproduction facilities.
The office support staff has recently shrunk from 2 full-time staff persons down to one, and the
operating budget for supplies and services has been cut to less than half of what it was six
years ago, so there is pressure to operate with declining office support.
Standard VI-5. Adequate time must be assigned for the administration of the program.
D. Time for Administration
Describe the adequacy of the time assigned for the administration of the program.
Program administration is done primarily by the Department Chair, with the assistance of the
Graduate Coordinator, the Assessment/Accreditation Coordinator and chairs of several
committees. 70% of the Department Chairs time is devoted to administration; sometimes up
to 100% using additional assigned time. The Graduate and Assessment/Accreditation
Coordinator have each been given 4 WTUs assigned time per quarter, which reduces their
teaching load by one course per quarter. Chairs of department committees (RTP, Laboratory,
Curriculum) are not given additional assigned time.
There is pressure to eliminate assigned time for the Assessment/Accreditation coordinator,
which would be detrimental to the program. The Computer Science Department has been held
up as an example of best practice for how it conducts its ongoing assessment program, and this
is largely due to the hard work of our Assessment/Accreditation coordinator.
Standard VI-6. Upper levels of administration must provide the program with the resources and
atmosphere to function effectively with the rest of the institution.
E. Adequacy of Resources
Describe the adequacy of the resources and the atmosphere provided by the upper administration
for the program to function effectively with the rest of the institution.
The budget provided by the College of Science has been shrinking and the state-provided nonpersonnel budget is now inadequate to operate the program. During the 200708 fiscal year,
the department operated with no visible budget for the entire year. From July 1, 2007 (the first
day of the fiscal year) to November 30, 2007, the department received no budget allocation.
This is unfortunately typical, since the state legislature never passes the State of California
budget on time. Since an academic department cannot operate for five months without any
expenses, it spends slowly and without guidance, incurring an unavoidable deficit. On
November 30, 2007, The department budget was allocated its only funds for the year equal
to the amount of the deficit on that date. That left $0 to use for non-personnel expenses for the
remaining seven months of the fiscal year. Unfortunately, the department was forced to spend
from irreplaceable Foundation funds that it had accumulated over many years.
In addition, the budget for part-time lecturers and student assistants has been significantly
reduced for all departments in the College of Science. In Fall 2007, the Computer Science
Department was asked to lay off all student assistants (who worked as graders and tutors) and
to replace its full-time administrative support assistant with a part-time student assistant. In
Spring 2008, the department was asked to operate without part-time lecturers for the first time
in its history. There is little hope that any of these lost resources will be recovered in the 2008
09 fiscal year. The department has been told it will have $0 for part-time lecturers in the 2008
09 fiscal year. This will put tremendous pressure on the tenured and tenure-track faculty to
teach all classes and grade all assignments, and will detract from the time faculty have to do
research and professional development.
The Computer Science Department is concerned that its declining resources may no longer be
adequate to function effectively.
F. Leadership
Positive and constructive leadership at the college/school level and within the program's
department are especially important to the program's quality. Evaluate this leadership and the
interaction between these levels of administration.
The leadership of the college and department collaborate effectively, and the rapport between
the Dean, Associate Dean and Department Chair is comfortable. Dr. Donald O. Straney has
been a long-serving and effective Dean of the College of Science. Associate Dean Mandayam
Srinivas is a former Chair of the Computer Science Department and a long-serving faculty
member, so the department benefits from that relationship. The leaders have a good working
relationship, strained only by the heavy budget cuts that the College of Science has necessarily
imposed.
Standard VI-7. Resources must be provided to acquire and maintain laboratory facilities that
meet the needs of the program.
G. Laboratory and Computing Resources
Briefly describe the resources available for the program to acquire and maintain laboratory
facilities. Include information on how the institution determines the adequacy of these resources.
Much of the computing infrastructure (e.g., networking, file storage, web publishing) used by
the program is provided by the Division of I&IT, and funded by the university. Since this is
the same centrally-provided computing environment that provides campus email, access to
student records and other administrative data, it is assured of continued funding and support.
The department classroom laboratories consist primarily of client workstations with office
productivity and software development applications installed, which are used to access
centrally-provided services. The departments equipment budget has been adequate for this
purpose. During 200708, a capital renovation of building 3 has provided a significant budget
for new equipment, which will be installed in Summer 2008 and available for the 200809
academic year.
Standard VI-8. Resources must be provided to support library and related information retrieval
facilities that meet the needs of the program.
H. Library Resources
Briefly describe the resources available for the support of the library and related information
retrieval facilities. Include information on how the institution determines the adequacy of these
resources.
The Dean of the Library has a baseline budget just as do the Deans of the Colleges. These
baseline budgets grow in proportion to the growth in student population. The University
Library is also just finishing a major renovation, which will significantly expand space and
facilities (see Appendix VII.A).
Standard VI-9. There must be evidence that the institutional support and financial resources will
remain in place throughout the period of accreditation.
I.
Discuss and show evidence of continuity of institutional support for the program in the past, and
problems that have existed or are anticipated in this area, if any.
Funding for permanent faculty is built into the budgeting process. Funding for additional parttime faculty is provided to meet FTES targets that go beyond what the permanent faculty can
meet. Additional funding for equipment and supplies is a variable, but as the campus
infrastructure improves and the cost of equipment decreases, the departments requirements in
this area have become modest.
FTE
12.35
35.39
7.6
Julie Shen is the Library Subject Specialist for Computer Science. She also has responsibility
for the Computer Information Systems (CIS) program in the College of Business
Administration. The Engineering Librarian (Ann Morgan) and Science Librarian (James Koga)
have both had responsibility for Computer Science at various times in the past and are very
familiar with resources supporting the department.
The Librarys Reference Desk is staffed most hours the building is open. Librarians and
experienced Library Assistants are available to answer questions and provide research
assistance. Referrals are made to the Computer Science Librarian and other Subject Specialists
as needed. Members of the Librarys IT staff are also available for technical assistance.
Students and faculty are encouraged to contact librarians by phone or email and questions are
answered as quickly as possible. The Library also participates in a consortium providing 24/7
Reference service via interactive chat. Librarians from multiple institutions participate and the
service is staffed 24 hours a day.
Standard VII-2. The librarys technical collection must include up-to-date textbooks, reference
works, and publications of professional and research organizations such as the ACM
and the IEEE Computer Society.
2. Library Technical Collection
Assess the adequacy of the librarys technical collection and of the budget for subscriptions, as
well as new acquisitions. The library must contain up-to-date textbooks, reference works, and
publications of professional and research organizations, such as the ACM and the IEEE
Computer Society. It should also contain representative trade journals. Supply documentation, if
possible. Assess the process by which faculty may request the library to order books or
subscriptions.
From 20022006 the budget devoted to Computer Science averaged about $36,000/year. In the
200607 academic year the Library developed a new funding model and now most
expenditures for databases and electronic journal packages are paid from a central electronic
resources fund. Subject areas are then allocated funds to purchase books, serials, and journals
not covered by the central funding. In the last 2 years $15,911 has been the average allocation
to Computer Science. Note that most of the Computer Science journals are in e-journal
packages and are now funded from the central e-resources fund.
Examples of Computer Science resources supported by the e-resources fund:
Electronic journal packages from publishers such as Wiley, Springer, and Elsevier
The Computer Science budget supports a range of trade and peer-reviewed journals not
available in publishers packages. Handbooks, reference books, etc. (print and electronic) are
also purchased from this budget. The percentage of the budget spent on e-books is growing.
About 50% of the books purchased this year were in electronic editions. We expect this trend
to continue. E-books seem popular with Computer Science students, probably because of the
24/7 remote access.
The Library has an approval plan with its major book vendor. Books are selected from
notifications generated from subject profiles. The profiles are periodically revised to meet the
changing needs of the program. Librarians are not limited to selecting from the approval plan,
however, and are free to use publishers catalogs or any other source of publishing
information.
The Computer Science Librarian consults with faculty on a regular basis about needs of the
program. Faculty are encouraged to submit requests for purchase and their requests are usually
honored. An online request form is available, but faculty are encouraged to use whatever
method they choose: email, campus mail, or personal conversation.
The 23-campus California State University system maintains an office for the system-wide
(discount) purchasing of electronic materialsSEIR (Systemwide Electronic Information
Resources). Many times products too expensive for individual campuses have been made
affordable by volume deals. Some core products are completely funded by SEIR and ejournal packages receive a 10% subsidy from SEIR. Examples of SEIR subscriptions
supporting Computer Science include the ACM Digital Library and e-journal packages from
major publishers such as Wiley, Springer, Elsevier (ScienceDirect), and the American Institute
of Physics.
The following table summarizes the Librarys holdings:
Category
Books (hard copy)
Books (electronic)
Total Books
Journals
Numbers
Includes
(est.)
9,000
volumes
3,500
volumes
12,500
volumes
475
titles
Standard VII-3. Systems for locating and obtaining electronic information must be available.
3. Library Electronic Access
Assess the librarys systems for locating and obtaining electronic information.
The Library has a fully developed website with features and capabilities that are expected from
a university library: http://www.csupomona.edu/~library/.
The Library Catalog is fully searchable via the Library Website and not only tracks the
librarys physical collection (the traditional job of a library catalog), but also offers an
access point to electronic books and journals.
End user searching of over 100 contracted library databases (bibliographic and full text)
available via the Library's website. Full text of the journals, journal articles, and books are
also made available in this manner
We have implemented a link resolver (SFX from ExLibris), a product that links from
database citations to articles in e-journals
Extensive help pages to guide the user in finding information. There is also a detailed
tutorial for using the website for research.
Faculty can put scanned copies of materials or other electronic documents on Electronic
Reserve. The materials are then accessible from the Library Catalog, and thus accessible
via the web.
Document Delivery (formerly called interlibrary loan) for obtaining materials not available
at Cal Poly Pomona. Patrons submit requests using a web based form. In addition, many
databases allow for generating requests within their websites. Patrons do not pay any fees
for Document Delivery.
All online services and electronic resources are accessible 24/7 from anywhere in the
world. We have a user authentication system to limit access to Cal Poly Pomona students,
faculty, and staff.
A total of 307,277 gross square feet, including approximately 100,000 square feet in the
addition
Seating for about 3,700; including table seating, lounge seating, workstation seating, and
study carrels
23 additional group study rooms, some with audio/visual equipment for multimedia
presentations
5 group listening/viewing rooms
12 listening/viewing stations
2 instructional spaces equipped to support the Librarys Information Literacy program
24 hour study lab with 78 computers and seating for 102
215 additional public workstations total plus 22 express stations
49 person multipurpose room for special events
Wireless access throughout the building
3 service desks; including a Reference Desk combined with a Technology Help Desk,
Circulation Desk, and a Media/Reserve Desk.
A caf (Starbucks) featuring wireless accessibility with indoor and outdoor seating
Standard VII-4. Classrooms must be adequately equipped for the courses taught.
B. Classroom Equipment
Describe the equipment typically available in classrooms where you teach your courses. Assess
its adequacy for the purpose.
Each of the classrooms we use is a smart classroom, including whiteboards, a multimedia
podium, a ceiling-mounted projector, an overhead transparency projector, and a screen. The
multimedia podium includes a computer, a document camera (for projecting from paper
originals), a DVD player, and an input for a laptop. Any of these information sources can be
projected onto the screen. Many faculty members use their laptops as sources for projection on
an every-class basis.
Standard VII-5. Faculty offices must be adequate to enable faculty members to meet their
responsibilities to students and for their professional needs.
C. Faculty Offices
Discuss and assess the adequacy of faculty offices.
Permanent faculty all have ample individual offices with desk, bookcases, filing cabinets, and
table space. Part-time faculty share offices similarly equipped.
Each faculty member has a PC or a workstation in his or her office, and each has chosen the
type of platform they find most useful for their work. These computers are upgraded
periodically as funds permit, and are generally near the state of the art in terms of performance.
Software is normally upgraded on request. All are connected to the campus network and to the
internet.
The offices are quite adequate and comfortable for faculty to meet with students individually
or in small groups, and to pursue their course preparation and research activities.
Name and Title of Chief Executive Officer of Campus (President, Chancellor, etc.)
Dr. J. Michael Ortiz
(Name)
President
(Title)
B. Type of Control
Private, non-profit
Private, other
Federal
State
Municipal
Other (specify)
Affiliation, if private
Check more than one, if necessary. If the above classifications do not properly apply to the
institution, please describe its type of control.
The university is part of the 23-campus California State University (CSU) system, which is
funded by the State of California.
E. Funding Process
Describe the process for allocating institutional funds to the computer science program.
Funds are apportioned annually by the State of California to the California State University
(CSU) system, which apportions funds to California State Polytechnic University, Pomona
(one of 23 campuses), which apportions funds to its Division of Academic Affairs (one of
5 divisions), which apportions funds to the College of Science (one of 8 colleges), which
apportions funds to the Computer Science Department (one of 6 departments).
Appendix II. General Information on the Unit Responsible for the Computer Science
Program
If you are having more than one program evaluated, particularly if the programs are on separate
campuses, the answers to these questions may vary from one program to another. If this is the
case, please use separate copies of this section for each program, and clearly delineate which
program is being described.
A. Computer Science Program Unit
Name
URL
If the computer science program unit is not a department reporting to an administrative officer
(e.g., Dean of College of Arts and Sciences) who in turn reports to president, provost, or
equivalent executive officer, describe the unit.
The Computer Science Department reports to the Dean of the College of Science, who reports
to the Provost (a.k.a. Vice President of Academic Affairs), who reports to the President.
B. Administrative Head of Computer Science Program Unit
Dr. Craig A. Rich
(Name)
Department Chair
(Title)
C. Organization Chart
Attach an organization chart showing how the unit fits into the administrative structure of the
institution.
Administrative
Unit
If
accredited,
by whom
Program Title
Years
Required
Computer Science
B.S. Computer
Science
Computer Science
Department
ABET
CAC
Computer
Engineering
B.S. Computer
Engineering
ABET
EAC
Computer
Information
Systems
B.S. Business
Administration
Computer Information
Systems Department
AACSB
Are these programs adequately differentiated in all university information? Explain how.
Yes, they are offered by three separate academic departments (Computer Science, Electrical
and Computer Engineering, Computer Information Systems), which are part of three separate
colleges (Science, Engineering, Business Administration).
Non-recurring or
Outside Funds
$1,251,570
43,056
60,160
75,936
6,670
13,575
4,208
$10,245
87,550
4,500
1,609
4,201
21,000
5,720
$1,557,146
$32,854
It is understood that some of the data may have to be estimated to cover the entire fiscal year. In
such case, unless the differences are insignificant, an updated report should be provided for the
evaluation team at the time of the visit.
B. Operating and Computing Expenditures for the Five Fiscal Years Immediately
Preceding that Reported in III A
1. Operating expenses for the computer science program unit.
Fiscal Year
Institutional Funds
Outside Funds
200203
10,245
2,664
200304
11,492
665
200405
12,340
1,374
200506
15,035
1,095
200607
9,902
13,781
200203
32,740
200304
11,140
200405
49,188
200506
16,818
200607
13,654
C. Additional Funding
If additional funds, other than those listed in Table A above, are available to faculty to support
scholarly activities such as travel to technical meetings, e.g., consulting support, give the number
of faculty for whom this type of support is appropriate and an estimate of the amount of support
available.
All expenditures flow through either state-funded accounts, which are the Institutional
Funds above, or through Cal Poly Pomona Foundation accounts, which are the Nonrecurring Outside Funds above.
Appendix IV. Computer Science Program Personnel and Policies Towards Consulting,
Professional Development, and Recruiting
A. Term of Appointment of Administrative Head
9 month:
12 Month:
11.5
1
Part Time
Number
FTE
5
1.3
Total
FTE
12.8
1
1
1
0.5
0.1
1.5
0.1
29
440
18
65
9
32.7
38
472.7
C. Policies
Provide a brief description to give an overview.
1. Describe policy toward private consulting work, sponsored research projects, and extra
compensation.
The University and the College of Science are supportive of sponsored research projects.
Consulting has not been a common activity in the department. Consulting is encouraged and
supported as long as ones commitment to Cal Poly Pomona and to the department come first.
2. State the standard teaching, administrative, research, and other loads on the faculty, in
general terms.
University policy is that faculty members are required to teach 36 WTUs (weighted teaching
units) per academic year, and have an additional requirement of 9 WTUs per academic year of
assigned duties. A weighted teaching unit is equivalent to a credit unit for lecture courses.
Assigned duties include: student advising; department, college, and university committee
work; and research. The Department Chairs time is designated to be 70% administrative work
and 30% teaching.
Faculty are released from teaching duties in a variety of ways. New faculty have generally
been given 4 WTUs of assigned time per quarter during their first year of service. The
Graduate Coordinator and the Assessment/Accreditation Coordinator each receive 4 WTUs
assigned time per quarter from the department. The department also provides assigned time for
additional administrative time for the Chair. Assigned time may also be purchased through
on-campus grants or through outside funding.
3. Describe policies and procedures for recruiting faculty for the computer science program.
Describe any barriers to hiring the appropriate faculty.
The department must justify to the Dean the need for an additional faculty member, and the
corresponding augmentation of its budget. Generally, the Dean must in turn justify the need to
the Vice President for Academic affairs and to the University Budget Committee, so that the
College budget is increased to cover the additional position.
Once a department has decided to recruit a new faculty member and has been given permission
to do so, university policy guides the process of the search. The Office of Diversity and
Compliance provides a checklist of activities, provides guidance in the placement of
advertisements, and ultimately approves a pool of candidates selected by the department
search committee. The department recommends the appointment of a candidate; the Vice
President for Academic Affairs is empowered to actually offer an appointment to a candidate.
Frosh
3,946
/ 4,537
3,956
/ 4,500
3,466
/ 3,904
4,247
/ 4,782
4,691
/ 5,298
4,787
/ 5,518
Enrollment
Soph
Junior
2,236
3,313
/ 2,516 / 3,821
2,163
3,209
/ 2,405 / 3,642
2,280
3,268
/ 2,523 / 3,752
1,905
3,929
/ 2,082 / 4,520
1,886
3,684
/ 2,066 / 4,255
2,312
3,617
/ 2,555 / 4,178
Senior
5,505
/ 6,529
6,028
/ 6,987
5,838
/ 6,750
5,636
/ 6,591
6,073
/ 7,005
6,271
/ 7,318
Total
UG
14,999
/ 17,403
15,355
/ 17,534
14,853
/ 16,929
15,717
/ 17,975
16,334
/ 18,624
16,987
/ 19,569
*
Total
Grad
1,448
/ 2,418
1,402
/ 2,270
1,257
/ 2,074
1,152
/ 1,910
1,192
/ 1,886
1,190
/ 1,908
Degrees
BS
MS PhD
3,008
340
3,304
328
3,280
367
3,400
382
3,784
431
1,923
150
Unit offering Computer Science Program(s)give total enrollment even if not all students are in
the program for which accreditation is requested.
AY
2002-03
2003-04
2004-05
2005-06
2006-07
2007-08
Frosh
100
/ 113
195
/ 223
151
/ 168
142
/ 166
148
/ 170
168
/ 186
Enrollment
Soph
Junior
124
141
/ 142
/ 154
53
125
/ 61
/ 143
71
97
/ 75
/ 114
64
102
/ 72
/ 118
56
81
/ 64
/ 97
58
67
/ 66
/ 79
Senior
303
/ 354
274
/ 316
210
/ 243
187
/ 218
170
/ 190
157
/ 188
Total
UG
669
/ 763
646
/ 743
528
/ 600
494
/ 574
455
/ 521
449
/ 519
*
Total
Grad
26
/ 50
40
/ 67
41
/ 69
21
/ 47
16
/ 39
19
/ 39
BS
Degrees
MS PhD
144
157
112
17
99
17
89
67
2. Describe procedures, including the evaluation of transfer credits, for students admitted to the
program as transfer students.
a. From within the institution
Transfer from within the institution occurs when a student changes major, either from
Undeclared status or from another academic program. The transfer must be approved by the
Chair of the department to which the student is transferring. A necessary condition for
changing major to Computer Science is eligibility to take MAT 114Analytic Geometry and
Calculus I, i.e. a student must not need remedial mathematics coursework.
b. From another institution
Currently, transfer applications are not accepted from lower division transfers who have
completed less than 90 quarter units of transferable college coursework. Upper division
applicants must have completed coursework equivalent to ENG 104105Freshman
English III, COM 100Public Speaking, and MAT 105College Algebra. Many transfer
students will have completed most of their general education coursework.
The Evaluations Office of the university assesses the students record to establish credit to be
given toward the computer science major. Credit given is determined by articulation
agreements between Cal Poly Pomona and various community colleges. The student generally
needs to review with an academic advisor the credit given by the evaluator. Evaluators
generally give credit conservatively; they do not give credit unless a written agreement of
equivalence is in place. The department resolves other cases in the following way: the advisor
looks at a course description with the student; if courses appear to be equivalent, the advisor
and the student prepare a petition; the petition requires the approval of the Department Chair.
3. Explain the policy of the institution in admitting students with conditions and state how the
conditions must be made up.
Pursuant to California Executive Order No. 665, the California State University System admits
students who may need preparatory work in English or Mathematics. To determine whether a
student requires remedial coursework, new students admitted into Cal Poly Pomona must take
placement tests in English and Mathematics. Students are only exempt from a placement test if
they obtain a satisfactory score on their SAT/ACT or if they have already taken a college level
course in English or Mathematics. After testing, students who are not placed into a college
level course are required to take preparatory courses. Students must enroll in the appropriate
preparatory courses in their first quarter of attendance and each subsequent quarter. All
remedial coursework must be completed by the end of a students first year in attendance.
Failure to meet these requirements will result in administrative disqualification based on lack
of satisfactory progress toward the degree.
4. Describe the general policy and methods of the unit offering computer science program(s) in
regard to admission with advanced standing.
The Computer Science Department has no formal advanced standing status. As described
above, transfer credits are evaluated by a university office. Students work with academic
advisors to petition courses or other experiences for which they were not given credit by the
university evaluators. Transfer students often receive credit for CS 210Computer Logic and
CS 264Computer Organization and Assembly Programming. It is less common for them to
receive credit for the entire introductory sequence of courses (CS 140141240241), since
we teach them in Java and some community colleges are not using Java. However, a student
who has taken introductory programming and data structures courses in another language can
receive credit for those courses by successfully taking a suitably more advanced course here.
5. Describe any special admission requirements for entry into the upper division in the
computer science program(s).
The only requirement for entry into upper division (300- or 400-level) courses is completion of
the prescribed prerequisite courses. Upper-division courses have prerequisites that must be
satisfied in order to achieve success in the course. As shown in the prerequisite flow chart in
section IV.C, CS 241Data Structures and Algorithms IIis either directly or indirectly
prerequisite to almost all of the upper division courses. Our prerequisites require that students
pass the prerequisite course(s) with at least a grade of C.